jsFFMPEG.js 3.0 MB

1
  1. var Module;Module||(Module=(void 0!==Module?Module:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB=!1,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1,nodeFS,nodePath;if(Module.ENVIRONMENT)if("WEB"===Module.ENVIRONMENT)ENVIRONMENT_IS_WEB=!0;else if("WORKER"===Module.ENVIRONMENT)ENVIRONMENT_IS_WORKER=!0;else if("NODE"===Module.ENVIRONMENT)ENVIRONMENT_IS_NODE=!0;else{if("SHELL"!==Module.ENVIRONMENT)throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");ENVIRONMENT_IS_SHELL=!0}else ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE)Module.print||(Module.print=console.log),Module.printErr||(Module.printErr=console.warn),Module.read=function(e,i){nodeFS||(nodeFS=require("fs")),nodePath||(nodePath=require("path")),e=nodePath.normalize(e);var r=nodeFS.readFileSync(e);return r||e==nodePath.resolve(e)||(e=path.join(__dirname,"..","src",e),r=nodeFS.readFileSync(e)),r&&!i&&(r=r.toString()),r},Module.readBinary=function(e){var i=Module.read(e,!0);return i.buffer||(i=new Uint8Array(i)),assert(i.buffer),i},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(1<process.argv.length?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"};else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available (jsc?)"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var i=read(e,"binary");return assert("object"==typeof i),i},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText},Module.readAsync=function(e,i,r){var f=new XMLHttpRequest;f.open("GET",e,!0),f.responseType="arraybuffer",f.onload=function(){200==f.status||0==f.status&&f.response?i(f.response):r()},f.onerror=r,f.send(null)},"undefined"!=typeof arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.warn(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);moduleOverrides=void 0;var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"!==e[0])return 0;var i=parseInt(e.substr(1));return assert(i%8==0),i/8}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,i,r){return r||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,i),Module["dynCall_"+e].apply(null,r)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var r=Runtime.funcWrappers[i];return r[e]||(r[e]=function(){return Runtime.dynCall(i,e,arguments)}),r[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+e|0)+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if(TOTAL_MEMORY<=(DYNAMICTOP=(DYNAMICTOP=DYNAMICTOP+e|0)+15&-16)&&!enlargeMemory())return DYNAMICTOP=i,0;return i},alignMemory:function(e,i){return e=Math.ceil(e/(i||16))*(i||16)},makeBigInt:function(e,i,r){return r?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var ABORT=!1,EXITSTATUS=0,cwrap,ccall;function assert(e,i){e||abort("Assertion failed: "+i)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,r,f){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,1<=+Math_abs(tempDouble)?0<tempDouble?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+r)}}function getValue(e,i,r){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!=e&&0!==e&&writeStringToMemory(e,i=Runtime.stackAlloc(1+(e.length<<2))),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,i,r,f,l){var a=getCFunc(e),n=[],t=0;if(f)for(var o=0;o<f.length;o++){var s=toC[r[o]];n[o]=s?(0===t&&(t=Runtime.stackSave()),s(f[o])):f[o]}var u=a.apply(null,n);if("string"===i&&(u=Pointer_stringify(u)),0!==t){if(l&&l.async)return void EmterpreterAsync.asyncFinalizers.push(function(){Runtime.stackRestore(t)});Runtime.stackRestore(t)}return u};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(e){var i=e.toString().match(sourceRegex).slice(1);return{arguments:i[0],body:i[1],returnValue:i[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource)for(var e in JSsource={},JSfuncs)JSfuncs.hasOwnProperty(e)&&(JSsource[e]=parseJSFunc(JSfuncs[e]))}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every(function(e){return"number"===e}),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map(function(e,i){return"$"+i}),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){ensureJSsource(),funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"=("+convertCode.returnValue+");"}}}var cfuncname=parseJSFunc(function(){return cfunc}).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc(function(){return Pointer_stringify}).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(ensureJSsource(),funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,i,r,f){var l,a;a="number"==typeof e?(l=!0,e):(l=!1,e.length);var n,t="string"==typeof i?i:null;if(n=r==ALLOC_NONE?f:["function"==typeof _malloc?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===r?ALLOC_STATIC:r](Math.max(a,t?1:i.length)),l){var o;f=n;for(assert(0==(3&n)),o=n+(-4&a);f<o;f+=4)HEAP32[f>>2]=0;for(o=n+a;f<o;)HEAP8[f++>>0]=0;return n}if("i8"===t)return e.subarray||e.slice?HEAPU8.set(e,n):HEAPU8.set(new Uint8Array(e),n),n;for(var s,u,h,w=0;w<a;){var k=e[w];"function"==typeof k&&(k=Runtime.getFunctionIndex(k)),0!==(s=t||i[w])?("i64"==s&&(s="i32"),setValue(n+w,k,s),h!==s&&(u=Runtime.getNativeTypeSize(s),h=s),w+=u):w++}return n}function getMemory(e){return staticSealed?void 0!==_sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var r,f=0,l=0;f|=r=HEAPU8[e+l>>0],(0!=r||i)&&(l++,!i||l!=i););i||(i=l);var a="";if(f<128){for(var n;0<i;)n=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,1024))),a=a?a+n:n,e+=1024,i-=1024;return a}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var r=HEAP8[e++>>0];if(!r)return i;i+=String.fromCharCode(r)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var r,f,l,a,n,t="";;){if(!(r=e[i++]))return t;if(128&r)if(f=63&e[i++],192!=(224&r))if(l=63&e[i++],(r=224==(240&r)?(15&r)<<12|f<<6|l:(a=63&e[i++],240==(248&r)?(7&r)<<18|f<<12|l<<6|a:(n=63&e[i++],248==(252&r)?(3&r)<<24|f<<18|l<<12|a<<6|n:(1&r)<<30|f<<24|l<<18|a<<12|n<<6|63&e[i++])))<65536)t+=String.fromCharCode(r);else{var o=r-65536;t+=String.fromCharCode(55296|o>>10,56320|1023&o)}else t+=String.fromCharCode((31&r)<<6|f);else t+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,r,f){if(!(0<f))return 0;for(var l=r,a=r+f-1,n=0;n<e.length;++n){var t=e.charCodeAt(n);if(55296<=t&&t<=57343&&(t=65536+((1023&t)<<10)|1023&e.charCodeAt(++n)),t<=127){if(a<=r)break;i[r++]=t}else if(t<=2047){if(a<=r+1)break;i[r++]=192|t>>6,i[r++]=128|63&t}else if(t<=65535){if(a<=r+2)break;i[r++]=224|t>>12,i[r++]=128|t>>6&63,i[r++]=128|63&t}else if(t<=2097151){if(a<=r+3)break;i[r++]=240|t>>18,i[r++]=128|t>>12&63,i[r++]=128|t>>6&63,i[r++]=128|63&t}else if(t<=67108863){if(a<=r+4)break;i[r++]=248|t>>24,i[r++]=128|t>>18&63,i[r++]=128|t>>12&63,i[r++]=128|t>>6&63,i[r++]=128|63&t}else{if(a<=r+5)break;i[r++]=252|t>>30,i[r++]=128|t>>24&63,i[r++]=128|t>>18&63,i[r++]=128|t>>12&63,i[r++]=128|t>>6&63,i[r++]=128|63&t}}return i[r]=0,r-l}function stringToUTF8(e,i,r){return stringToUTF8Array(e,HEAPU8,i,r)}function lengthBytesUTF8(e){for(var i=0,r=0;r<e.length;++r){var f=e.charCodeAt(r);55296<=f&&f<=57343&&(f=65536+((1023&f)<<10)|1023&e.charCodeAt(++r)),f<=127?++i:i+=f<=2047?2:f<=65535?3:f<=2097151?4:f<=67108863?5:6}return i}function demangle(i){if(!!Module.___cxa_demangle)try{var e=_malloc(i.length);writeStringToMemory(i.substr(1),e);var r=_malloc(4),f=Module.___cxa_demangle(e,0,0,r);if(0===getValue(r,"i32")&&f)return Pointer_stringify(f)}catch(e){return i}finally{e&&_free(e),r&&_free(r),f&&_free(f)}return Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),i}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"})}function jsStackTrace(){var i=new Error;if(!i.stack){try{throw new Error(0)}catch(e){i=e}if(!i.stack)return"(no stack trace available)"}return i.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function alignMemoryPage(e){return 0<e%4096&&(e+=4096-e%4096),e}function updateGlobalBufferViews(){Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||1e8,totalMemory=65536;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;if(totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),buffer=Module.buffer?Module.buffer:new ArrayBuffer(TOTAL_MEMORY),updateGlobalBufferViews(),HEAP32[0]=255,255!==HEAPU8[0]||0!==HEAPU8[3])throw"Typed arrays 2 must be run on a little-endian system";function callRuntimeCallbacks(e){for(;0<e.length;){var i=e.shift();if("function"!=typeof i){var r=i.func;"number"==typeof r?void 0===i.arg?Runtime.dynCall("v",r):Runtime.dynCall("vi",r,[i.arg]):r(void 0===i.arg?null:i.arg)}else i()}}Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,r){var f=0<r?r:lengthBytesUTF8(e)+1,l=new Array(f),a=stringToUTF8Array(e,l,0,l.length);return i&&(l.length=a),l}function intArrayToString(e){for(var i=[],r=0;r<e.length;r++){var f=e[r];255<f&&(f&=255),i.push(String.fromCharCode(f))}return i.join("")}function writeStringToMemory(e,i,r){for(var f=intArrayFromString(e,r),l=0;l<f.length;){var a=f[l];HEAP8[i+l>>0]=a,l+=1}}function writeArrayToMemory(e,i){for(var r=0;r<e.length;r++)HEAP8[i++>>0]=e[r]}function writeAsciiToMemory(e,i,r){for(var f=0;f<e.length;++f)HEAP8[i++>>0]=e.charCodeAt(f);r||(HEAP8[i>>0]=0)}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,i){var r=65535&e,f=65535&i;return r*f+((e>>>16)*f+r*(i>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+238368,__ATINIT__.push(),allocate([0,0,0,0,0,0,0,0,254,58,10,254,252,54,16,254,250,46,28,252,252,36,36,252,252,28,46,250,254,16,54,252,254,10,58,254,0,0,0,0,255,4,246,58,17,251,1,0,255,4,246,58,17,251,1,0,255,4,245,40,40,245,4,255,255,4,245,40,40,245,4,255,0,1,251,17,58,246,4,255,0,1,251,17,58,246,4,255,252,134,1,0,3,135,1,0,116,38,3,0,76,79,79,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,0,10,135,1,0,10,135,1,0,120,38,3,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,64,0,0,0,0,0,0,0,0,26,135,1,0,36,135,1,0,176,49,3,0,76,79,79,66,255,255,255,255,255,255,255,255,0,0,0,0,0,0,240,191,0,0,0,0,0,0,240,63,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,242,215,1,0,3,216,1,0,132,31,0,0,76,79,79,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,18,0,0,0,0,0,0,0,41,216,1,0,59,216,1,0,132,31,0,0,76,79,79,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,181,1,2,0,183,1,2,0,72,0,0,0,2,0,0,0,64,13,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,67,25,0,0,0,0,0,0,0,207,1,2,0,183,1,2,0,72,0,0,0,2,0,0,0,0,244,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,9,0,0,0,0,0,0,0,210,1,2,0,213,1,2,0,80,0,0,0,1,0,0,0,0,9,61,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,233,2,2,0,0,0,0,0,92,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,255,239,65,59,0,0,0,233,2,2,0,239,2,2,0,249,2,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,233,2,2,0,36,3,2,0,40,3,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,88,3,2,0,93,3,2,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,125,3,2,0,130,3,2,0,0,0,0,0,128,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,146,3,2,0,153,3,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,233,2,2,0,170,3,2,0,174,3,2,0,0,0,0,0,128,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,182,3,2,0,186,3,2,0,0,0,0,0,128,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,216,3,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,233,2,2,0,232,3,2,0,238,3,2,0,0,0,0,0,128,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,233,2,2,0,34,4,2,0,40,4,2,0,0,0,0,0,128,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,233,2,2,0,93,67,2,0,92,4,2,0,0,0,0,0,128,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,233,2,2,0,121,4,2,0,130,4,2,0,0,0,0,0,128,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,233,2,2,0,148,4,2,0,153,4,2,0,0,0,0,0,128,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,200,4,2,0,210,4,2,0,0,0,0,0,128,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,233,2,2,0,254,4,2,0,2,5,2,0,0,0,0,0,128,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,34,5,2,0,40,5,2,0,0,0,0,0,128,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,59,5,2,0,69,5,2,0,0,0,0,0,128,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,233,2,2,0,85,5,2,0,99,5,2,0,0,0,0,0,128,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,233,2,2,0,159,5,2,0,168,5,2,0,0,0,0,0,128,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,59,0,0,0,233,2,2,0,212,5,2,0,216,5,2,0,0,0,0,0,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,11,6,2,0,16,6,2,0,0,0,0,0,128,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,45,6,2,0,50,6,2,0,0,0,0,0,128,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,233,2,2,0,61,6,2,0,76,6,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,233,2,2,0,117,6,2,0,122,6,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,162,6,2,0,169,6,2,0,175,6,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,162,6,2,0,199,6,2,0,210,6,2,0,0,0,0,0,128,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,162,6,2,0,247,6,2,0,4,7,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,162,6,2,0,67,7,2,0,74,7,2,0,0,0,0,0,128,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,162,6,2,0,121,7,2,0,129,7,2,0,0,0,0,0,128,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,162,6,2,0,171,7,2,0,182,7,2,0,0,0,0,0,128,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,162,6,2,0,228,7,2,0,240,7,2,0,0,0,0,0,128,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,162,6,2,0,51,8,2,0,61,8,2,0,148,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,90,8,2,0,95,8,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,128,8,2,0,133,8,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,166,8,2,0,171,8,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,194,8,2,0,198,8,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,237,8,2,0,242,8,2,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,9,9,2,0,13,9,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,2,66,2,0,56,9,2,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,78,9,2,0,84,9,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,108,9,2,0,111,9,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,132,9,2,0,136,9,2,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,158,9,2,0,162,9,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,184,9,2,0,189,9,2,0,0,0,0,0,128,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,51,8,2,0,212,9,2,0,0,0,0,0,108,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,222,9,2,0,224,9,2,0,140,0,0,0,1,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,4,10,2,0,7,10,2,0,160,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,11,0,0,0,0,0,0,0,39,10,2,0,42,10,2,0,164,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,11,0,0,0,0,0,0,0,71,10,2,0,78,10,2,0,184,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,0,0,0,0,99,10,2,0,0,0,0,0,172,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,0,0,0,0,110,10,2,0,0,0,0,0,176,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,123,10,2,0,0,0,0,0,120,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,129,10,2,0,135,10,2,0,224,1,0,0,4,0,0,0,0,0,0,0,0,0,224,63,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,255,10,2,0,5,11,2,0,228,1,0,0,4,0,0,0,0,0,0,0,0,0,224,63,0,0,0,0,0,0,240,191,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,38,11,2,0,43,11,2,0,232,1,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,64,81,64,17,0,0,0,0,0,0,0,79,11,2,0,84,11,2,0,236,1,0,0,1,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,0,0,0,0,144,64,17,0,0,0,0,0,0,0,120,11,2,0,126,11,2,0,240,1,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,180,11,2,0,183,11,2,0,160,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,235,11,2,0,245,11,2,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,244,63,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,23,12,2,0,35,12,2,0,168,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,54,12,2,0,65,12,2,0,172,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,105,12,2,0,108,12,2,0,108,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,134,12,2,0,0,0,0,0,112,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,142,12,2,0,0,0,0,0,116,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,154,12,2,0,0,0,0,0,120,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,165,12,2,0,0,0,0,0,124,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,176,12,2,0,0,0,0,0,128,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,184,12,2,0,0,0,0,0,132,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,192,12,2,0,0,0,0,0,136,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,203,12,2,0,0,0,0,0,140,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,213,12,2,0,0,0,0,0,144,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,224,12,2,0,0,0,0,0,52,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,234,12,2,0,238,12,2,0,156,2,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,24,13,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,35,13,2,0,47,13,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,106,13,2,0,117,13,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,171,13,2,0,176,13,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,209,13,2,0,220,13,2,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,247,13,2,0,0,0,0,0,0,0,0,0,128,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,251,13,2,0,2,14,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,44,14,2,0,0,0,0,0,0,0,0,0,128,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,56,14,2,0,65,14,2,0,0,0,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,117,14,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,130,14,2,0,147,14,2,0,0,0,0,0,128,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,207,14,2,0,212,14,2,0,0,0,0,0,128,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,7,15,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,19,15,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,27,15,2,0,30,15,2,0,0,0,0,0,128,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,104,66,2,0,86,15,2,0,0,0,0,0,128,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,234,12,2,0,103,15,2,0,110,15,2,0,160,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,27,0,0,0,103,15,2,0,147,15,2,0,152,15,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,103,15,2,0,103,15,2,0,234,15,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,103,15,2,0,57,16,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,103,15,2,0,64,16,2,0,75,16,2,0,0,0,0,0,128,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,103,15,2,0,103,16,2,0,116,16,2,0,0,0,0,0,128,0,0,0,254,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,103,15,2,0,159,16,2,0,169,16,2,0,176,0,0,0,4,0,0,0,0,0,0,0,0,0,244,63,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,203,16,2,0,214,16,2,0,176,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,240,16,2,0,249,16,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,14,17,2,0,24,17,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,66,17,2,0,73,17,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,106,17,2,0,114,17,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,154,17,2,0,165,17,2,0,0,0,0,0,128,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,179,17,2,0,187,17,2,0,0,0,0,0,128,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,33,18,2,0,43,18,2,0,0,0,0,0,128,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,88,18,2,0,99,18,2,0,0,0,0,0,128,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,203,16,2,0,161,18,2,0,0,0,0,0,180,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,174,18,2,0,0,0,0,0,180,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,186,18,2,0,197,18,2,0,184,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,234,18,2,0,242,18,2,0,244,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,88,64,17,0,0,0,0,0,0,0,34,19,2,0,242,18,2,0,248,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,46,19,2,0,242,18,2,0,252,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,59,19,2,0,0,0,0,0,4,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,77,19,2,0,242,18,2,0,12,2,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,192,0,0,0,0,0,192,95,64,17,0,0,0,0,0,0,0,83,19,2,0,91,19,2,0,16,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,156,19,2,0,164,19,2,0,24,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,8,20,2,0,16,20,2,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,54,20,2,0,242,18,2,0,32,2,0,0,4,0,0,0,0,0,0,0,0,0,240,63,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,74,20,2,0,84,20,2,0,188,0,0,0,4,0,0,0,154,153,153,153,153,153,233,191,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,118,20,2,0,128,20,2,0,192,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,162,20,2,0,242,18,2,0,36,2,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,175,20,2,0,179,20,2,0,8,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,245,75,2,0,193,20,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,215,20,2,0,223,20,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,236,20,2,0,240,20,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,1,21,2,0,0,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,5,21,2,0,0,0,0,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,13,21,2,0,18,21,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,175,20,2,0,41,21,2,0,51,21,2,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,101,21,2,0,112,21,2,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,140,21,2,0,151,21,2,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,178,21,2,0,185,21,2,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,199,21,2,0,209,21,2,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,1,22,2,0,6,22,2,0,12,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,245,75,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,236,20,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,33,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,40,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,50,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,5,21,2,0,0,0,0,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,54,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,58,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,68,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,82,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,94,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,105,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,117,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,121,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,126,22,2,0,134,22,2,0,0,0,0,0,128,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,169,22,2,0,175,22,2,0,0,0,0,0,128,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,199,22,2,0,0,0,0,0,0,0,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,1,22,2,0,210,22,2,0,0,0,0,0,216,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,222,22,2,0,225,22,2,0,164,2,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,222,22,2,0,0,23,2,0,10,23,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,222,22,2,0,53,23,2,0,61,23,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,222,22,2,0,103,23,2,0,115,23,2,0,0,0,0,0,128,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,222,22,2,0,156,23,2,0,0,0,0,0,16,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,178,23,2,0,183,23,2,0,220,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,178,23,2,0,201,23,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,178,23,2,0,206,23,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,178,23,2,0,212,23,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,178,23,2,0,219,23,2,0,226,23,2,0,228,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,64,17,0,0,0,0,0,0,0,66,60,2,0,246,23,2,0,168,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,59,0,0,0,66,60,2,0,16,24,2,0,21,24,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,34,24,2,0,37,24,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,66,60,2,0,14,17,2,0,0,0,0,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,50,24,2,0,58,24,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,79,24,2,0,82,24,2,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,120,24,2,0,123,24,2,0,0,0,0,0,128,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,137,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,147,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,162,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,167,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,177,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,181,24,2,0,184,24,2,0,0,0,0,0,128,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,202,24,2,0,207,24,2,0,0,0,0,0,128,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,252,24,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,1,25,2,0,8,25,2,0,0,0,0,0,128,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,75,25,2,0,87,25,2,0,0,0,0,0,128,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,109,25,2,0,117,25,2,0,0,0,0,0,128,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,66,60,2,0,144,25,2,0,155,25,2,0,0,0,0,0,128,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,66,60,2,0,176,25,2,0,181,25,2,0,0,0,0,0,128,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,26,0,0,0,66,60,2,0,206,25,2,0,212,25,2,0,172,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,18,0,0,0,0,26,2,0,9,26,2,0,12,26,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,0,26,2,0,180,11,2,0,46,26,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,0,26,2,0,80,26,2,0,83,26,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,0,26,2,0,118,26,2,0,122,26,2,0,236,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,160,26,2,0,167,26,2,0,240,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,195,26,2,0,201,26,2,0,244,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,229,26,2,0,238,26,2,0,248,0,0,0,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,14,27,2,0,23,27,2,0,252,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,65,27,2,0,75,27,2,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,127,27,2,0,133,27,2,0,4,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,155,27,2,0,162,27,2,0,8,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,201,27,2,0,205,27,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,239,27,2,0,243,27,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,9,28,2,0,14,28,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,175,20,2,0,63,28,2,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,148,4,2,0,107,28,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,163,28,2,0,167,28,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,203,28,2,0,206,28,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,90,8,2,0,35,47,2,0,0,0,0,0,128,0,0,0,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,236,28,2,0,241,28,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,22,29,2,0,27,29,2,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,63,29,2,0,68,29,2,0,0,0,0,0,128,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,112,29,2,0,0,0,0,0,0,0,0,0,128,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,119,29,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,126,29,2,0,139,29,2,0,12,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,190,29,2,0,195,29,2,0,16,1,0,0,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,229,29,2,0,0,0,0,0,20,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,247,29,2,0,0,30,2,0,24,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,50,30,2,0,56,30,2,0,28,1,0,0,1,0,0,0,63,66,15,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,73,30,2,0,79,30,2,0,32,1,0,0,1,0,0,0,63,66,15,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,96,30,2,0,0,0,0,0,84,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,111,30,2,0,0,0,0,0,52,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,117,30,2,0,121,30,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,39,10,2,0,159,30,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,176,30,2,0,180,30,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,198,30,2,0,202,30,2,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,219,30,2,0,227,30,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,111,30,2,0,247,30,2,0,255,30,2,0,56,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,13,31,2,0,0,0,0,0,36,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,25,31,2,0,0,0,0,0,40,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,43,31,2,0,47,31,2,0,44,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,17,0,0,0,43,31,2,0,33,22,2,0,97,31,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,43,31,2,0,107,31,2,0,112,31,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,43,31,2,0,203,28,2,0,128,31,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,43,31,2,0,153,31,2,0,0,0,0,0,56,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,170,31,2,0,183,31,2,0,56,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,206,31,2,0,242,18,2,0,60,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,211,31,2,0,242,18,2,0,64,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,216,31,2,0,219,31,2,0,60,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,235,31,2,0,253,31,2,0,48,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,162,6,2,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,255,239,65,27,0,0,0,162,6,2,0,39,60,2,0,0,0,0,0,88,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,77,32,2,0,85,32,2,0,32,3,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,27,0,0,0,77,32,2,0,245,75,2,0,111,32,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,77,32,2,0,158,32,2,0,171,32,2,0,64,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,199,32,2,0,212,32,2,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,233,32,2,0,236,32,2,0,72,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,192,0,0,0,0,0,0,48,64,17,0,0,0,0,0,0,0,255,32,2,0,5,33,2,0,56,3,0,0,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,17,33,2,0,26,33,2,0,76,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,0,0,0,0,81,33,2,0,93,33,2,0,80,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,0,0,0,0,151,33,2,0,0,0,0,0,60,3,0,0,1,0,0,0,157,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,151,33,2,0,159,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,157,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,151,33,2,0,167,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,176,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,184,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,192,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,200,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,207,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,217,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,224,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,232,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,246,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,131,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,3,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,7,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,14,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,24,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,35,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,151,33,2,0,45,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,33,2,0,54,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,33,2,0,65,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,33,2,0,76,34,2,0,0,0,0,0,0,0,0,0,128,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,33,2,0,86,34,2,0,0,0,0,0,64,3,0,0,1,0,0,0,157,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,86,34,2,0,159,33,2,0,0,0,0,0,0,0,0,0,128,0,0,0,157,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,86,34,2,0,92,34,2,0,99,34,2,0,24,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,26,0,0,0,0,0,0,0,142,34,2,0,157,34,2,0,68,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,178,34,2,0,190,34,2,0,72,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,208,34,2,0,217,34,2,0,76,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,237,34,2,0,245,34,2,0,80,2,0,0,1,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,151,26,2,0,17,35,2,0,242,18,2,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,199,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,29,35,2,0,36,35,2,0,88,1,0,0,1,0,0,0,236,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,192,255,223,64,17,0,0,0,0,0,0,0,77,35,2,0,84,35,2,0,92,1,0,0,1,0,0,0,74,14,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,192,255,223,64,17,0,0,0,0,0,0,0,125,35,2,0,130,35,2,0,96,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,189,35,2,0,206,35,2,0,68,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,12,36,2,0,22,36,2,0,72,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,71,36,2,0,82,36,2,0,76,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,77,65,2,0,120,36,2,0,0,0,0,0,128,0,0,0,240,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,69,65,2,0,137,36,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,160,36,2,0,166,36,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,199,36,2,0,205,36,2,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,238,36,2,0,244,36,2,0,0,0,0,0,128,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,24,37,2,0,32,37,2,0,0,0,0,0,128,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,82,65,2,0,67,37,2,0,0,0,0,0,128,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,18,0,0,0,2,36,2,0,86,37,2,0,99,37,2,0,100,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,64,17,0,0,0,0,0,0,0,163,37,2,0,173,37,2,0,104,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,64,17,0,0,0,0,0,0,0,219,37,2,0,230,37,2,0,108,1,0,0,1,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,10,38,2,0,15,38,2,0,112,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,68,38,2,0,81,38,2,0,116,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,108,38,2,0,116,38,2,0,84,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,153,38,2,0,163,38,2,0,120,1,0,0,1,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,231,38,2,0,0,0,0,0,124,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,245,38,2,0,3,39,2,0,128,1,0,0,1,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,44,39,2,0,0,0,0,0,88,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,25,0,0,0,0,0,0,0,62,39,2,0,0,0,0,0,88,2,0,0,1,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,0,0,0,0,83,39,2,0,0,0,0,0,92,2,0,0,1,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,0,0,0,0,104,39,2,0,125,39,2,0,96,2,0,0,2,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,240,191,0,0,0,0,0,0,224,67,17,0,0,0,0,0,0,0,183,39,2,0,0,0,0,0,20,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,203,39,2,0,0,0,0,0,192,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,67,11,0,0,0,203,39,2,0,218,39,2,0,0,0,0,0,200,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,67,10,0,0,0,218,39,2,0,241,39,2,0,0,0,0,0,40,2,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,0,40,2,0,0,0,0,0,44,2,0,0,4,0,0,0,0,0,0,0,0,0,8,64,0,0,0,0,0,0,0,0,0,0,0,224,255,255,239,71,17,0,0,0,0,0,0,0,15,40,2,0,0,0,0,0,116,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,192,255,255,255,223,65,27,0,0,0,0,0,0,0,31,40,2,0,47,40,2,0,132,1,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,36,64,19,0,0,0,63,40,2,0,84,40,2,0,90,40,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,97,40,2,0,109,40,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,121,40,2,0,128,40,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,137,40,2,0,145,40,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,155,40,2,0,165,40,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,177,40,2,0,187,40,2,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,132,76,2,0,199,40,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,204,40,2,0,211,40,2,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,219,40,2,0,230,40,2,0,0,0,0,0,128,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,63,40,2,0,245,40,2,0,255,40,2,0,136,1,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,0,0,0,0,0,0,49,64,19,0,0,0,30,41,2,0,84,40,2,0,90,40,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,97,40,2,0,109,40,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,45,41,2,0,128,40,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,53,41,2,0,145,40,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,155,40,2,0,165,40,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,177,40,2,0,187,40,2,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,61,41,2,0,68,41,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,2,66,2,0,75,41,2,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,79,41,2,0,88,41,2,0,0,0,0,0,128,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,104,41,2,0,117,41,2,0,0,0,0,0,128,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,131,41,2,0,138,41,2,0,0,0,0,0,128,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,146,41,2,0,159,41,2,0,0,0,0,0,128,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,173,41,2,0,186,41,2,0,0,0,0,0,128,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,203,41,2,0,216,41,2,0,0,0,0,0,128,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,233,41,2,0,243,41,2,0,0,0,0,0,128,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,219,40,2,0,230,40,2,0,0,0,0,0,128,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,30,41,2,0,1,42,2,0,12,42,2,0,140,1,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,64,19,0,0,0,24,42,2,0,40,42,2,0,44,42,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,84,40,2,0,90,40,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,97,40,2,0,109,40,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,48,42,2,0,52,42,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,137,40,2,0,145,40,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,155,40,2,0,165,40,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,177,40,2,0,187,40,2,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,56,42,2,0,62,42,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,68,42,2,0,79,42,2,0,0,0,0,0,128,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,91,42,2,0,101,42,2,0,0,0,0,0,128,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,24,42,2,0,112,42,2,0,124,42,2,0,144,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,19,0,0,0,136,42,2,0,97,40,2,0,109,40,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,136,42,2,0,153,42,2,0,158,42,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,136,42,2,0,177,42,2,0,182,42,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,136,42,2,0,195,42,2,0,218,42,2,0,148,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,64,19,0,0,0,241,42,2,0,97,40,2,0,109,40,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,201,23,2,0,13,43,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,18,43,2,0,25,43,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,32,43,2,0,40,43,2,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,49,43,2,0,53,43,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,57,43,2,0,68,43,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,80,43,2,0,87,43,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,241,42,2,0,94,43,2,0,111,43,2,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,136,43,2,0,143,43,2,0,152,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,17,0,0,0,0,0,0,0,199,43,2,0,211,43,2,0,36,3,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,27,0,0,0,199,43,2,0,238,43,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,199,43,2,0,244,43,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,19,0,0,0,199,43,2,0,250,43,2,0,13,44,2,0,208,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,64,9,0,0,0,250,43,2,0,32,44,2,0,35,44,2,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,54,44,2,0,57,44,2,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,65,44,2,0,68,44,2,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,86,44,2,0,89,44,2,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,106,44,2,0,109,44,2,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,118,44,2,0,121,44,2,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,132,44,2,0,135,44,2,0,0,0,0,0,128,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,145,44,2,0,148,44,2,0,0,0,0,0,128,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,159,44,2,0,162,44,2,0,0,0,0,0,128,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,9,0,0,0,250,43,2,0,170,44,2,0,189,44,2,0,212,1,0,0,84,77,70,83,255,255,255,255,255,255,255,255,0,0,0,0,0,0,240,191,0,0,192,255,255,255,223,65,10,0,0,0,170,44,2,0,232,44,2,0,0,0,0,0,124,3,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,245,44,2,0,1,45,2,0,168,3,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,192,0,0,0,0,0,192,95,64,34,0,0,0,0,0,0,0,45,45,2,0,62,45,2,0,172,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,191,0,0,192,255,255,255,223,65,34,0,0,0,45,45,2,0,111,45,2,0,0,0,0,0,0,0,0,0,128,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,34,0,0,0,45,45,2,0,245,75,2,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,34,0,0,0,45,45,2,0,122,45,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,224,193,0,0,192,255,255,255,223,65,34,0,0,0,45,45,2,0,134,45,2,0,0,0,0,0,220,1,0,0,76,79,79,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,26,0,0,0,0,0,0,0,152,45,2,0,0,0,0,0,104,3,0,0,76,79,79,66,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,25,0,0,0,0,0,0,0,175,45,2,0,186,45,2,0,176,3,0,0,76,79,79,66,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,18,0,0,0,0,0,0,0,208,45,2,0,220,45,2,0,156,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,64,19,0,0,0,208,45,2,0,232,45,2,0,0,0,0,0,0,0,0,0,128,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,208,45,2,0,244,45,2,0,0,0,0,0,0,0,0,0,128,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,208,45,2,0,80,26,2,0,0,0,0,0,0,0,0,0,128,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,208,45,2,0,247,45,2,0,0,0,0,0,0,0,0,0,128,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,208,45,2,0,210,1,2,0,0,0,0,0,0,0,0,0,128,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,208,45,2,0,250,45,2,0,9,46,2,0,188,3,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,192,0,0,0,0,0,192,95,64,59,0,0,0,0,0,0,0,46,46,2,0,62,46,2,0,192,3,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,192,0,0,0,0,0,192,95,64,58,0,0,0,0,0,0,0,107,46,2,0,120,46,2,0,144,0,0,0,84,77,70,80,255,255,255,255,255,255,255,255,0,0,0,0,0,0,240,191,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,137,46,2,0,148,46,2,0,124,0,0,0,69,90,73,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,255,255,255,223,65,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,175,61,2,0,1,0,0,0,4,0,0,0,0,0,0,0,180,61,2,0,2,0,0,0,3,0,0,0,0,0,0,0,187,61,2,0,3,0,0,0,11,0,0,0,0,0,0,0,191,61,2,0,3,0,0,0,7,0,0,0,0,0,0,0,195,61,2,0,3,0,0,0,3,1,0,0,0,0,0,0,205,61,2,0,4,0,0,0,7,1,0,0,0,0,0,0,209,61,2,0,4,0,0,0,51,0,0,0,0,0,0,0,214,61,2,0,4,0,0,0,3,6,0,0,0,0,0,0,225,61,2,0,4,0,0,0,15,0,0,0,0,0,0,0,229,61,2,0,5,0,0,0,55,0,0,0,0,0,0,0,233,61,2,0,5,0,0,0,7,6,0,0,0,0,0,0,243,61,2,0,5,0,0,0,15,1,0,0,0,0,0,0,247,61,2,0,6,0,0,0,63,0,0,0,0,0,0,0,251,61,2,0,6,0,0,0,15,6,0,0,0,0,0,0,5,62,2,0,6,0,0,0,7,7,0,0,0,0,0,0,9,62,2,0,6,0,0,0,195,6,0,0,0,0,0,0,20,62,2,0,6,0,0,0,55,1,0,0,0,0,0,0,30,62,2,0,7,0,0,0,15,7,0,0,0,0,0,0,34,62,2,0,7,0,0,0,63,1,0,0,0,0,0,0,44,62,2,0,7,0,0,0,203,6,0,0,0,0,0,0,55,62,2,0,7,0,0,0,55,6,0,0,0,0,0,0,59,62,2,0,7,0,0,0,199,6,0,0,0,0,0,0,70,62,2,0,8,0,0,0,63,6,0,0,0,0,0,0,74,62,2,0,8,0,0,0,255,0,0,0,0,0,0,0,84,62,2,0,8,0,0,0,207,6,0,0,0,0,0,0,99,62,2,0,8,0,0,0,55,7,0,0,0,0,0,0,109,62,2,0,16,0,0,0,55,247,3,128,1,0,0,0,123,62,2,0,2,0,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,176,67,0,200,78,103,109,193,171,67,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,65,0,0,0,0,101,205,205,65,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,64,0,0,0,0,0,64,143,64,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,65,0,0,0,0,128,132,46,65,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,67,0,0,52,38,245,107,12,67,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,66,0,0,0,162,148,26,109,66,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,68,180,157,217,121,67,120,234,68,24,0,0,0,0,0,0,0,0,0,0,0,0,0,80,68,80,239,226,214,228,26,75,68,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,60,172,67,210,209,93,114,50,60,238,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,114,141,249,162,40,132,63,123,20,174,71,225,122,132,63,254,0,0,0,0,0,0,0,60,110,61,165,254,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10246),allocate([185,63,154,153,153,153,153,153,185,63,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,60,22,86,231,158,175,3,210,60,241,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,110,61,165,254,101,89,64,0,0,0,0,0,0,89,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,64,0,0,0,0,0,64,143,64,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,63,252,169,241,210,77,98,80,63,253,0,0,0,0,0,0,0,0,0,0,0,0,0,16,62,149,214,38,232,11,46,17,62,247,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,61,17,234,45,129,153,151,113,61,244,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,62,141,237,181,160,247,198,176,62,250,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,58,167,142,168,153,194,87,243,58,232,0,0,0,0,0,0,0,0,0,0,0,0,0,144,59,79,155,14,10,180,227,146,59,235,0,0,0,0,0,0,0,91,65,2,0,0,0,0,0,105,87,20,139,10,191,5,64,93,65,2,0,0,0,0,0,24,45,68,84,251,33,9,64,96,65,2,0,0,0,0,0,168,244,151,155,119,227,249,63,100,65,2,0,0,0,0,0,0,0,0,0,0,128,93,64,33,67,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,67,2,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,49,67,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,67,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,67,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,67,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,67,2,0,3,2,2,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,67,2,0,3,2,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93,67,2,0,1,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,67,2,0,0,0,0,0,107,67,2,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,67,2,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,67,2,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,67,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133,67,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,142,67,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,151,67,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,158,67,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,167,67,2,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,175,67,2,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,185,67,2,0,3,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,190,67,2,0,3,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,195,67,2,0,3,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,205,67,2,0,3,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,67,2,0,3,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,215,67,2,0,3,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,67,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,67,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,235,67,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,240,67,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,245,67,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,250,67,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,255,67,2,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,68,2,0,0,0,0,0,14,68,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,68,2,0,0,0,0,0,29,68,2,0,3,0,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,68,2,0,3,0,1,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,46,68,2,0,4,1,1,0,144,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,55,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,111,68,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,68,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,68,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,3,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,68,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,145,68,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,2,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,68,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,163,68,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,3,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,68,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,181,68,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,2,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,190,68,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,5,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,199,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,221,68,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,231,68,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,243,68,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,68,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,69,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,69,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,69,2,0,3,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,69,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,69,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,69,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,69,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,2],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20486),allocate([4,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,87,69,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,69,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,255,255,255,255,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,105,69,2,0,2,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,69,2,0,0,0,0,0,116,69,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,69,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,5,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,69,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,143,69,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,69,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,166,69,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,178,69,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,190,69,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,202,69,2,0,3,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,213,69,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,69,2,0,3,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,69,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,69,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,70,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,70,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,22,70,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,70,2,0,3,0,0,0,49,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,70,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,70,2,0,3,0,0,0,49,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,70,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,70,2,0,3,0,0,0,49,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,79,70,2,0,4,1,0,0,144,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,88,70,2,0,4,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,97,70,2,0,4,1,1,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,109,70,2,0,4,1,1,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,121,70,2,0,4,1,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,133,70,2,0,4,1,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,145,70,2,0,4,0,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,157,70,2,0,4,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,169,70,2,0,4,1,1,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,182,70,2,0,4,1,1,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,195,70,2,0,4,1,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,208,70,2,0,4,1,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,221,70,2,0,4,0,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,234,70,2,0,4,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,247,70,2,0,4,1,1,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,71,2,0,4,1,1,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,17,71,2,0,4,1,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,30,71,2,0,4,1,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,43,71,2,0,4,0,0,0,145,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,56,71,2,0,4,0,0,0,144,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,69,71,2,0,0,1,1,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,75,71,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,71,2,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,6,0,0,0,2,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,3,0,0,0,0,0,0,0,6,0,0,0,4,0,0,0,4,0,0,0,12,0,0,0,5,0,0,0,11,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,71,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,71,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,71,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,110,71,2,0,4,0,0,0,161,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,119,71,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,128,71,2,0,4,0,0,0,161,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,137,71,2,0,4,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,146,71,2,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,71,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,158,71,2,0,2,0,0,0,129,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,3,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,165,71,2,0,2,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,3,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,3,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,71,2,0,4,0,0,0,176,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,178,71,2,0,4,0,0,0,177,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,188,71,2,0,4,0,0,0,176,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,198,71,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,202,71,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,207,71,2,0,0,1,1,0,8],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30732),allocate([219,71,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,71,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,229,71,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,4,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,234,71,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,3,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,3,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,239,71,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,251,71,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,72,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,72,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,72,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,72,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,72,2,0,3,1,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,72,2,0,3,1,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,79,72,2,0,3,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,72,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,72,2,0,3,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,72,2,0,3,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,72,2,0,3,0,0,0,49,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,72,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,145,72,2,0,3,0,0,0,49,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,154,72,2,0,3,0,0,0,48,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,163,72,2,0,3,2,0,0,16,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,196,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,235,72,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,72,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,73,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,73,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,39,73,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,73,2,0,3,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,73,2,0,3,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,73,2,0,3,0,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,73,2,0,3,0,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,108,73,2,0,3,0,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,73,2,0,3,0,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,73,2,0,4,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,141,73,2,0,4,0,0,0,129,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,2,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,3,0,0,0,0,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,5,0,0,0,0,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,7,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,150,73,2,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,167,73,2,0,3,1,1,0,16,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,6,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,174,73,2,0,3,1,1,0,17,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,6,0,0,0,10,0,0,0,1,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,0,0,0,6,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,6,0,0,0,10,0,0,0,3,0,0,0,9,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93,61,127,102,158,160,230,63,0,0,0,0,0,136,57,61,68,23,117,250,82,176,230,63,0,0,0,0,0,0,216,60,254,217,11,117,18,192,230,63,0,0,0,0,0,120,40,189,191,118,212,221,220,207,230,63,0,0,0,0,0,192,30,61,41,26,101,60,178,223,230,63,0,0,0,0,0,0,216,188,227,58,89,152,146,239,230,63,0,0,0,0,0,0,188,188,134,147,81,249,125,255,230,63,0,0,0,0,0,216,47,189,163,45,244,102,116,15,231,63,0,0,0,0,0,136,44,189,195,95,236,232,117,31,231,63,0,0,0,0,0,192,19,61,5,207,234,134,130,47,231,63,0,0,0,0,0,48,56,189,82,129,165,72,154,63,231,63,0,0,0,0,0,192,0,189,252,204,215,53,189,79,231,63,0,0,0,0,0,136,47,61,241,103,66,86,235,95,231,63,0,0,0,0,0,224,3,61,72,109,171,177,36,112,231,63,0,0,0,0,0,208,39,189,56,93,222,79,105,128,231,63,0,0,0,0,0,0,221,188,0,29,172,56,185,144,231,63,0,0,0,0,0,0,227,60,120,1,235,115,20,161,231,63,0,0,0,0,0,0,237,188,96,208,118,9,123,177,231,63,0,0,0,0,0,64,32,61,51,193,48,1,237,193,231,63,0,0,0,0,0,0,160,60,54,134,255,98,106,210,231,63,0,0,0,0,0,144,38,189,59,78,207,54,243,226,231,63,0,0,0,0,0,224,2,189,232,195,145,132,135,243,231,63,0,0,0,0,0,88,36,189,78,27,62,84,39,4,232,63,0,0,0,0,0,0,51,61,26,7,209,173,210,20,232,63,0,0,0,0,0,0,15,61,126,205,76,153,137,37,232,63,0,0,0,0,0,192,33,189,208,66,185,30,76,54,232,63,0,0,0,0,0,208,41,61,181,202,35,70,26,71,232,63,0,0,0,0,0,16,71,61,188,91,159,23,244,87,232,63,0,0,0,0,0,96,34,61,175,145,68,155,217,104,232,63,0,0,0,0,0,196,50,189,149,163,49,217,202,121,232,63,0,0,0,0,0,0,35,189,184,101,138,217,199,138,232,63,0,0,0,0,0,128,42,189,0,88,120,164,208,155,232,63,0,0,0,0,0,0,237,188,35,162,42,66,229,172,232,63,0,0,0,0,0,40,51,61,250,25,214,186,5,190,232,63,0,0,0,0,0,180,66,61,131,67,181,22,50,207,232,63,0,0,0,0,0,208,46,189,76,102,8,94,106,224,232,63,0,0,0,0,0,80,32,189,7,120,21,153,174,241,232,63,0,0,0,0,0,40,40,61,14,44,40,208,254,2,233,63,0,0,0,0,0,176,28,189,150,255,145,11,91,20,233,63,0,0,0,0,0,224,5,189,249,47,170,83,195,37,233,63,0,0,0,0,0,64,245,60,74,198,205,176,55,55,233,63,0,0,0,0,0,32,23,61,174,152,95,43,184,72,233,63,0,0,0,0,0,0,9,189,203,82,200,203,68,90,233,63,0,0,0,0,0,104,37,61,33,111,118,154,221,107,233,63,0,0,0,0,0,208,54,189,42,78,222,159,130,125,233,63,0,0,0,0,0,0,1,189,163,35,122,228,51,143,233,63,0,0,0,0,0,0,45,61,4,6,202,112,241,160,233,63,0,0,0,0,0,164,56,189,137,255,83,77,187,178,233,63,0,0,0,0,0,92,53,61,91,241,163,130,145,196,233,63,0,0,0,0,0,184,38,61,197,184,75,25,116,214,233,63,0,0,0,0,0,0,236,188,142,35,227,25,99,232,233,63,0,0,0,0,0,208,23,61,2,243,7,141,94,250,233,63,0,0,0,0,0,64,22,61,77,229,93,123,102,12,234,63,0,0,0,0,0,0,245,188,246,184,142,237,122,30,234,63,0,0,0,0,0,224,9,61,39,46,74,236,155,48,234,63,0,0,0,0,0,216,42,61,93,10,70,128,201,66,234,63,0,0,0,0,0,240,26,189,155,37,62,178,3,85,234,63,0,0,0,0,0,96,11,61,19,98,244,138,74,103,234,63,0,0,0,0,0,136,56,61,167,179,48,19,158,121,234,63,0,0,0,0,0,32,17,61,141,46,193,83,254,139,234,63,0,0,0,0,0,192,6,61,210,252,121,85,107,158,234,63,0,0,0,0,0,184,41,189,184,111,53,33,229,176,234,63,0,0,0,0,0,112,43,61,129,243,211,191,107,195,234,63,0,0,0,0,0,0,217,60,128,39,60,58,255,213,234,63,0,0,0,0,0,0,228,60,163,210,90,153,159,232,234,63,0,0,0,0,0,144,44,189,103,243,34,230,76,251,234,63,0,0,0,0,0,80,22,61,144,183,141,41,7,14,235,63,0,0,0,0,0,212,47,61,169,137,154,108,206,32,235,63,0,0,0,0,0,112,18,61,75,26,79,184,162,51,235,63,0,0,0,0,0,71,77,61,231,71,183,21,132,70,235,63,0,0,0,0,0,56,56,189,58,89,229,141,114,89,235,63,0,0,0,0,0,0,152,60,106,197,241,41,110,108,235,63,0,0,0,0,0,208,10,61,80,94,251,242,118,127,235,63,0,0,0,0,0,128,222,60,178,73,39,242,140,146,235,63,0,0,0,0,0,192,4,189,3,6,161,48,176,165,235,63,0,0,0,0,0,112,13,189,102,111,154,183,224,184,235,63,0,0,0,0,0,144,13,61,255,193,75,144,30,204,235,63,0,0,0,0,0,160,2,61,111,161,243,195,105,223,235,63,0,0,0,0,0,120,31,189,184,29,215,91,194,242,235,63,0,0,0,0,0,160,16,189,233,178,65,97,40,6,236,63,0,0,0,0,0,64,17,189,224,82,133,221,155,25,236,63,0,0,0,0,0,224,11,61,238,100,250,217,28,45,236,63,0,0,0,0,0,64,9,189,47,208,255,95,171,64,236,63,0,0,0,0,0,208,14,189,21,253,250,120,71,84,236,63,0,0,0,0,0,102,57,61,203,208,87,46,241,103,236,63,0,0,0,0,0,16,26,189,182,193,136,137,168,123,236,63,0,0,0,0,128,69,88,189,51,231,6,148,109,143,236,63,0,0,0,0,0,72,26,189,223,196,81,87,64,163,236,63,0,0,0,0,0,0,203,60,148,144,239,220,32,183,236,63,0,0,0,0,0,64,1,61,137,22,109,46,15,203,236,63,0,0,0,0,0,32,240,60,18,196,93,85,11,223,236,63,0,0,0,0,0,96,243,60,59,171,91,91,21,243,236,63,0,0,0,0,0,144,6,189,188,137,7,74,45,7,237,63,0,0,0,0,0,160,9,61,250,200,8,43,83,27,237,63,0,0,0,0,0,224,21,189,133,138,13,8,135,47,237,63,0,0,0,0,0,40,29,61,3,162,202,234,200,67,237,63,0,0,0,0,0,160,1,61,145,164,251,220,24,88,237,63,0,0,0,0,0,0,223,60,161,230,98,232,118,108,237,63,0,0,0,0,0,160,3,189,78,131,201,22,227,128,237,63,0,0,0,0,0,216,12,189,144,96,255,113,93,149,237,63,0,0,0,0,0,192,244,60,174,50,219,3,230,169,237,63,0,0,0,0,0,144,255,60,37,131,58,214,124,190,237,63,0,0,0,0,0,128,233,60,69,180,1,243,33,211,237,63,0,0,0,0,0,32,245,188,191,5,28,100,213,231,237,63,0,0,0,0,0,112,29,189,236,154,123,51,151,252,237,63,0,0,0,0,0,20,22,189,94,125,25,107,103,17,238,63,0,0,0,0,0,72,11,61,231,163,245,20,70,38,238,63,0,0,0,0,0,206,64,61,92,238,22,59,51,59,238,63,0,0,0,0,0,104,12,61,180,63,139,231,46,80,238,63,0,0,0,0,0,48,9,189,104,109,103,36,57,101,238,63,0,0,0,0,0,0,229,188,68,76,199,251,81,122,238,63,0,0,0,0,0,248,7,189,38,183,205,119,121,143,238,63,0,0,0,0,0,112,243,188,232,144,164,162,175,164,238,63,0,0,0,0,0,208,229,60,228,202,124,134,244,185,238,63,0,0,0,0,0,26,22,61,13,104,142,45,72,207,238,63,0,0,0,0,0,80,245,60,20,133,24,162,170,228,238,63,0,0,0,0,0,64,198,60,19,90,97,238,27,250,238,63,0,0,0,0,0,128,238,188,6,65,182,28,156,15,239,63,0,0,0,0,0,136,250,188,99,185,107,55,43,37,239,63,0,0,0,0,0,144,44,189,117,114,221,72,201,58,239,63,0,0,0,0,0,0,170,60,36,69,110,91,118,80,239,63,0,0,0,0,0,240,244,188,253,68,136,121,50,102,239,63,0,0,0,0,0,128,202,60,56,190,156,173,253,123,239,63,0,0,0,0,0,188,250,60,130,60,36,2,216,145,239,63,0,0,0,0,0,96,212,188,142,144,158,129,193,167,239,63,0,0,0,0,0,12,11,189,17,213,146,54,186,189,239,63,0,0,0,0,0,224,192,188,148,113,143,43,194,211,239,63,0,0,0,0,128,222,16,189,238,35,42,107,217,233,239,63,0,0,0,0,0,67,238,60,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,0,190,188,90,250,26,11,240,63,0,0,0,0,0,64,179,188,3,51,251,169,61,22,240,63,0,0,0,0,0,23,18,189,130,2,59,20,104,33,240,63,0,0,0,0,0,64,186,60,108,128,119,62,154,44,240,63,0,0,0,0,0,152,239,60,202,187,17,46,212,55,240,63,0,0,0,0,0,64,199,188,137,127,110,232,21,67,240,63,0,0,0,0,0,48,216,60,103,84,246,114,95,78,240,63,0,0,0,0,0,63,26,189,90,133,21,211,176,89,240,63,0,0,0,0,0,132,2,189,149,31,60,14,10,101,240,63,0,0,0,0,0,96,241,60,26,247,221,41,107,112,240,63,0,0,0,0,0,36,21,61,45,168,114,43,212,123,240,63,0,0,0,0,0,160,233,188,208,155,117,24,69,135,240,63,0,0,0,0,0,64,230,60,200,7,102,246,189,146,240,63,0,0,0,0,0,120,0,189,131,243,198,202,62,158,240,63,0,0,0,0,0,0,152,188,48,57,31,155,199,169,240,63,0,0,0,0,0,160,255,60,252,136,249,108,88,181,240,63,0,0,0,0,0,200,250,188,138,108,228,69,241,192,240,63,0,0,0,0,0,192,217,60,22,72,114,43,146,204,240,63,0,0,0,0,0,32,5,61,216,93,57,35,59,216,240,63,0,0,0,0,0,208,250,188,243,209,211,50,236,227,240,63,0,0,0,0,0,172,27,61,166,169,223,95,165,239,240,63,0,0,0,0,0,232,4,189,240,210,254,175,102,251,240,63,0,0,0,0,0,48,13,189,75,35,215,40,48,7,241,63,0,0,0,0,0,80,241,60,91,91,18,208,1,19,241,63,0,0,0,0,0,0,236,60,249,42,94,171,219,30,241,63,0,0,0,0,0,188,22,61,213,49,108,192,189,42,241,63,0,0,0,0,0,64,232,60,125,4,242,20,168,54,241,63,0,0,0,0,0,208,14,189,233,45,169,174,154,66,241,63,0,0,0,0,0,224,232,60,56,49,79,147,149,78,241,63,0,0,0,0,0,64,235,60,113,142,165,200,152,90,241,63,0,0,0,0,0,48,5,61,223,195,113,84,164,102,241,63,0,0,0,0,0,56,3,61,17,82,125,60,184,114,241,63,0,0,0,0,0,212,40,61,159,187,149,134,212,126,241,63,0,0,0,0,0,208,5,189,147,141,140,56,249,138,241,63,0,0,0,0,0,136,28,189,102,93,55,88,38,151,241,63,0,0,0,0,0,240,17,61,167,203,111,235,91,163,241,63,0,0,0,0,0,72,16,61,227,135,19,248,153,175,241,63,0,0,0,0,0,57,71,189,84,93,4,132,224,187,241,63,0,0,0,0,0,228,36,61,67,28,40,149,47,200,241,63,0,0,0,0,0,32,10,189,178,185,104,49,135,212,241,63,0,0,0,0,0,128,227,60,49,64,180,94,231,224,241,63,0,0,0,0,0,192,234,60,56,217,252,34,80,237,241,63,0,0,0,0,0,144,1,61,247,205,56,132,193,249,241,63,0,0,0,0,0,120,27,189,143,141,98,136,59,6,242,63,0,0,0,0,0,148,45,61,30,168,120,53,190,18,242,63,0,0,0,0,0,0,216,60,65,221,125,145,73,31,242,63,0,0,0,0,0,52,43,61,35,19,121,162,221,43,242,63,0,0,0,0,0,248,25,61,231,97,117,110,122,56,242,63,0,0,0,0,0,200,25,189,39,20,130,251,31,69,242,63,0,0,0,0,0,48,2,61,2,166,178,79,206,81,242,63,0,0,0,0,0,72,19,189,176,206,30,113,133,94,242,63,0,0,0,0,0,112,18,61,22,125,226,101,69,107,242,63,0,0,0,0,0,208,17,61,15,224,29,52,14,120,242,63,0,0,0,0,0,238,49,61,62,99,245,225,223,132,242,63,0,0,0,0,0,192,20,189,48,187,145,117,186,145,242,63,0,0,0,0,0,216,19,189,9,223,31,245,157,158,242,63,0,0,0,0,0,176,8,61,155,14,209,102,138,171,242,63,0,0,0,0,0,124,34,189,58,218,218,208,127,184,242,63,0,0,0,0,0,52,42,61,249,26,119,57,126,197,242,63,0,0,0,0,0,128,16,189,217,2,228,166,133,210,242,63,0,0,0,0,0,208,14,189,121,21,100,31,150,223,242,63,0,0,0,0,0,32,244,188,207,46,62,169,175,236,242,63,0,0,0,0,0,152,36,189,34,136,189,74,210,249,242,63,0,0,0,0,0,48,22,189,37,182,49,10,254,6,243,63,0,0,0,0,0,54,50,189,11,165,238,237,50,20,243,63,0,0,0,0,128,223,112,189,184,215,76,252,112,33,243,63,0,0,0,0,0,72,34,189,162,233,168,59,184,46,243,63,0,0,0,0,0,152,37,189,102,23,100,178,8,60,243,63,0,0,0,0,0,208,30,61,39,250,227,102,98,73,243,63,0,0,0,0,0,0,220,188,15,159,146,95,197,86,243,63,0,0,0,0,0,216,48,189,185,136,222,162,49,100,243,63,0,0,0,0,0,200,34,61,57,170,58,55,167,113,243,63,0,0,0,0,0,96,32,61,254,116,30,35,38,127,243,63,0,0,0,0,0,96,22,189,56,216,5,109,174,140,243,63,0,0,0,0,0,224,10,189,195,62,113,27,64,154,243,63,0,0,0,0,0,114,68,189,32,160,229,52,219,167,243,63,0,0,0,0,0,32,8,61,149,110,236,191,127,181,243,63,0,0,0,0,0,128,62,61,242,168,19,195,45,195,243,63,0,0,0,0,0,128,239,60,34,225,237,68,229,208,243,63,0,0,0,0,0,160,23,189,187,52,18,76,166,222,243,63,0,0,0,0,0,48,38,61,204,78,28,223,112,236,243,63,0,0,0,0,0,166,72,189,140,126,172,4,69,250,243,63,0,0,0,0,0,220,60,189,187,160,103,195,34,8,244,63,0,0,0,0,0,184,37,61,149,46,247,33,10,22,244,63,0,0,0,0,0,192,30,61,70,70,9,39,251,35,244,63,0,0,0,0,0,96,19,189,32,169,80,217,245,49,244,63,0,0,0,0,0,152,35,61,235,185,132,63,250,63,244,63,0,0,0,0,0,0,250,60,25,137,97,96,8,78,244,63,0,0,0,0,0,192,246,188,1,210,167,66,32,92,244,63,0,0,0,0,0,192,11,189,22,0,29,237,65,106,244,63,0,0,0,0,0,128,18,189,38,51,139,102,109,120,244,63,0,0,0,0,0,224,48,61,0,60,193,181,162,134,244,63,0,0,0,0,0,64,45,189,4,175,146,225,225,148,244,63,0,0,0,0,0,32,12,61,114,211,215,240,42,163,244,63,0,0,0,0,0,80,30,189,1,184,109,234,125,177,244,63,0,0,0,0,0,128,7,61,225,41,54,213,218,191,244,63,0,0,0,0,0,128,19,189,50,193,23,184,65,206,244,63,0,0,0,0,0,128,0,61,219,221,253,153,178,220,244,63,0,0,0,0,0,112,44,61,150,171,216,129,45,235,244,63,0,0,0,0,0,224,28,189,2,45,157,118,178,249,244,63,0,0,0,0,0,32,25,61,193,49,69,127,65,8,245,63,0,0,0,0,0,192,8,189,42,102,207,162,218,22,245,63,0,0,0,0,0,0,250,188,234,81,63,232,125,37,245,63,0,0,0,0,0,8,74,61,218,78,157,86,43,52,245,63,0,0,0,0,0,216,38,189,26,172,246,244,226,66,245,63,0,0,0,0,0,68,50,189,219,148,93,202,164,81,245,63,0,0,0,0,0,60,72,61,107,17,233,221,112,96,245,63,0,0,0,0,0,176,36,61,222,41,181,54,71,111,245,63,0,0,0,0,0,90,65,61,14,196,226,219,39,126,245,63,0,0,0,0,0,224,41,189,111,199,151,212,18,141,245,63,0,0,0,0,0,8,35,189,76,11,255,39,8,156,245,63,0,0,0,0,0,236,77,61,39,84,72,221,7,171,245,63,0,0,0,0,0,0,196,188],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+65936),allocate([244,122,168,251,17,186,245,63,0,0,0,0,0,8,48,61,11,70,89,138,38,201,245,63,0,0,0,0,0,200,38,189,63,142,153,144,69,216,245,63,0,0,0,0,0,154,70,61,225,32,173,21,111,231,245,63,0,0,0,0,0,64,27,189,202,235,220,32,163,246,245,63,0,0,0,0,0,112,23,61,184,220,118,185,225,5,246,63,0,0,0,0,0,248,38,61,21,247,205,230,42,21,246,63,0,0,0,0,0,0,1,61,49,85,58,176,126,36,246,63,0,0,0,0,0,208,21,189,181,41,25,29,221,51,246,63,0,0,0,0,0,208,18,189,19,195,204,52,70,67,246,63,0,0,0,0,0,128,234,188,250,142,188,254,185,82,246,63,0,0,0,0,0,96,40,189,151,51,85,130,56,98,246,63,0,0,0,0,0,254,113,61,142,50,8,199,193,113,246,63,0,0,0,0,0,32,55,189,126,169,76,212,85,129,246,63,0,0,0,0,0,128,230,60,113,148,158,177,244,144,246,63,0,0,0,0,0,120,41,189,1,0,0,0,0,0,0,0,155,114,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,166,114,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,177,114,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,192,114,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,197,114,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,202,114,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,207,114,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,212,114,1,0,0,0,0,0,3,0,0,0,156,86,1,0,0,0,0,0,9,0,0,0,0,0,0,0,229,114,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,236,114,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,242,114,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,251,114,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,5,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,0,0,0,0,15,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,25,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,0,0,0,0,30,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,35,115,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,41,115,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,47,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,52,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,57,115,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,62,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,0,0,0,0,70,115,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,78,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,234,134,1,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,29,0,0,0,0,0,0,0,83,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,90,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,0,94,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,101,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,106,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,111,115,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,0,0,0,0,116,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,120,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,125,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,38,0,0,0,0,0,0,0,130,115,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,39,0,0,0,0,0,0,0,135,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,139,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,0,0,0,0,154,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,42,0,0,0,0,0,0,0,162,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,43,0,0,0,0,0,0,0,170,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,175,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,45,0,0,0,0,0,0,0,183,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,190,115,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,196,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,205,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,211,115,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,216,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,220,115,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,225,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,0,0,0,0,237,115,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,246,115,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,0,0,0,251,115,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,56,0,0,0,0,0,0,0,0,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,12,128,0,0,0,0,0,0,6,116,1,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,11,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,16,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,21,116,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,60,0,0,0,0,0,0,0,27,116,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,61,0,0,0,0,0,0,0,32,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,0,0,0,0,37,116,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,69,0,0,0,0,0,0,0,45,116,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,70,0,0,0,0,0,0,0,50,116,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,0,0,0,0,55,116,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,72,0,0,0,0,0,0,0,59,116,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,73,0,0,0,0,0,0,0,64,116,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,0,0,0,0,69,116,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,75,0,0,0,0,0,0,0,74,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,76,0,0,0,0,0,0,0,79,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,0,0,0,0,86,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,78,0,0,0,0,0,0,0,92,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,79,0,0,0,0,0,0,0,104,116,1,0,0,0,0,0,5,0,0,0,164,86,1,0,0,0,0,0,80,0,0,0,0,0,0,0,123,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,81,0,0,0,0,0,0,0,128,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,82,0,0,0,0,0,0,0,136,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,0,0,0,0,141,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,0,0,0,0,145,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,85,0,0,0,0,0,0,0,156,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,86,0,0,0,0,0,0,0,160,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,87,0,0,0,0,0,0,0,165,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,88,0,0,0,0,0,0,0,173,116,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,89,0,0,0,0,0,0,0,178,116,1,0,0,0,0,0,7,0,0,0,172,86,1,0,0,0,0,0,90,0,0,0,0,0,0,0,197,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,91,0,0,0,0,0,0,0,202,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,92,0,0,0,0,0,0,0,206,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,93,0,0,0,0,0,0,0,210,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,95,0,0,0,0,0,0,0,215,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,227,116,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,243,116,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,247,116,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,101,0,0,0,0,0,0,0,253,116,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,103,0,0,0,0,0,0,0,1,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,104,0,0,0,0,0,0,0,5,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,107,0,0,0,0,0,0,0,17,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,108,0,0,0,0,0,0,0,247,13,2,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,109,0,0,0,0,0,0,0,22,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,112,0,0,0,0,0,0,0,25,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,113,0,0,0,0,0,0,0,32,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,0,0,0,39,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,115,0,0,0,0,0,0,0,45,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,0,0,0,0,49,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,15,128,0,0,0,0,0,0,59,117,1,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,0,0,0,65,117,1,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,118,0,0,0,0,0,0,0,71,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,119,0,0,0,0,0,0,0,75,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,120,0,0,0,0,0,0,0,79,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,121,0,0,0,0,0,0,0,92,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,122,0,0,0,0,0,0,0,96,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,123,0,0,0,0,0,0,0,100,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,124,0,0,0,0,0,0,0,104,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,125,0,0,0,0,0,0,0,109,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,126,0,0,0,0,0,0,0,115,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,127,0,0,0,0,0,0,0,121,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,125,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,130,0,0,0,0,0,0,0,130,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,131,0,0,0,0,0,0,0,134,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,132,0,0,0,0,0,0,0,139,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,133,0,0,0,0,0,0,0,148,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,134,0,0,0,0,0,0,0,159,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,135,0,0,0,0,0,0,0,164,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,136,0,0,0,0,0,0,0,168,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,137,0,0,0,0,0,0,0,178,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,0,0,0,0,187,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,139,0,0,0,0,0,0,0,192,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,140,0,0,0,0,0,0,0,196,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,168,0,0,0,0,0,0,0,200,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,141,0,0,0,0,0,0,0,204,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,143,0,0,0,0,0,0,0,211,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,221,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,145,0,0,0,0,0,0,0,232,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,183,0,0,0,0,0,0,0,237,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,184,0,0,0,0,0,0,0,242,117,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,146,0,0,0,0,0,0,0,247,117,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,147,0,0,0,0,0,0,0,253,117,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,148,0,0,0,0,0,0,0,6,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,149,0,0,0,0,0,0,0,13,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,150,0,0,0,0,0,0,0,16,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,153,0,0,0,0,0,0,0,20,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,154,0,0,0,0,0,0,0,28,118,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,155,0,0,0,0,0,0,0,38,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,156,0,0,0,0,0,0,0,43,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,157,0,0,0,0,0,0,0,50,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,159,0,0,0,0,0,0,0,55,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,161,0,0,0,0,0,0,0,60,118,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,162,0,0,0,0,0,0,0,70,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,163,0,0,0,0,0,0,0,75,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,164,0,0,0,0,0,0,0,80,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,165,0,0,0,0,0,0,0,86,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,166,0,0,0,0,0,0,0,91,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,167,0,0,0,0,0,0,0,96,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,169,0,0,0,0,0,0,0,212,5,2,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,0,0,0,101,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,170,0,0,0,0,0,0,0,106,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,128,0,0,0,0,0,0,116,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,128,0,0,0,0,0,0,121,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,128,0,0,0,0,0,0,126,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,128,0,0,0,0,0,0,131,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,128,0,0,0,0,0,0,136,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,6,128,0,0,0,0,0,0,147,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,7,128,0,0,0,0,0,0,152,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,8,128,0,0,0,0,0,0,157,118,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,9,128,0,0,0,0,0,0,162,118,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,128,0,0,0,0,0,0,167,118,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,128,0,0,0,0,0,0,172,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,13,128,0,0,0,0,0,0,178,118,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,0,0,0,0,0,0,0,186,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,173,0,0,0,0,0,0,0,190,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,174,0,0,0,0,0,0,0,224,215,1,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,175,0,0,0,0,0,0,0,200,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,178,0,0,0,0,0,0,0,204,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,180,0,0,0,0,0,0,0,214,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,181,0,0,0,0,0,0,0,218,118,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,182,0,0,0,0,0,0,0,223,118,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,185,0,0,0,0,0,0,0,230,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,187,0,0,0,0,0,0,0,234,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,241,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,190,0,0,0,0,0,0,0,245,118,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,191,0,0,0,0,0,0,0,249,118,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,16,2,0,0,0,0,0,6,119,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,22,119,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,0,0,0,0,27,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,142,0,0,0,0,0,0,0,37,119,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,177,0,0,0,0,0,0,0,42,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,189,0,0,0,0,0,0,0,54,119,1,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,129,0,0,0,0,0,0,0,58,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,179,0,0,0,0,0,0,0,62,119,1,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,98,0,0,0,0,0,0,0,66,119,1,0,0,0,0,0,4,0,0,0,180,86,1,0,0,0,0,0,12,0,0,0,0,0,0,0,80,119,1,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,87,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,67,0,0,0,0,0,0,0,93,119,1,0,0,0,0,0,5,0,0,0,188,86,1,0,0,0,0,0,64,0,0,0,0,0,0,0,121,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,110,0,0,0,0,0,0,0,125,119,1,0,0,0,0,0,5,0,0,0,196,86,1,0,0,0,0,0,65,0,0,0,0,0,0,0,141,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,66,0,0,0,0,0,0,0,145,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,62,0,0,0,0,0,0,0,152,119,1,0,0,0,0,0,4,0,0,0,204,86,1,0,0,0,0,0,63,0,0,0,0,0,0,0,166,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,105,0,0,0,0,0,0,0,170,119,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,102,0,0,0,0,0,0,0,174,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,178,119,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,111,0,0,0,0,0,0,0,183,119,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,94,0,0,0,0,0,0,0,191,119,1,0,0,0,0,0,5,0,0,0,212,86,1,0,0,0,0,0,186,0,0,0,0,0,0,0,223,119,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,97,0,0,0,0,0,0,0,228,119,1,0,0,0,0,0,5,0,0,0,224,86,1,0,0,0,0,0,106,0,0,0,0,0,0,0,244,119,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,152,0,0,0,0,0,0,0,248,119,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,172,0,0,0,0,0,0,0,1,120,1,0,0,0,0,0,7,0,0,0,232,86,1,0,0,0,0,0,151,0,0,0,0,0,0,0,17,120,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,27,120,1,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,158,0,0,0,0,0,0,0,31,120,1,0,0,0,0,0,5,0,0,0,240,86,1,0,0,0,0,0,14,128,0,0,0,0,0,0,55,120,1,0,0,0,0,0,4,0,0,0,248,86,1,0,0,0,0,0,16,128,0,0,0,0,0,0,60,120,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,65,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,75,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,1,0,0,0,85,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,3,0,1,0,1,0,0,0,95,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,4,0,1,0,1,0,0,0,105,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,5,0,1,0,1,0,0,0,112,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,6,0,1,0,1,0,0,0,119,120,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,0,1,0,1,0,0,0,129,120,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,0,1,0,1,0,0,0,138,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,9,0,1,0,1,0,0,0,148,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,10,0,1,0,1,0,0,0,158,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,11,0,1,0,1,0,0,0,168,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,12,0,1,0,1,0,0,0,178,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,13,0,1,0,1,0,0,0,188,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,14,0,1,0,1,0,0,0,198,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,15,0,1,0,1,0,0,0,208,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,16,0,1,0,1,0,0,0,218,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,17,0,1,0,1,0,0,0,230,120,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,30,0,1,0,1,0,0,0,239,120,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,18,0,1,0,1,0,0,0,0,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,28,0,1,0,1,0,0,0,17,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,29,0,1,0,1,0,0,0,34,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,19,0,1,0,1,0,0,0,51,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,20,0,1,0,1,0,0,0,59,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,21,0,1,0,1,0,0,0,69,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,22,0,1,0,1,0,0,0,79,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,23,0,1,0,1,0,0,0,89,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,24,0,1,0,1,0,0,0,99,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,25,0,1,0,1,0,0,0,110,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,26,0,1,0,1,0,0,0,118,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,27,0,1,0,1,0,0,0,124,121,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,16,1,0,1,0,0,0,138,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,16,1,0,1,0,0,0,151,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,2,16,1,0,1,0,0,0,165,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,16,1,0,1,0,0,0,179,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,16,1,0,1,0,0,0,193,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,16,1,0,1,0,0,0,206,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,6,16,1,0,1,0,0,0,223,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,16,1,0,1,0,0,0,232,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,16,1,0,1,0,0,0,242,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,16,1,0,1,0,0,0,251,121,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,16,1,0,1,0,0,0,5,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,11,16,1,0,1,0,0,0,14,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,16,1,0,1,0,0,0,25,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,13,16,1,0,1,0,0,0,34,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,16,1,0,1,0,0,0,44,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,15,16,1,0,1,0,0,0,57,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,16,16,1,0,1,0,0,0,71,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,17,16,1,0,1,0,0,0,85,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,18,16,1,0,1,0,0,0,99,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,24,1,0,1,0,0,0,109,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,19,16,1,0,1,0,0,0,122,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,16,1,0,1,0,0,0,136,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,21,16,1,0,1,0,0,0,148,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,22,16,1,0,1,0,0,0,160,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,23,16,1,0,1,0,0,0,172,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,16,1,0,1,0,0,0,190,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,25,16,1,0,1,0,0,0,208,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,26,16,1,0,1,0,0,0,221,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,27,16,1,0,1,0,0,0,239,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,28,16,1,0,1,0,0,0,253,122,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,29,16,1,0,1,0,0,0,8,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,24,1,0,1,0,0,0,22,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,24,1,0,1,0,0,0,32,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,2,24,1,0,1,0,0,0,46,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,24,1,0,1,0,0,0,56,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,24,1,0,1,0,0,0,70,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,30,16,1,0,1,0,0,0,83,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,6,24,1,0,1,0,0,0,94,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,24,1,0,1,0,0,0,104,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,32,1,0,1,0,0,0,115,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,32,1,0,1,0,0,0,122,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,48,1,0,1,0,0,0,129,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,48,1,0,1,0,0,0,136,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,64,1,0,1,0,0,0,143,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,64,1,0,1,0,0,0,152,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,2,64,1,0,1,0,0,0,167,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,64,1,0,1,0,0,0,176,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,72,1,0,1,0,0,0,185,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,80,1,0,1,0,0,0,195,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,80,1,0,1,0,0,0,199,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,2,80,1,0,1,0,0,0,203,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,80,1,0,1,0,0,0,207,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,80,1,0,1,0,0,0,3,34,2,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,5,80,1,0,1,0,0,0,211,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,6,80,1,0,1,0,0,0,218,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,80,1,0,1,0,0,0,226,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,80,1,0,1,0,0,0,232,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,80,1,0,1,0,0,0,238,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,80,1,0,1,0,0,0,244,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,11,80,1,0,1,0,0,0,250,123,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,80,1,0,1,0,0,0,3,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,13,80,1,0,1,0,0,0,8,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,14,80,1,0,1,0,0,0,15,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,15,80,1,0,1,0,0,0,22,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,16,80,1,0,1,0,0,0,30,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,17,80,1,0,1,0,0,0,35,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,18,80,1,0,1,0,0,0,49,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,19,80,1,0,1,0,0,0,53,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,20,80,1,0,1,0,0,0,58,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,21,80,1,0,1,0,0,0,63,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,22,80,1,0,1,0,0,0,74,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,23,80,1,0,1,0,0,0,78,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,24,80,1,0,1,0,0,0,89,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,25,80,1,0,1,0,0,0,95,124,1,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,26,80,1,0,1,0,0,0,103,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,27,80,1,0,1,0,0,0,115,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,28,80,1,0,1,0,0,0,119,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,29,80,1,0,1,0,0,0,129,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,30,80,1,0,1,0,0,0,133,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,31,80,1,0,1,0,0,0,140,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,32,80,1,0,1,0,0,0,147,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,33,80,1,0,1,0,0,0,155,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,34,80,1,0,1,0,0,0,159,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,35,80,1,0,1,0,0,0,170,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,36,80,1,0,1,0,0,0,180,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,37,80,1,0,1,0,0,0,186,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,38,80,1,0,1,0,0,0,195,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,39,80,1,0,1,0,0,0,202,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,40,80,1,0,1,0,0,0,214,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,41,80,1,0,1,0,0,0,222,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,42,80,1,0,1,0,0,0,227,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,43,80,1,0,1,0,0,0,232,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,44,80,1,0,1,0,0,0,236,124,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,45,80,1,0,1,0,0,0,243,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,46,80,1,0,1,0,0,0,250,124,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,47,80,1,0,1,0,0,0,1,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,48,80,1,0,1,0,0,0,8,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,49,80,1,0,1,0,0,0,23,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,50,80,1,0,1,0,0,0,37,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,51,80,1,0,1,0,0,0,46,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,52,80,1,0,1,0,0,0,51,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,53,80,1,0,1,0,0,0,56,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,67,80,1,0,1,0,0,0,63,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,54,80,1,0,1,0,0,0,70,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,55,80,1,0,1,0,0,0,75,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,56,80,1,0,1,0,0,0,84,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,57,80,1,0,1,0,0,0,93,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,58,80,1,0,1,0,0,0,103,125,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,59,80,1,0,1,0,0,0,108,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,60,80,1,0,1,0,0,0,112,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,88,1,0,1,0,0,0,117,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,88,1,0,1,0,0,0,127,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,88,1,0,1,0,0,0,133,125,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,80,1,0,1,0,0,0,141,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,62,80,1,0,1,0,0,0,146,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,63,80,1,0,1,0,0,0,159,125,1,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,64,80,1],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+76176),allocate([1,0,0,0,163,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,65,80,1,0,1,0,0,0,173,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,66,80,1,0,1,0,0,0,183,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,3,88,1,0,1,0,0,0,187,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,4,88,1,0,1,0,0,0,192,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,9,88,1,0,1,0,0,0,196,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,5,88,1,0,1,0,0,0,200,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,6,88,1,0,1,0,0,0,209,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,7,88,1,0,1,0,0,0,218,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,88,1,0,1,0,0,0,234,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,10,88,1,0,1,0,0,0,250,125,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,11,88,1,0,1,0,0,0,7,126,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,12,88,1,0,1,0,0,0,12,126,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,112,1,0,3,0,0,0,17,126,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,112,1,0,3,0,0,0,30,126,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,112,1,0,3,0,0,0,43,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,3,112,1,0,3,0,0,0,48,126,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,13,120,1,0,3,0,0,0,53,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,4,112,1,0,3,0,0,0,57,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,5,112,1,0,3,0,0,0,61,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,6,112,1,0,3,0,0,0,70,126,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,7,112,1,0,3,0,0,0,88,126,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,112,1,0,3,0,0,0,101,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,8,120,1,0,3,0,0,0,105,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,120,1,0,3,0,0,0,112,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,10,120,1,0,3,0,0,0,121,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,1,120,1,0,3,0,0,0,126,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,120,1,0,3,0,0,0,134,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,12,120,1,0,3,0,0,0,142,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,3,120,1,0,3,0,0,0,146,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,4,120,1,0,3,0,0,0,151,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,5,120,1,0,3,0,0,0,160,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,6,120,1,0,3,0,0,0,164,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,7,120,1,0,3,0,0,0,175,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,11,120,1,0,3,0,0,0,185,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,9,120,1,0,3,0,0,0,193,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,14,120,1,0,3,0,0,0,200,126,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,128,1,0,2,0,0,0,219,126,1,0,0,0,0,0,0,0,0,0,0,87,1,0,0,0,0,0,0,136,1,0,0,0,0,0,14,127,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,136,1,0,0,0,0,0,22,127,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,136,1,0,0,0,0,0,27,127,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,136,1,0,2,0,0,0,31,127,1,0,0,0,0,0,0,0,0,0,12,87,1,0,0,0,0,0,4,136,1,0,2,0,0,0,63,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,136,1,0,2,0,0,0,67,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,136,1,0,2,0,0,0,82,127,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,136,1,0,2,0,0,0,92,127,1,0,0,0,0,0,0,0,0,0,20,87,1,0,0,0,0,0,218,114,1,0,0,0,0,0,108,116,1,0,0,0,0,0,187,116,1,0,0,0,0,0,70,119,1,0,0,0,0,0,97,119,1,0,0,0,0,0,129,119,1,0,0,0,0,0,156,119,1,0,0,0,0,0,197,119,1,0,211,119,1,0,0,0,0,0,233,119,1,0,0,0,0,0,6,120,1,0,0,0,0,0,35,120,1,0,0,0,0,0,156,119,1,0,0,0,0,0,223,126,1,0,251,126,1,0,0,0,0,0,35,127,1,0,0,0,0,0,101,127,1,0,0,0,0,0,100,0,0,0,100,0,0,0,100,0,0,0,0,0,0,0,234,134,1,0,0,0,0,0,0,0,0,0,28,0,0,0,34,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,87,1,0,0,0,0,0,220,49,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,239,134,1,0,3,0,0,0,96,0,0,0,103,17,55,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,32,0,0,128,0,0,0,32,0,0,0,105,0,0,0,120,0,0,0,134,0,0,0,149,0,0,0,152,0,0,0,146,1,0,0,228,1,0,0,243,1,0,0,1,2,0,0,148,2,0,0,16,2,0,0,31,2,0,0,45,2,0,0,206,2,0,0,21,1,0,0,36,1,0,0,50,1,0,0,65,1,0,0,68,1,0,0,180,1,0,0,8,3,0,0,23,3,0,0,37,3,0,0,163,2,0,0,52,3,0,0,67,3,0,0,81,3,0,0,221,2,0,0,166,0,0,0,181,0,0,0,195,0,0,0,210,0,0,0,213,0,0,0,161,1,0,0,60,2,0,0,75,2,0,0,89,2,0,0,178,2,0,0,104,2,0,0,119,2,0,0,133,2,0,0,236,2,0,0,82,1,0,0,97,1,0,0,111,1,0,0,126,1,0,0,129,1,0,0,195,1,0,0,96,3,0,0,111,3,0,0,125,3,0,0,187,2,0,0,140,3,0,0,155,3,0,0,169,3,0,0,245,2,0,0,227,0,0,0,237,0,0,0,247,0,0,0,1,1,0,0,10,1,0,0,170,1,0,0,184,3,0,0,194,3,0,0,204,3,0,0,196,2,0,0,214,3,0,0,224,3,0,0,234,3,0,0,254,2,0,0,8,2,0,0,76,1,0,0,24,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,3,0,0,0,6,0,0,0,12,0,0,0,24,0,0,0,48,0,0,0,255,255,255,127,10,0,0,0,140,1,0,0,11,0,0,0,132,3,0,0,12,0,0,0,72,9,0,0,13,0,0,0,72,9,0,0,20,0,0,0,72,9,0,0,21,0,0,0,144,18,0,0,22,0,0,0,164,31,0,0,30,0,0,0,164,31,0,0,31,0,0,0,80,70,0,0,32,0,0,0,0,80,0,0,40,0,0,0,0,128,0,0,41,0,0,0,0,128,0,0,42,0,0,0,0,136,0,0,50,0,0,0,64,175,1,0,51,0,0,0,0,208,2,0,52,0,0,0,0,208,2,0,224,215,1,0,0,0,0,0,0,0,0,0,174,0,0,0,34,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,90,1,0,0,0,0,0,220,31,0,0,0,0,0,0,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,0,0,0,0,229,215,1,0,3,0,0,0,32,1,0,0,103,17,55,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,33,0,0,0,34,0,0,0,34,0,0,0,35,0,0,0,35,0,0,0,36,0,0,0,36,0,0,0,37,0,0,0,37,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,12,0,0,0,11,0,0,0,10,0,0,0,11,0,0,0,16,0,0,0,11,0,0,0,40,0,0,0,33,0,0,0,24,0,0,0,11,0,0,0,20,0,0,0,11,0,0,0,32,0,0,0,11,0,0,0,80,0,0,0,33,0,0,0,18,0,0,0,11,0,0,0,15,0,0,0,11,0,0,0,64,0,0,0,33,0,0,0,160,0,0,0,99,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,32,0,0,0,26,0,0,0,21,0,0,0,17,0,0,0,13,0,0,0,9,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,254,255,255,255,251,255,255,255,247,255,255,255,243,255,255,255,239,255,255,255,235,255,255,255,230,255,255,255,224,255,255,255,230,255,255,255,235,255,255,255,239,255,255,255,243,255,255,255,247,255,255,255,251,255,255,255,254,255,255,255,0,0,0,0,2,0,0,0,5,0,0,0,9,0,0,0,13,0,0,0,17,0,0,0,21,0,0,0,26,0,0,0,32,0,0,0,0,240,255,255,154,249,255,255,114,252,255,255,138,253,255,255,30,254,255,255,122,254,255,255,197,254,255,255,0,255,255,255,197,254,255,255,122,254,255,255,30,254,255,255,138,253,255,255,114,252,255,255,154,249,255,255,0,240,255,255,161,1,2,0,7,0,0,0,176,1,0,0,103,17,55,0,4,0,0,0,0,0,0,0,2,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,0,0,0,0,240,106,2,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,2,0,0,0,7,0,0,0,10,0,0,0,120,0,0,0,255,255,255,127,1,0,0,0,32,0,0,0,1,0,0,0,255,255,255,255,65,196,52,0,65,208,0,0,17,196,0,0,3,226,0,0,9,253,0,0,2,40,0,0,2,34,0,0,7,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,250,0,0,21,219,0,0,5,201,0,0,21,213,0,0,5,207,0,0,22,51,0,0,6,39,0,0,18,155,0,0,20,192,0,0,20,153,0,0,20,147,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,213,0,0,5,207,0,0,21,213,0,0,5,207,0,0,21,213,0,0,5,207,0,0,152,47,138,66,145,68,55,113,207,251,192,181,165,219,181,233,91,194,86,57,241,17,241,89,164,130,63,146,213,94,28,171,152,170,7,216,1,91,131,18,190,133,49,36,195,125,12,85,116,93,190,114,254,177,222,128,167,6,220,155,116,241,155,193,193,105,155,228,134,71,190,239,198,157,193,15,204,161,12,36,111,44,233,45,170,132,116,74,220,169,176,92,218,136,249,118,82,81,62,152,109,198,49,168,200,39,3,176,199,127,89,191,243,11,224,198,71,145,167,213,81,99,202,6,103,41,41,20,133,10,183,39,56,33,27,46,252,109,44,77,19,13,56,83,84,115,10,101,187,10,106,118,46,201,194,129,133,44,114,146,161,232,191,162,75,102,26,168,112,139,75,194,163,81,108,199,25,232,146,209,36,6,153,214,133,53,14,244,112,160,106,16,22,193,164,25,8,108,55,30,76,119,72,39,181,188,176,52,179,12,28,57,74,170,216,78,79,202,156,91,243,111,46,104,238,130,143,116,111,99,165,120,20,120,200,132,8,2,199,140,250,255,190,144,235,108,80,164,247,163,249,190,242,120,113,198,117,56,0,0,0,0,0,0,8,0,0,0,0,0,0,0,5,0,0,0,115,49,54,0,0,0,0,0,16,0,0,0,0,0,0,0,6,0,0,0,115,51,50,0,0,0,0,0,32,0,0,0,0,0,0,0,7,0,0,0,102,108,116,0,0,0,0,0,32,0,0,0,0,0,0,0,8,0,0,0,100,98,108,0,0,0,0,0,64,0,0,0,0,0,0,0,9,0,0,0,117,56,112,0,0,0,0,0,8,0,0,0,1,0,0,0,0,0,0,0,115,49,54,112,0,0,0,0,16,0,0,0,1,0,0,0,1,0,0,0,115,51,50,112,0,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,102,108,116,112,0,0,0,0,32,0,0,0,1,0,0,0,3,0,0,0,100,98,108,112,0,0,0,0,64,0,0,0,1,0,0,0,4,0,0,0,131,62,2,0,134,62,2,0,145,62,2,0,148,62,2,0,160,62,2,0,163,62,2,0,176,62,2,0,180,62,2,0,194,62,2,0,197,62,2,0,207,62,2,0,210,62,2,0,221,62,2,0,225,62,2,0,246,62,2,0,250,62,2,0,16,63,2,0,19,63,2,0,31,63,2,0,34,63,2,0,44,63,2,0,47,63,2,0,58,63,2,0,61,63,2,0,72,63,2,0,76,63,2,0,91,63,2,0,95,63,2,0,112,63,2,0,116,63,2,0,132,63,2,0,136,63,2,0,150,63,2,0,154,63,2,0,170,63,2,0,174,63,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,189,63,2,0,192,63,2,0,205,63,2,0,208,63,2,0,222,63,2,0,225,63,2,0,235,63,2,0,238,63,2,0,249,63,2,0,253,63,2,0,18,64,2,0,22,64,2,0,44,64,2,0,49,64,2,0,86,65,2,0,3,0,0,0,0,0,0,0,103,17,55,0,40,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,181,73,2,0,3,0,0,0,0,0,0,0,103,17,55,0,4,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,164,106,215,86,183,199,232,219,112,32,36,238,206,189,193,175,15,124,245,42,198,135,71,19,70,48,168,1,149,70,253,216,152,128,105,175,247,68,139,177,91,255,255,190,215,92,137,34,17,144,107,147,113,152,253,142,67,121,166,33,8,180,73,98,37,30,246,64,179,64,192,81,90,94,38,170,199,182,233,93,16,47,214,83,20,68,2,129,230,161,216,200,251,211,231,230,205,225,33,214,7,55,195,135,13,213,244,237,20,90,69,5,233,227,169,248,163,239,252,217,2,111,103,138,76,42,141,66,57,250,255,129,246,113,135,34,97,157,109,12,56,229,253,68,234,190,164,169,207,222,75,96,75,187,246,112,188,191,190,198,126,155,40,250,39,161,234,133,48,239,212,5,29,136,4,57,208,212,217,229,153,219,230,248,124,162,31,101,86,172,196,68,34,41,244,151,255,42,67,167,35,148,171,57,160,147,252,195,89,91,101,146,204,12,143,125,244,239,255,209,93,132,133,79,126,168,111,224,230,44,254,20,67,1,163,161,17,8,78,130,126,83,247,53,242,58,189,187,210,215,42,145,211,134,235,101,76,2,0,208,2,0,0,224,1,0,0,106,76,2,0,208,2,0,0,64,2,0,0,110,76,2,0,96,1,0,0,240,0,0,0,116,76,2,0,96,1,0,0,32,1,0,0,121,76,2,0,128,2,0,0,224,1,0,0,127,76,2,0,0,3,0,0,64,2,0,0,132,76,2,0,96,1,0,0,240,0,0,0,137,76,2,0,96,1,0,0,240,0,0,0,147,76,2,0,128,0,0,0,96,0,0,0,153,76,2,0,176,0,0,0,144,0,0,0,158,76,2,0,96,1,0,0,32,1,0,0,162,76,2,0,192,2,0,0,64,2,0,0,167,76,2,0,128,5,0,0,128,4,0,0,173,76,2,0,160,0,0,0,120,0,0,0,179,76,2,0,64,1,0,0,240,0,0,0,184,76,2,0,128,2,0,0,224,1,0,0,188,76,2,0,32,3,0,0,88,2,0,0,193,76,2,0,0,4,0,0,0,3,0,0,197,76,2,0,64,6,0,0,176,4,0,0,202,76,2,0,0,8,0,0,0,6,0,0,207,76,2,0,0,5,0,0,0,4,0,0,212,76,2,0,0,10,0,0,0,8,0,0,218,76,2,0,0,20,0,0,0,16,0,0,224,76,2,0,84,3,0,0,224,1,0,0,229,76,2,0,86,5,0,0,0,3,0,0,234,76,2,0,64,6,0,0,0,4,0,0,240,76,2,0,128,7,0,0,176,4,0,0,246,76,2,0,0,10,0,0,64,6,0,0,252,76,2,0,128,12,0,0,0,8,0,0,3,77,2,0,0,15,0,0,96,9,0,0,10,77,2,0,0,25,0,0,0,16,0,0,17,77,2,0,0,30,0,0,192,18,0,0,24,77,2,0,64,1,0,0,200,0,0,0,28,77,2,0,128,2,0,0,94,1,0,0,32,77,2,0,84,3,0,0,224,1,0,0,38,77,2,0,0,5,0,0,208,2,0,0,44,77,2,0,128,7,0,0,56,4,0,0,51,77,2,0,0,8,0,0,56,4,0,0,54,77,2,0,0,8,0,0,56,4,0,0,60,77,2,0,206,7,0,0,56,4,0,0,67,77,2,0,0,8,0,0,90,3,0,0,75,77,2,0,0,16,0,0,112,8,0,0,78,77,2,0,0,16,0,0,112,8,0,0,84,77,2,0,156,15,0,0,112,8,0,0,91,77,2,0,0,16,0,0,180,6,0,0,99,77,2,0,128,2,0,0,104,1,0,0,103,77,2,0,240,0,0,0,160,0,0,0,109,77,2,0,144,1,0,0,240,0,0,0,115,77,2,0,176,1,0,0,240,0,0,0,122,77,2,0,224,1,0,0,64,1,0,0,127,77,2,0,192,3,0,0,28,2,0,0,131,77,2,0,0,15,0,0,112,8,0,0,139,77,2,0,0,30,0,0,224,16,0,0,101,76,2,0,48,117,0,0,233,3,0,0,106,76,2,0,25,0,0,0,1,0,0,0,110,76,2,0,48,117,0,0,233,3,0,0,116,76,2,0,25,0,0,0,1,0,0,0,121,76,2,0,48,117,0,0,233,3,0,0,127,76,2,0,25,0,0,0,1,0,0,0,132,76,2,0,24,0,0,0,1,0,0,0,137,76,2,0,192,93,0,0,233,3,0,0,90,79,2,0,240,248,255,0,100,79,2,0,250,235,215,0,113,79,2,0,0,255,255,0,118,79,2,0,127,255,212,0,129,79,2,0,240,255,255,0,135,79,2,0,245,245,220,0,141,79,2,0,255,228,196,0,148,79,2,0,0,0,0,0,154,79,2,0,255,235,205,0,169,79,2,0,0,0,255,0,174,79,2,0,138,43,226,0,185,79,2,0,165,42,42,0,191,79,2,0,222,184,135,0,201,79,2,0,95,158,160,0,211,79,2,0,127,255,0,0,222,79,2,0,210,105,30,0,232,79,2,0,255,127,80,0,238,79,2,0,100,149,237,0,253,79,2,0,255,248,220,0,6,80,2,0,220,20,60,0,14,80,2,0,0,255,255,0,19,80,2,0,0,0,139,0,28,80,2,0,0,139,139,0,37,80,2,0,184,134,11,0,51,80,2,0,169,169,169,0,60,80,2,0,0,100,0,0,70,80,2,0,189,183,107,0,80,80,2,0,139,0,139,0,92,80,2,0,85,107,47,0,107,80,2,0,255,140,0,0,118,80,2,0,153,50,204,0,129,80,2,0,139,0,0,0,137,80,2,0,233,150,122,0,148,80,2,0,143,188,143,0,161,80,2,0,72,61,139,0,175,80,2,0,47,79,79,0,189,80,2,0,0,206,209,0,203,80,2,0,148,0,211,0,214,80,2,0,255,20,147,0,223,80,2,0,0,191,255,0,235,80,2,0,105,105,105,0,243,80,2,0,30,144,255,0,254,80,2,0,178,34,34,0,8,81,2,0,255,250,240,0,20,81,2,0,34,139,34,0,32,81,2,0,255,0,255,0,40,81,2,0,220,220,220,0,50,81,2,0,248,248,255,0,61,81,2,0,255,215,0,0,66,81,2,0,218,165,32,0,76,81,2,0,128,128,128,0,81,81,2,0,0,128,0,0,87,81,2,0,173,255,47,0,99,81,2,0,240,255,240,0,108,81,2,0,255,105,180,0,116,81,2,0,205,92,92,0,126,81,2,0,75,0,130,0,133,81,2,0,255,255,240,0,139,81,2,0,240,230,140,0,145,81,2,0,230,230,250,0,154,81,2,0,255,240,245,0,168,81,2,0,124,252,0,0,178,81,2,0,255,250,205,0,191,81,2,0,173,216,230,0,201,81,2,0,240,128,128,0,212,81,2,0,224,255,255,0,222,81,2,0,250,250,210,0,243,81,2,0,144,238,144,0,254,81,2,0,211,211,211,0,8,82,2,0,255,182,193,0,18,82,2,0,255,160,122,0,30,82,2,0,32,178,170,0,44,82,2,0,135,206,250,0,57,82,2,0,119,136,153,0,72,82,2,0,176,196,222,0,87,82,2,0,255,255,224,0,99,82,2,0,0,255,0,0,104,82,2,0,50,205,50,0,114,82,2,0,250,240,230,0,120,82,2,0,255,0,255,0,128,82,2,0,128,0,0,0,135,82,2,0,102,205,170,0,152,82,2,0,0,0,205,0,163,82,2,0,186,85,211,0,176,82,2,0,147,112,216,0,189,82,2,0,60,179,113,0,204,82,2,0,123,104,238,0,220,82,2,0,0,250,154,0,238,82,2,0,72,209,204,0,254,82,2,0,199,21,133,0,14,83,2,0,25,25,112,0,27,83,2,0,245,255,250,0,37,83,2,0,255,228,225,0,47,83,2,0,255,228,181,0,56,83,2,0,255,222,173,0,68,83,2,0,0,0,128,0,73,83,2,0,253,245,230,0,81,83,2,0,128,128,0,0,87,83,2,0,107,142,35,0,97,83,2,0,255,165,0,0,104,83,2,0,255,69,0,0,114,83,2,0,218,112,214,0,121,83,2,0,238,232,170,0,135,83,2,0,152,251,152,0,145,83,2,0,175,238,238,0,159,83,2,0,216,112,147,0,173,83,2,0,255,239,213,0,184,83,2,0,255,218,185,0,194,83,2,0,205,133,63,0,199,83,2,0,255,192,203,0,204,83,2,0,221,160,221,0,209,83,2,0,176,224,230,0,220,83,2,0,128,0,128,0,227,83,2,0,255,0,0,0,231,83,2,0,188,143,143,0,241,83,2,0,65,105,225,0,251,83,2,0,139,69,19,0,7,84,2,0,250,128,114,0,14,84,2,0,244,164,96,0,25,84,2,0,46,139,87,0,34,84,2,0,255,245,238,0,43,84,2,0,160,82,45,0,50,84,2,0,192,192,192,0,57,84,2,0,135,206,235,0,65,84,2,0,106,90,205,0,75,84,2,0,112,128,144,0,85,84,2,0,255,250,250,0,90,84,2,0,0,255,127,0,102,84,2,0,70,130,180,0,112,84,2,0,210,180,140,0,116,84,2,0,0,128,128,0,121,84,2,0,216,191,216,0,129,84,2,0,255,99,71,0,136,84,2,0,64,224,208,0,146,84,2,0,238,130,238,0,153,84,2,0,245,222,179,0,159,84,2,0,255,255,255,0,165,84,2,0,245,245,245,0,176,84,2,0,255,255,0,0,183,84,2,0,154,205,50,0,216,104,1,0,5,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,22,159,3,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,30,159,3,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,105,1,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,1,128,1,0,2,0,3,0,241,1,0,8,16,1,0,8,64,1,0,8,80,1,0,16,48,2,0,32,48,2,0,16,192,2,0,32,192,2,0,16,144,2,0,32,144,2,0,16,96,2,0,32,96,2,0,16,176,2,0,32,176,2,0,16,224,2,0,32,224,2,0,16,112,2,0,32,112,2,0,16,208,2,0,32,208,2,0,16,240,2,0,32,240,2,0,64,240,4,0,8,16,1,0,16,48,2,0,32,48,2,0,64,48,4,0,64,50,4,0,1,0,255,255,2,0,2,0,2,0,1,0,2,0,0,0,2,0,3,0,2,0,2,16,2,0,1,16,2,0,0,16,2,0,3,16,2,0,2,32,2,0,1,32,2,0,0,32,2,0,3,32,2,0,2,15,2,0,1,15,2,0,0,15,2,0,3,15,2,0,2,31,2,0,1,31,2,0,0,31,2,0,3,31,2,0,2,47,2,0,1,47,2,0,0,47,2,0,3,47,4,0,255,255,0,1,1,0,8,16,1,0,8,64,1,0,8,80,1,0,16,48,2,0,32,48,2,0,16,192,2,0,32,192,2,0,16,240,2,0,32,240,2,0,64,48,4,0,64,192,4,0,64,240,4,0,8,16,1,0,16,16,2,0,32,16,2,0,64,16,4,0,3,0,3,0,3,0,3,0,4,0,4,0,4,0,4,0,108,105,98,97,118,99,111,100,101,99,47,97,118,112,97,99,107,101,116,46,99,0,115,105,122,101,60,61,48,120,55,102,102,102,102,102,102,102,32,45,32,53,32,38,38,32,112,32,45,32,112,107,116,45,62,100,97,116,97,32,62,61,32,115,105,122,101,0,108,105,98,97,118,99,111,100,101,99,47,98,105,116,115,116,114,101,97,109,46,99,0,110,98,95,99,111,100,101,115,32,43,32,49,32,60,61,32,40,115,105,122,101,111,102,40,108,111,99,97,108,98,117,102,41,32,47,32,115,105,122,101,111,102,40,40,108,111,99,97,108,98,117,102,41,91,48,93,41,41,0,115,121,109,98,111,108,115,95,115,105,122,101,32,60,61,32,50,32,124,124,32,33,115,121,109,98,111,108,115,0,84,111,111,32,108,111,110,103,32,86,76,67,32,40,37,100,41,32,105,110,32,105,110,105,116,95,118,108,99,10,0,73,110,118,97,108,105,100,32,99,111,100,101,32,105,110,32,105,110,105,116,95,118,108,99,10,0,105,110,99,111,114,114,101,99,116,32,99,111,100,101,115,10,0,110,101,101,100,101,100,32,37,100,32,104,97,100,32,37,100,10,0,9,8,7,7,6,6,6,6,5,5,5,5,5,5,5,5,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,128,123,123,116,116,111,111,105,105,100,100,95,95,90,90,85,85,81,81,77,77,73,73,69,69,66,66,62,62,59,59,56,56,53,53,51,51,48,48,46,46,43,43,41,41,39,39,37,37,35,35,33,33,32,32,30,30,29,29,27,27,26,26,24,24,23,23,22,22,21,21,20,20,19,19,18,18,17,17,16,16,15,15,14,14,14,14,13,13,12,12,12,12,11,11,11,11,10,10,10,10,9,9,9,9,8,8,8,8,7,7,7,7,7,7,6,6,6,6,6,6,2,2,176,176,167,167,158,158,150,150,142,142,135,135,128,128,122,122,116,116,110,110,104,104,99,99,94,94,89,89,85,85,80,80,76,76,72,72,69,69,65,65,62,62,59,59,56,56,53,53,50,50,48,48,45,45,43,43,41,41,39,39,37,37,35,35,33,33,31,31,30,30,28,28,27,27,26,26,24,24,23,23,22,22,21,21,20,20,19,19,18,18,17,17,16,16,15,15,14,14,14,14,13,13,12,12,12,12,11,11,11,11,10,10,9,9,9,9,9,9,8,8,8,8,7,7,7,7,2,2,208,208,197,197,187,187,178,178,169,169,160,160,152,152,144,144,137,137,130,130,123,123,117,117,111,111,105,105,100,100,95,95,90,90,86,86,81,81,77,77,73,73,69,69,66,66,63,63,59,59,56,56,54,54,51,51,48,48,46,46,43,43,41,41,39,39,37,37,35,35,33,33,32,32,30,30,29,29,27,27,26,26,25,25,23,23,22,22,21,21,20,20,19,19,18,18,17,17,16,16,15,15,15,15,14,14,13,13,12,12,12,12,11,11,11,11,10,10,10,10,9,9,9,9,8,8,2,2,240,240,227,227,216,216,205,205,195,195,185,185,175,175,166,166,158,158,150,150,142,142,135,135,128,128,122,122,116,116,110,110,104,104,99,99,94,94,89,89,85,85,80,80,76,76,72,72,69,69,65,65,62,62,59,59,56,56,53,53,50,50,48,48,45,45,43,43,41,41,39,39,37,37,35,35,33,33,31,31,30,30,28,28,27,27,25,25,24,24,23,23,22,22,21,21,20,20,19,19,18,18,17,17,16,16,15,15,14,14,14,14,13,13,12,12,12,12,11,11,11,11,10,10,9,9,2,2,127,126,77,76,77,76,75,74,75,74,75,74,73,72,73,72,73,72,71,70,71,70,71,70,69,68,69,68,67,66,67,66,67,66,65,64,65,64,63,62,61,60,61,60,61,60,59,58,59,58,57,56,55,54,55,54,53,52,53,52,51,50,49,48,49,48,47,46,45,44,45,44,43,42,43,42,39,38,39,38,37,36,37,36,33,32,33,32,31,30,31,30,27,26,27,26,25,24,23,22,23,22,19,18,19,18,17,16,15,14,13,12,11,10,9,8,9,8,5,4,5,4,3,2,1,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,124,125,126,127,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,109,112,101,103,49,118,105,100,101,111,0,109,112,101,103,50,118,105,100,101,111,0,109,112,101,103,118,105,100,101,111,95,120,118,109,99,0,104,50,54,49,0,104,50,54,51,0,114,118,49,48,0,114,118,50,48,0,109,106,112,101,103,0,105,109,97,103,101,47,106,112,101,103,0,109,106,112,101,103,98,0,109,112,101,103,52,0,114,97,119,118,105,100,101,111,0,109,115,109,112,101,103,52,118,49,0,109,115,109,112,101,103,52,118,50,0,109,115,109,112,101,103,52,118,51,0,119,109,118,49,0,119,109,118,50,0,104,50,54,51,112,0,104,50,54,51,105,0,102,108,118,49,0,115,118,113,49,0,115,118,113,51,0,100,118,118,105,100,101,111,0,104,117,102,102,121,117,118,0,99,121,117,118,0,105,110,100,101,111,51,0,118,112,51,0,116,104,101,111,114,97,0,97,115,118,49,0,97,115,118,50,0,102,102,118,49,0,52,120,109,0,118,99,114,49,0,99,108,106,114,0,109,100,101,99,0,114,111,113,0,105,110,116,101,114,112,108,97,121,118,105,100,101,111,0,120,97,110,95,119,99,51,0,120,97,110,95,119,99,52,0,114,112,122,97,0,99,105,110,101,112,97,107,0,119,115,95,118,113,97,0,109,115,114,108,101,0,109,115,118,105,100,101,111,49,0,105,100,99,105,110,0,56,98,112,115,0,115,109,99,0,102,108,105,99,0,116,114,117,101,109,111,116,105,111,110,49,0,118,109,100,118,105,100,101,111,0,109,115,122,104,0,122,108,105,98,0,113,116,114,108,101,0,115,110,111,119,0,116,115,99,99,0,117,108,116,105,0,113,100,114,97,119,0,118,105,120,108,0,113,112,101,103,0,102,102,118,104,117,102,102,0,114,118,51,48,0,114,118,52,48,0,118,99,49,0,119,109,118,51,0,108,111,99,111,0,119,110,118,49,0,97,97,115,99,0,105,110,100,101,111,50,0,102,114,97,112,115,0,116,114,117,101,109,111,116,105,111,110,50,0,98,109,112,0,105,109,97,103,101,47,120,45,109,115,45,98,109,112,0,99,115,99,100,0,109,109,118,105,100,101,111,0,122,109,98,118,0,97,118,115,0,115,109,97,99,107,118,105,100,101,111,0,110,117,118,0,107,109,118,99,0,102,108,97,115,104,115,118,0,99,97,118,115,0,106,112,101,103,50,48,48,48,0,105,109,97,103,101,47,106,112,50,0,118,109,110,99,0,118,112,53,0,118,112,54,0,118,112,54,102,0,100,115,105,99,105,110,118,105,100,101,111,0,116,105,101,114,116,101,120,115,101,113,118,105,100,101,111,0,100,120,97,0,100,110,120,104,100,0,116,104,112,0,99,57,51,0,98,101,116,104,115,111,102,116,118,105,100,0,118,112,54,97,0,118,98,0,105,110,100,101,111,52,0,105,110,100,101,111,53,0,109,105,109,105,99,0,114,108,50,0,101,115,99,97,112,101,49,50,52,0,100,97,97,108,97,0,100,105,114,97,99,0,98,102,105,0,99,109,118,0,109,111,116,105,111,110,112,105,120,101,108,115,0,116,103,118,0,116,103,113,0,116,113,105,0,97,117,114,97,0,97,117,114,97,50,0,118,50,49,48,120,0,116,109,118,0,118,50,49,48,0,109,97,100,0,102,114,119,117,0,102,108,97,115,104,115,118,50,0,99,100,103,114,97,112,104,105,99,115,0,114,50,49,48,0,97,110,109,0,98,105,110,107,118,105,100,101,111,0,105,102,102,95,105,108,98,109,0,107,103,118,49,0,121,111,112,0,118,112,56,0,118,112,57,0,112,105,99,116,111,114,0,97,54,52,95,109,117,108,116,105,0,97,54,52,95,109,117,108,116,105,53,0,114,49,48,107,0,109,118,99,49,0,109,118,99,50,0,109,120,112,101,103,0,108,97,103,97,114,105,116,104,0,112,114,111,114,101,115,0,106,118,0,100,102,97,0,117,116,118,105,100,101,111,0,98,109,118,95,118,105,100,101,111,0,118,98,108,101,0,100,120,116,111,114,121,0,118,52,49,48,0,99,100,120,108,0,122,101,114,111,99,111,100,101,99,0,109,115,115,49,0,109,115,97,49,0,116,115,99,99,50,0,109,116,115,50,0,99,108,108,99,0,109,115,115,50,0,121,52,49,112,0,101,115,99,97,112,101,49,51,48,0,97,118,114,112,0,48,49,50,118,0,97,118,117,105,0,97,121,117,118,0,116,97,114,103,97,95,121,50,49,54,0,118,51,48,56,0,118,52,48,56,0,121,117,118,52,0,97,118,114,110,0,99,112,105,97,0,120,102,97,99,101,0,115,109,118,106,112,101,103,0,103,50,109,0,104,110,109,52,118,105,100,101,111,0,102,105,99,0,112,97,102,95,118,105,100,101,111,0,118,112,55,0,115,97,110,109,0,115,103,105,114,108,101,0,104,113,120,0,104,113,95,104,113,97,0,104,97,112,0,100,120,118,0,115,99,114,101,101,110,112,114,101,115,115,111,0,119,114,97,112,112,101,100,95,97,118,102,114,97,109,101,0,114,115,99,99,0,97,108,105,97,115,95,112,105,120,0,97,110,115,105,0,98,114,101,110,100,101,114,95,112,105,120,0,100,100,115,0,100,112,120,0,101,120,114,0,103,105,102,0,105,109,97,103,101,47,103,105,102,0,106,112,101,103,108,115,0,108,106,112,101,103,0,112,97,109,0,105,109,97,103,101,47,120,45,112,111,114,116,97,98,108,101,45,112,105,120,109,97,112,0,112,98,109,0,112,99,120,0,105,109,97,103,101,47,120,45,112,99,120,0,112,103,109,0,112,103,109,121,117,118,0,112,110,103,0,105,109,97,103,101,47,112,110,103,0,112,112,109,0,112,116,120,0,115,103,105,0,115,112,53,120,0,115,117,110,114,97,115,116,0,116,97,114,103,97,0,105,109,97,103,101,47,120,45,116,97,114,103,97,0,105,109,97,103,101,47,120,45,116,103,97,0,116,100,115,99,0,116,105,102,102,0,105,109,97,103,101,47,116,105,102,102,0,116,120,100,0,118,99,49,105,109,97,103,101,0,119,101,98,112,0,105,109,97,103,101,47,119,101,98,112,0,119,109,118,51,105,109,97,103,101,0,120,98,109,0,120,119,100,0,105,109,97,103,101,47,120,45,120,119,105,110,100,111,119,100,117,109,112,0,97,112,110,103,0,99,102,104,100,0,112,99,109,95,115,49,54,108,101,0,112,99,109,95,115,49,54,98,101,0,112,99,109,95,117,49,54,108,101,0,112,99,109,95,117,49,54,98,101,0,112,99,109,95,115,56,0,112,99,109,95,117,56,0,112,99,109,95,109,117,108,97,119,0,112,99,109,95,97,108,97,119,0,112,99,109,95,115,51,50,108,101,0,112,99,109,95,115,51,50,98,101,0,112,99,109,95,117,51,50,108,101,0,112,99,109,95,117,51,50,98,101,0,112,99,109,95,115,50,52,108,101,0,112,99,109,95,115,50,52,98,101,0,112,99,109,95,117,50,52,108,101,0,112,99,109,95,117,50,52,98,101,0,112,99,109,95,115,50,52,100,97,117,100,0,112,99,109,95,122,111,114,107,0,112,99,109,95,115,49,54,98,101,95,112,108,97,110,97,114,0,112,99,109,95,115,49,54,108,101,95,112,108,97,110,97,114,0,112,99,109,95,115,50,52,108,101,95,112,108,97,110,97,114,0,112,99,109,95,115,51,50,108,101,95,112,108,97,110,97,114,0,112,99,109,95,100,118,100,0,112,99,109,95,102,51,50,98,101,0,112,99,109,95,102,51,50,108,101,0,112,99,109,95,102,54,52,98,101,0,112,99,109,95,102,54,52,108,101,0,112,99,109,95,98,108,117,114,97,121,0,112,99,109,95,108,120,102,0,115,51,48,50,109,0,112,99,109,95,115,56,95,112,108,97,110,97,114,0,97,100,112,99,109,95,105,109,97,95,113,116,0,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+86416),allocate([100,112,99,109,95,105,109,97,95,119,97,118,0,97,100,112,99,109,95,105,109,97,95,100,107,51,0,97,100,112,99,109,95,105,109,97,95,100,107,52,0,97,100,112,99,109,95,105,109,97,95,119,115,0,97,100,112,99,109,95,105,109,97,95,115,109,106,112,101,103,0,97,100,112,99,109,95,109,115,0,97,100,112,99,109,95,52,120,109,0,97,100,112,99,109,95,120,97,0,97,100,112,99,109,95,97,100,120,0,97,100,112,99,109,95,101,97,0,97,100,112,99,109,95,103,55,50,54,0,97,100,112,99,109,95,99,116,0,97,100,112,99,109,95,115,119,102,0,97,100,112,99,109,95,121,97,109,97,104,97,0,97,100,112,99,109,95,115,98,112,114,111,95,52,0,97,100,112,99,109,95,115,98,112,114,111,95,51,0,97,100,112,99,109,95,115,98,112,114,111,95,50,0,97,100,112,99,109,95,116,104,112,0,97,100,112,99,109,95,116,104,112,95,108,101,0,97,100,112,99,109,95,105,109,97,95,97,109,118,0,97,100,112,99,109,95,101,97,95,114,49,0,97,100,112,99,109,95,101,97,95,114,51,0,97,100,112,99,109,95,101,97,95,114,50,0,97,100,112,99,109,95,105,109,97,95,101,97,95,115,101,97,100,0,97,100,112,99,109,95,105,109,97,95,101,97,95,101,97,99,115,0,97,100,112,99,109,95,101,97,95,120,97,115,0,97,100,112,99,109,95,101,97,95,109,97,120,105,115,95,120,97,0,97,100,112,99,109,95,105,109,97,95,105,115,115,0,97,100,112,99,109,95,103,55,50,50,0,97,100,112,99,109,95,105,109,97,95,97,112,99,0,97,100,112,99,109,95,97,102,99,0,97,100,112,99,109,95,105,109,97,95,111,107,105,0,97,100,112,99,109,95,100,116,107,0,97,100,112,99,109,95,105,109,97,95,114,97,100,0,97,100,112,99,109,95,103,55,50,54,108,101,0,97,100,112,99,109,95,118,105,109,97,0,97,100,112,99,109,95,112,115,120,0,97,100,112,99,109,95,97,105,99,97,0,97,109,114,95,110,98,0,97,109,114,95,119,98,0,114,97,95,49,52,52,0,114,97,95,50,56,56,0,114,111,113,95,100,112,99,109,0,105,110,116,101,114,112,108,97,121,95,100,112,99,109,0,120,97,110,95,100,112,99,109,0,115,111,108,95,100,112,99,109,0,115,100,120,50,95,100,112,99,109,0,109,112,50,0,109,112,51,0,97,97,99,0,97,99,51,0,118,111,114,98,105,115,0,100,118,97,117,100,105,111,0,119,109,97,118,49,0,119,109,97,118,50,0,109,97,99,101,51,0,109,97,99,101,54,0,118,109,100,97,117,100,105,111,0,102,108,97,99,0,109,112,51,97,100,117,0,109,112,51,111,110,52,0,115,104,111,114,116,101,110,0,97,108,97,99,0,119,101,115,116,119,111,111,100,95,115,110,100,49,0,103,115,109,0,113,100,109,50,0,99,111,111,107,0,116,114,117,101,115,112,101,101,99,104,0,116,116,97,0,115,109,97,99,107,97,117,100,105,111,0,113,99,101,108,112,0,119,97,118,112,97,99,107,0,100,115,105,99,105,110,97,117,100,105,111,0,105,109,99,0,109,117,115,101,112,97,99,107,55,0,109,108,112,0,103,115,109,95,109,115,0,97,116,114,97,99,51,0,118,111,120,119,97,114,101,0,97,112,101,0,110,101,108,108,121,109,111,115,101,114,0,109,117,115,101,112,97,99,107,56,0,115,112,101,101,120,0,119,109,97,118,111,105,99,101,0,119,109,97,112,114,111,0,119,109,97,108,111,115,115,108,101,115,115,0,97,116,114,97,99,51,112,0,101,97,99,51,0,115,105,112,114,0,109,112,49,0,116,119,105,110,118,113,0,116,114,117,101,104,100,0,109,112,52,97,108,115,0,97,116,114,97,99,49,0,98,105,110,107,97,117,100,105,111,95,114,100,102,116,0,98,105,110,107,97,117,100,105,111,95,100,99,116,0,97,97,99,95,108,97,116,109,0,113,100,109,99,0,99,101,108,116,0,103,55,50,51,95,49,0,100,115,115,95,115,112,0,103,55,50,57,0,56,115,118,120,95,101,120,112,0,56,115,118,120,95,102,105,98,0,98,109,118,95,97,117,100,105,111,0,114,97,108,102,0,105,97,99,0,105,108,98,99,0,119,97,118,101,115,121,110,116,104,0,115,111,110,105,99,0,115,111,110,105,99,108,115,0,111,112,117,115,0,99,111,109,102,111,114,116,110,111,105,115,101,0,116,97,107,0,109,101,116,97,115,111,117,110,100,0,112,97,102,95,97,117,100,105,111,0,97,118,99,0,101,118,114,99,0,115,109,118,0,52,103,118,0,100,115,100,95,108,115,98,102,0,100,115,100,95,109,115,98,102,0,100,115,100,95,108,115,98,102,95,112,108,97,110,97,114,0,100,115,100,95,109,115,98,102,95,112,108,97,110,97,114,0,105,110,116,101,114,112,108,97,121,97,99,109,0,120,109,97,49,0,120,109,97,50,0,100,118,100,95,115,117,98,116,105,116,108,101,0,100,118,98,95,115,117,98,116,105,116,108,101,0,116,101,120,116,0,120,115,117,98,0,97,115,115,0,115,115,97,0,109,111,118,95,116,101,120,116,0,104,100,109,118,95,112,103,115,95,115,117,98,116,105,116,108,101,0,100,118,98,95,116,101,108,101,116,101,120,116,0,115,114,116,0,115,117,98,114,105,112,0,109,105,99,114,111,100,118,100,0,109,112,108,50,0,101,105,97,95,54,48,56,0,106,97,99,111,115,117,98,0,112,106,115,0,115,97,109,105,0,114,101,97,108,116,101,120,116,0,115,116,108,0,115,117,98,118,105,101,119,101,114,49,0,115,117,98,118,105,101,119,101,114,0,118,112,108,97,121,101,114,0,119,101,98,118,116,116,0,104,100,109,118,95,116,101,120,116,95,115,117,98,116,105,116,108,101,0,116,116,102,0,97,112,112,108,105,99,97,116,105,111,110,47,120,45,116,114,117,101,116,121,112,101,45,102,111,110,116,0,97,112,112,108,105,99,97,116,105,111,110,47,120,45,102,111,110,116,0,98,105,110,116,101,120,116,0,120,98,105,110,0,105,100,102,0,111,116,102,0,97,112,112,108,105,99,97,116,105,111,110,47,118,110,100,46,109,115,45,111,112,101,110,116,121,112,101,0,107,108,118,0,100,118,100,95,110,97,118,95,112,97,99,107,101,116,0,116,105,109,101,100,95,105,100,51,0,98,105,110,95,100,97,116,97,0,97,112,112,108,105,99,97,116,105,111,110,47,111,99,116,101,116,45,115,116,114,101,97,109,0,105,110,116,101,114,110,97,108,32,101,114,114,111,114,44,32,115,108,105,99,101,32,101,110,100,32,98,101,102,111,114,101,32,115,116,97,114,116,10,0,105,103,110,111,114,105,110,103,32,108,97,115,116,32,109,105,115,115,105,110,103,32,115,108,105,99,101,10,0,67,97,110,110,111,116,32,117,115,101,32,112,114,101,118,105,111,117,115,32,112,105,99,116,117,114,101,32,105,110,32,101,114,114,111,114,32,99,111,110,99,101,97,108,109,101,110,116,10,0,67,97,110,110,111,116,32,117,115,101,32,110,101,120,116,32,112,105,99,116,117,114,101,32,105,110,32,101,114,114,111,114,32,99,111,110,99,101,97,108,109,101,110,116,10,0,87,97,114,110,105,110,103,32,77,86,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,10,0,37,50,88,32,0,99,111,110,99,101,97,108,105,110,103,32,37,100,32,68,67,44,32,37,100,32,65,67,44,32,37,100,32,77,86,32,101,114,114,111,114,115,32,105,110,32,37,99,32,102,114,97,109,101,10,0,115,45,62,97,118,99,116,120,45,62,99,111,100,101,99,95,105,100,32,33,61,32,65,86,95,67,79,68,69,67,95,73,68,95,72,50,54,52,0,108,105,98,97,118,99,111,100,101,99,47,101,114,114,111,114,95,114,101,115,105,108,105,101,110,99,101,46,99,0,115,45,62,113,117,97,114,116,101,114,95,115,97,109,112,108,101,0,103,117,101,115,115,95,100,99,40,41,32,105,115,32,111,117,116,32,111,102,32,109,101,109,111,114,121,10,0,19,17,15,15,13,13,13,13,11,11,11,11,11,11,11,11,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,32,32,32,32,32,32,32,32,31,32,32,32,32,32,32,32,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,14,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,8,248,9,247,10,246,11,245,12,244,13,243,14,242,15,241,4,4,4,4,252,252,252,252,5,5,5,5,251,251,251,251,6,6,6,6,250,250,250,250,7,7,7,7,249,249,249,249,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,50,54,52,0,72,50,54,52,32,68,101,99,111,100,101,114,0,105,115,95,97,118,99,0,105,115,32,97,118,99,0,110,97,108,95,108,101,110,103,116,104,95,115,105,122,101,0,101,110,97,98,108,101,95,101,114,0,69,110,97,98,108,101,32,101,114,114,111,114,32,114,101,115,105,108,105,101,110,99,101,32,111,110,32,100,97,109,97,103,101,100,32,102,114,97,109,101,115,32,40,117,110,115,97,102,101,41,0,97,118,99,67,32,37,100,32,116,111,111,32,115,104,111,114,116,10,0,65,86,67,58,32,110,97,108,32,115,105,122,101,32,37,100,10,0,78,65,76,32,37,100,47,37,100,32,97,116,32,37,100,47,37,100,32,108,101,110,103,116,104,32,37,100,10,0,65,86,67,58,32,67,111,110,115,117,109,101,100,32,111,110,108,121,32,37,100,32,98,121,116,101,115,32,105,110,115,116,101,97,100,32,111,102,32,37,100,10,0,73,103,110,111,114,105,110,103,32,78,65,76,32,37,100,32,105,110,32,103,108,111,98,97,108,32,104,101,97,100,101,114,47,101,120,116,114,97,100,97,116,97,10,0,73,110,118,97,108,105,100,32,105,110,116,101,114,32,73,68,82,32,102,114,97,109,101,10,0,105,110,118,97,108,105,100,32,109,105,120,101,100,32,73,68,82,32,47,32,110,111,110,32,73,68,82,32,102,114,97,109,101,115,32,99,97,110,110,111,116,32,98,101,32,100,101,99,111,100,101,100,32,105,110,32,115,108,105,99,101,32,109,117,108,116,105,116,104,114,101,97,100,105,110,103,32,109,111,100,101,10,0,73,110,118,97,108,105,100,32,80,79,67,32,37,100,60,37,100,10,0,73,110,99,114,101,97,115,105,110,103,32,114,101,111,114,100,101,114,32,98,117,102,102,101,114,32,116,111,32,37,100,10,0,112,105,99,115,32,60,61,32,49,54,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,46,99,0,111,111,111,0,110,111,32,112,105,99,116,117,114,101,32,37,115,10,0,100,97,116,97,32,112,97,114,116,105,116,105,111,110,105,110,103,0,83,80,83,32,100,101,99,111,100,105,110,103,32,102,97,105,108,117,114,101,44,32,116,114,121,105,110,103,32,97,103,97,105,110,32,119,105,116,104,32,116,104,101,32,99,111,109,112,108,101,116,101,32,78,65,76,10,0,110,101,120,116,95,97,118,99,32,45,32,98,117,102,95,105,110,100,101,120,32,43,32,99,111,110,115,117,109,101,100,32,61,61,32,110,97,108,115,105,122,101,0,85,110,107,110,111,119,110,32,78,65,76,32,99,111,100,101,58,32,37,100,32,40,37,100,32,98,105,116,115,41,10,0,100,101,99,111,100,101,95,115,108,105,99,101,95,104,101,97,100,101,114,32,101,114,114,111,114,10,0,68,101,99,111,100,105,110,103,32,115,112,115,32,37,100,32,102,114,111,109,32,97,118,99,67,32,102,97,105,108,101,100,10,0,68,101,99,111,100,105,110,103,32,112,112,115,32,37,100,32,102,114,111,109,32,97,118,99,67,32,102,97,105,108,101,100,10,0,69,114,114,111,114,32,114,101,115,105,108,105,101,110,99,101,32,119,105,116,104,32,115,108,105,99,101,32,116,104,114,101,97,100,115,32,105,115,32,101,110,97,98,108,101,100,46,32,73,116,32,105,115,32,117,110,115,97,102,101,32,97,110,100,32,117,110,115,117,112,112,111,114,116,101,100,32,97,110,100,32,109,97,121,32,99,114,97,115,104,46,32,85,115,101,32,105,116,32,97,116,32,121,111,117,114,32,111,119,110,32,114,105,115,107,10,0,115,116,101,114,101,111,95,109,111,100,101,0,98,117,102,95,105,110,100,101,120,32,60,61,32,98,117,102,95,115,105,122,101,0,81,50,54,52,0,110,111,32,102,114,97,109,101,33,10,0,68,117,112,108,105,99,97,116,105,110,103,32,102,105,101,108,100,32,37,100,32,116,111,32,102,105,108,108,32,109,105,115,115,105,110,103,10,0,112,105,99,116,45,62,98,117,102,91,48,93,32,124,124,32,33,42,103,111,116,95,102,114,97,109,101,0,255,0,9,255,255,255,255,255,0,0,0,0,116,111,112,32,98,108,111,99,107,32,117,110,97,118,97,105,108,97,98,108,101,32,102,111,114,32,114,101,113,117,101,115,116,101,100,32,105,110,116,114,97,52,120,52,32,109,111,100,101,32,37,100,32,97,116,32,37,100,32,37,100,10,0,0,255,10,0,255,255,255,0,255,11,0,0,108,101,102,116,32,98,108,111,99,107,32,117,110,97,118,97,105,108,97,98,108,101,32,102,111,114,32,114,101,113,117,101,115,116,101,100,32,105,110,116,114,97,52,120,52,32,109,111,100,101,32,37,100,32,97,116,32,37,100,32,37,100,10,0,111,117,116,32,111,102,32,114,97,110,103,101,32,105,110,116,114,97,32,99,104,114,111,109,97,32,112,114,101,100,32,109,111,100,101,32,97,116,32,37,100,32,37,100,10,0,4,1,255,255,116,111,112,32,98,108,111,99,107,32,117,110,97,118,97,105,108,97,98,108,101,32,102,111,114,32,114,101,113,117,101,115,116,101,100,32,105,110,116,114,97,32,109,111,100,101,32,97,116,32,37,100,32,37,100,10,0,108,101,102,116,32,98,108,111,99,107,32,117,110,97,118,97,105,108,97,98,108,101,32,102,111,114,32,114,101,113,117,101,115,116,101,100,32,105,110,116,114,97,32,109,111,100,101,32,97,116,32,37,100,32,37,100,10,0,5,255,2,255,6,67,97,110,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,46,10,0,82,101,102,101,114,101,110,99,101,32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,102,111,114,32,101,114,114,111,114,32,99,111,110,99,101,97,108,105,110,103,10,0,82,101,102,101,114,101,110,99,101,32,105,110,118,97,108,105,100,10,0,108,117,109,97,95,108,111,103,50,95,119,101,105,103,104,116,95,100,101,110,111,109,32,37,100,32,105,115,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,99,104,114,111,109,97,95,108,111,103,50,95,119,101,105,103,104,116,95,100,101,110,111,109,32,37,100,32,105,115,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,114,101,102,101,114,101,110,99,101,32,111,118,101,114,102,108,111,119,32,37,117,32,62,32,37,117,32,111,114,32,37,117,32,62,32,37,117,10,0,20,241,2,54,3,74,20,241,2,54,3,74,228,127,233,104,250,53,255,54,7,51,23,33,23,2,21,0,1,9,0,49,219,118,5,57,243,78,245,65,1,62,12,49,252,73,17,50,18,64,9,43,29,0,26,67,16,90,9,104,210,127,236,104,1,67,243,78,245,65,1,62,250,86,239,95,250,61,9,45,253,69,250,81,245,96,6,55,7,67,251,86,2,88,0,58,253,76,246,94,5,54,4,69,253,81,0,88,249,67,251,74,252,74,251,80,249,72,1,58,0,41,0,63,0,63,0,63,247,83,4,86,0,97,249,72,13,41,3,62,0,45,252,78,253,96,229,126,228,98,231,101,233,67,228,82,236,94,240,83,234,110,235,91,238,102,243,93,227,127,249,92,251,89,249,96,243,108,253,46,255,65,255,57,247,93,253,74,247,92,248,87,233,126,5,54,6,60,6,59,6,69,255,48,0,68,252,69,248,88,254,85,250,78,255,75,249,77,2,54,5,50,253,68,1,50,6,42,252,81,1,63,252,70,0,67,2,57,254,76,11,35,4,64,1,61,11,35,18,25,12,24,13,29,13,36,246,93,249,73,254,73,13,46,9,49,249,100,9,53,2,53,5,53,254,61,0,56,0,56,243,63,251,60,255,62,4,57,250,69,4,57,14,39,4,51,13,68,3,64,1,61,9,63,7,50,16,39,5,44,4,52,11,48,251,60,255,59,0,59,22,33,5,44,14,43,255,78,0,60,9,69,11,28,2,40,3,44,0,49,0,46,2,44,2,51,0,47,4,39,2,62,6,46,0,54,3,54,2,58,4,63,6,51,6,57,7,53,6,52,6,55,11,45,14,36,8,53,255,82,7,55,253,78,15,46,22,31,255,84,25,7,30,249,28,3,28,4,32,0,34,255,30,6,30,6,32,9,31,19,26,27,26,30,37,20,28,34,17,70,1,67,5,59,9,67,16,30,18,32,18,35,22,29,24,31,23,38,18,43,20,41,11,63,9,59,9,64,255,94,254,89,247,108,250,76,254,44,0,45,0,52,253,64,254,59,252,70,252,75,248,82,239,102,247,77,3,24,0,42,0,48,0,55,250,59,249,71,244,83,245,87,226,119,1,58,253,29,255,36,1,38,2,43,250,55,0,58,0,64,253,74,246,90,0,70,252,29,5,31,7,42,1,59,254,58,253,72,253,81,245,97,0,58,8,5,10,14,14,18,13,27,2,40,0,58,253,70,250,79,248,85,0,0,243,106,240,106,246,87,235,114,238,110,242,98,234,110,235,106,238,103,235,107,233,108,230,112,246,96,244,95,251,91,247,93,234,94,251,86,9,67,252,80,246,85,255,70,7,60,9,58,5,61,12,50,15,50,18,49,17,54,10,41,7,46,255,51,7,49,8,52,9,41,6,47,2,55,13,41,10,44,6,50,5,53,13,49,4,63,6,64,254,69,254,59,6,70,10,44,9,31,12,43,3,53,14,34,10,38,253,52,13,40,17,32,7,44,7,38,13,50,10,57,26,43,14,11,11,14,9,11,18,11,21,9,23,254,32,241,32,241,34,235,39,233,42,223,41,225,46,228,38,244,21,29,45,232,53,211,48,230,65,213,43,237,39,246,30,9,18,26,20,27,0,57,242,82,251,75,237,97,221,125,27,0,28,0,31,252,27,6,34,8,30,10,24,22,33,19,22,32,26,31,21,41,26,44,23,47,16,65,14,71,8,60,6,63,17,65,21,24,23,20,26,23,27,32,28,23,28,24,23,40,24,32,28,29,23,42,19,57,22,53,22,61,11,86,12,40,11,51,14,59,252,79,249,71,251,69,247,70,248,66,246,68,237,73,244,69,240,70,241,67,236,62,237,70,240,66,234,65,236,63,9,254,26,247,33,247,39,249,41,254,45,3,49,9,45,27,36,59,250,66,249,35,249,42,248,45,251,48,244,56,250,60,251,62,248,66,248,76,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,21,243,33,242,39,249,46,254,51,2,60,6,61,17,55,34,42,62,249,92,251,89,249,96,243,108,253,46,255,65,255,57,247,93,253,74,247,92,248,87,233,126,249,92,251,89,249,96,243,108,253,46,255,65,255,57,247,93,253,74,247,92,248,87,233,126,254,85,250,78,255,75,249,77,2,54,5,50,253,68,1,50,6,42,252,81,1,63,252,70,0,67,2,57,254,76,11,35,4,64,1,61,11,35,18,25,12,24,13,29,13,36,246,93,249,73,254,73,13,46,9,49,249,100,9,53,2,53,5,53,254,61,0,56,0,56,243,63,251,60,255,62,4,57,250,69,4,57,14,39,4,51,13,68,254,85,250,78,255,75,249,77,2,54,5,50,253,68,1,50,6,42,252,81,1,63,252,70,0,67,2,57,254,76,11,35,4,64,1,61,11,35,18,25,12,24,13,29,13,36,246,93,249,73,254,73,13,46,9,49,249,100,9,53,2,53,5,53,254,61,0,56,0,56,243,63,251,60,255,62,4,57,250,69,4,57,14,39,4,51,13,68,11,28,2,40,3,44,0,49,0,46,2,44,2,51,0,47,4,39,2,62,6,46,0,54,3,54,2,58,4,63,6,51,6,57,7,53,6,52,6,55,11,45,14,36,8,53,255,82,7,55,253,78,15,46,22,31,255,84,25,7,30,249,28,3,28,4,32,0,34,255,30,6,30,6,32,9,31,19,26,27,26,30,37,20,28,34,17,70,11,28,2,40,3,44,0,49,0,46,2,44,2,51,0,47,4,39,2,62,6,46,0,54,3,54,2,58,4,63,6,51,6,57,7,53,6,52,6,55,11,45,14,36,8,53,255,82,7,55,253,78,15,46,22,31,255,84,25,7,30,249,28,3,28,4,32,0,34,255,30,6,30,6,32,9,31,19,26,27,26,30,37,20,28,34,17,70,252,79,249,71,251,69,247,70,248,66,246,68,237,73,244,69,240,70,241,67,236,62,237,70,240,66,234,65,236,63,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,9,254,26,247,33,247,39,249,41,254,45,3,49,9,45,27,36,59,21,243,33,242,39,249,46,254,51,2,60,6,61,17,55,34,42,62,250,66,249,35,249,42,248,45,251,48,244,56,250,60,251,62,248,66,248,76,252,79,249,71,251,69,247,70,248,66,246,68,237,73,244,69,240,70,241,67,236,62,237,70,240,66,234,65,236,63,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,9,254,26,247,33,247,39,249,41,254,45,3,49,9,45,27,36,59,21,243,33,242,39,249,46,254,51,2,60,6,61,17,55,34,42,62,250,66,249,35,249,42,248,45,251,48,244,56,250,60,251,62,248,66,248,76,243,106,240,106,246,87,235,114,238,110,242,98,234,110,235,106,238,103,235,107,233,108,230,112,246,96,244,95,251,91,247,93,234,94,251,86,9,67,252,80,246,85,255,70,7,60,9,58,5,61,12,50,15,50,18,49,17,54,10,41,7,46,255,51,7,49,8,52,9,41,6,47,2,55,13,41,10,44,6,50,5,53,13,49,4,63,6,64,243,106,240,106,246,87,235,114,238,110,242,98,234,110,235,106,238,103,235,107,233,108,230,112,246,96,244,95,251,91,247,93,234,94,251,86,9,67,252,80,246,85,255,70,7,60,9,58,5,61,12,50,15,50,18,49,17,54,10,41,7,46,255,51,7,49,8,52,9,41,6,47,2,55,13,41,10,44,6,50,5,53,13,49,4,63,6,64,14,11,11,14,9,11,18,11,21,9,23,254,32,241,32,241,34,235,39,233,42,223,41,225,46,228,38,244,21,29,45,232,53,211,48,230,65,213,43,237,39,246,30,9,18,26,20,27,0,57,242,82,251,75,237,97,221,125,27,0,28,0,31,252,27,6,34,8,30,10,24,22,33,19,22,32,26,31,21,41,26,44,23,47,16,65,14,71,14,11,11,14,9,11,18,11,21,9,23,254,32,241,32,241,34,235,39,233,42,223,41,225,46,228,38,244,21,29,45,232,53,211,48,230,65,213,43,237,39,246,30,9,18,26,20,27,0,57,242,82,251,75,237,97,221,125,27,0,28,0,31,252,27,6,34,8,30,10,24,22,33,19,22,32,26,31,21,41,26,44,23,47,16,65,14,71,250,76,254,44,0,45,0,52,253,64,254,59,252,70,252,75,248,82,239,102,247,77,3,24,0,42,0,48,0,55,250,59,249,71,244,83,245,87,226,119,1,58,253,29,255,36,1,38,2,43,250,55,0,58,0,64,253,74,246,90,250,76,254,44,0,45,0,52,253,64,254,59,252,70,252,75,248,82,239,102,247,77,3,24,0,42,0,48,0,55,250,59,249,71,244,83,245,87,226,119,1,58,253,29,255,36,1,38,2,43,250,55,0,58,0,64,253,74,246,90,253,74,247,92,248,87,233,126,253,74,247,92,248,87,233,126,253,74,247,92,248,87,233,126,20,241,2,54,3,74,20,241,2,54,3,74,228,127,233,104,250,53,255,54,7,51,22,25,34,0,16,0,254,9,4,41,227,118,2,65,250,71,243,79,5,52,9,50,253,70,10,54,26,34,19,22,40,0,57,2,41,36,26,69,211,127,241,101,252,76,250,71,243,79,5,52,6,69,243,90,0,52,8,43,254,69,251,82,246,96,2,59,2,75,253,87,253,100,1,56,253,74,250,85,0,59,253,81,249,86,251,95,255,66,255,77,1,70,254,86,251,72,0,61,0,41,0,63,0,63,0,63,247,83,4,86,0,97,249,72,13,41,3,62,13,15,7,51,2,80,217,127,238,91,239,96,230,81,221,98,232,102,233,97,229,119,232,99,235,110,238,102,220,127,0,80,251,89,249,94,252,92,0,39,0,65,241,84,221,127,254,73,244,104,247,91,225,127,3,55,7,56,7,55,8,61,253,53,0,68,249,74,247,88,243,103,243,91,247,89,242,92,248,76,244,87,233,110,232,105,246,78,236,112,239,99,178,127,186,127,206,127,210,127,252,66,251,78,252,71,248,72,2,59,255,55,249,70,250,75,248,89,222,119,253,75,32,20,30,22,212,127,0,54,251,61,0,58,255,60,253,61,248,67,231,84,242,74,251,65,5,52,2,57,0,61,247,69,245,70,18,55,252,71,0,58,7,61,9,41,18,25,9,32,5,43,9,47,0,44,0,51,2,46,19,38,252,66,15,38,12,42,9,34,0,89,4,45,10,28,10,31,33,245,52,213,18,15,28,0,35,234,38,231,34,0,39,238,32,244,102,162,0,0,56,241,33,252,29,10,37,251,51,227,39,247,52,222,69,198,67,193,44,251,32,7,55,227,32,1,0,0,27,36,33,231,34,226,36,228,38,228,38,229,34,238,35,240,34,242,32,248,37,250,35,0,30,10,28,18,26,25,29,41,0,75,2,72,8,77,14,35,18,31,17,35,21,30,17,45,20,42,18,45,27,26,16,54,7,66,16,56,11,73,10,67,246,116,233,112,241,71,249,61,0,53,251,66,245,77,247,80,247,84,246,87,222,127,235,101,253,39,251,53,249,61,245,75,241,77,239,91,231,107,231,111,228,122,245,76,246,44,246,52,246,57,247,58,240,72,249,69,252,69,251,74,247,86,2,66,247,34,1,32,11,31,5,52,254,55,254,67,0,73,248,89,3,52,7,4,10,8,17,8,16,19,3,37,255,61,251,73,255,70,252,78,0,0,235,126,233,124,236,110,230,126,231,124,239,105,229,121,229,117,239,102,230,117,229,116,223,122,246,95,242,100,248,95,239,111,228,114,250,89,254,80,252,82,247,85,248,81,255,72,5,64,1,67,9,56,0,69,1,69,7,69,249,69,250,67,240,77,254,64,2,61,250,67,253,64,2,57,253,65,253,66,0,62,9,51,255,66,254,71,254,75,255,70,247,72,14,60,16,37,0,47,18,35,11,37,12,41,10,41,2,48,12,41,13,41,0,59,3,50,19,40,3,66,18,50,19,250,18,250,14,0,26,244,31,240,33,231,33,234,37,228,39,226,42,226,47,214,45,220,49,222,41,239,32,9,69,185,63,193,66,192,77,182,54,217,52,221,41,246,36,0,40,255,30,14,28,26,23,37,12,55,11,65,37,223,39,220,40,219,38,226,46,223,42,226,40,232,49,227,38,244,40,246,38,253,46,251,31,20,29,30,25,44,12,48,11,49,26,45,22,22,23,22,27,21,33,20,26,28,30,24,27,34,18,42,25,39,18,50,12,70,21,54,14,71,11,83,25,32,21,49,21,54,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,251,71,0,24,255,36,254,42,254,52,247,57,250,63,252,65,252,67,249,82,253,81,253,76,249,72,250,78,244,72,242,68,253,70,250,76,251,66,251,62,0,57,252,61,247,60,1,54,2,58,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,0,80,251,89,249,94,252,92,0,39,0,65,241,84,221,127,254,73,244,104,247,91,225,127,0,80,251,89,249,94,252,92,0,39,0,65,241,84,221,127,254,73,244,104,247,91,225,127,243,103,243,91,247,89,242,92,248,76,244,87,233,110,232,105,246,78,236,112,239,99,178,127,186,127,206,127,210,127,252,66,251,78,252,71,248,72,2,59,255,55,249,70,250,75,248,89,222,119,253,75,32,20,30,22,212,127,0,54,251,61,0,58,255,60,253,61,248,67,231,84,242,74,251,65,5,52,2,57,0,61,247,69,245,70,18,55,243,103,243,91,247,89,242,92,248,76,244,87,233,110,232,105,246,78,236,112,239,99,178,127,186,127,206,127,210,127,252,66,251,78,252,71,248,72,2,59,255,55,249,70,250,75,248,89,222,119,253,75,32,20,30,22,212,127,0,54,251,61,0,58,255,60,253,61,248,67,231,84,242,74,251,65,5,52,2,57,0,61,247,69,245,70,18,55,4,45,10,28,10,31,33,245,52,213,18,15,28,0,35,234,38,231,34,0,39,238,32,244,102,162,0,0,56,241,33,252,29,10,37,251,51,227,39,247,52,222,69,198,67,193,44,251,32,7,55,227,32,1,0,0,27,36,33,231,34,226,36,228,38,228,38,229,34,238,35,240,34,242,32,248,37,250,35,0,30,10,28,18,26,25,29,41,4,45,10,28,10,31,33,245,52,213,18,15,28,0,35,234,38,231,34,0,39,238,32,244,102,162,0,0,56,241,33,252,29,10,37,251,51,227,39,247,52,222,69,198,67,193,44,251,32,7,55,227,32,1,0,0,27,36,33,231,34,226,36,228,38,228,38,229,34,238,35,240,34,242,32,248,37,250,35,0,30,10,28,18,26,25,29,41,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,253,81,253,76,249,72,250,78,244,72,242,68,253,70,250,76,251,66,251,62,0,57,252,61,247,60,1,54,2,58,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,251,71,0,24,255,36,254,42,254,52,247,57,250,63,252,65,252,67,249,82,251,85,250,81,246,77,249,81,239,80,238,73,252,74,246,83,247,71,247,67,255,61,248,66,242,66,0,59,2,59,253,81,253,76,249,72,250,78,244,72,242,68,253,70,250,76,251,66,251,62,0,57,252,61,247,60,1,54,2,58,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,17,246,32,243,42,247,49,251,53,0,64,3,68,10,66,27,47,57,251,71,0,24,255,36,254,42,254,52,247,57,250,63,252,65,252,67,249,82,235,126,233,124,236,110,230,126,231,124,239,105,229,121,229,117,239,102,230,117,229,116,223,122,246,95,242,100,248,95,239,111,228,114,250,89,254,80,252,82,247,85,248,81,255,72,5,64,1,67,9,56,0,69,1,69,7,69,249,69,250,67,240,77,254,64,2,61,250,67,253,64,2,57,253,65,253,66,0,62,9,51,255,66,254,71,254,75,235,126,233,124,236,110,230,126,231,124,239,105,229,121,229,117,239,102,230,117,229,116,223,122,246,95,242,100,248,95,239,111,228,114,250,89,254,80,252,82,247,85,248,81,255,72,5,64,1,67,9,56,0,69,1,69,7,69,249,69,250,67,240,77,254,64,2,61,250,67,253,64,2,57,253,65,253,66,0,62,9,51,255,66,254,71,254,75,19,250,18,250,14,0,26,244,31,240,33,231,33,234,37,228,39,226,42,226,47,214,45,220,49,222,41,239,32,9,69,185,63,193,66,192,77,182,54,217,52,221,41,246,36,0,40,255,30,14,28,26,23,37,12,55,11,65,37,223,39,220,40,219,38,226,46,223,42,226,40,232,49,227,38,244,40,246,38,253,46,251,31,20,29,30,25,44,19,250,18,250,14,0,26,244,31,240,33,231,33,234,37,228,39,226,42,226,47,214,45,220,49,222,41,239,32,9,69,185,63,193,66,192,77,182,54,217,52,221,41,246,36,0,40,255,30,14,28,26,23,37,12,55,11,65,37,223,39,220,40,219,38,226,46,223,42,226,40,232,49,227,38,244,40,246,38,253,46,251,31,20,29,30,25,44,233,112,241,71,249,61,0,53,251,66,245,77,247,80,247,84,246,87,222,127,235,101,253,39,251,53,249,61,245,75,241,77,239,91,231,107,231,111,228,122,245,76,246,44,246,52,246,57,247,58,240,72,249,69,252,69,251,74,247,86,233,112,241,71,249,61,0,53,251,66,245,77,247,80,247,84,246,87,222,127,235,101,253,39,251,53,249,61,245,75,241,77,239,91,231,107,231,111,228,122,245,76,246,44,246,52,246,57,247,58,240,72,249,69,252,69,251,74,247,86,254,73,244,104,247,91,225,127,254,73,244,104,247,91,225,127,254,73,244,104,247,91,225,127,20,241,2,54,3,74,20,241,2,54,3,74,228,127,233,104,250,53,255,54,7,51,29,16,25,0,14,0,246,51,253,62,229,99,26,16,252,85,232,102,5,57,6,57,239,73,14,57,20,40,20,10,29,0,54,0,37,42,12,97,224,127,234,117,254,74,252,85,232,102,5,57,250,93,242,88,250,44,4,55,245,89,241,103,235,116,19,57,20,58,4,84,6,96,1,63,251,85,243,106,5,63,6,75,253,90,255,101,3,55,252,79,254,75,244,97,249,50,1,60,0,41,0,63,0,63,0,63,247,83,4,86,0,97,249,72,13,41,3,62,7,34,247,88,236,127,220,127,239,91,242,95,231,84,231,86,244,89,239,91,225,127,242,76,238,103,243,90,219,127,11,80,5,76,2,84,5,78,250,55,4,61,242,83,219,127,251,79,245,104,245,91,226,127,0,65,254,79,0,72,252,92,250,56,3,68,248,71,243,98,252,86,244,88,251,82,253,72,252,67,248,72,240,89,247,69,255,59,5,66,4,57,252,71,254,71,2,58,255,74,252,44,255,69,0,62,249,51,252,47,250,42,253,41,250,53,8,76,247,78,245,83,9,52,0,67,251,90,1,67,241,72,251,75,248,80,235,83,235,64,243,31,231,64,227,94,9,75,17,63,248,74,251,35,254,27,13,91,3,65,249,69,8,77,246,66,3,62,253,68,236,81,0,30,1,7,253,23,235,74,16,66,233,124,17,37,44,238,50,222,234,127,4,39,0,42,7,34,11,29,8,31,6,37,7,42,3,40,8,33,13,43,13,36,4,47,3,55,2,58,6,60,8,44,11,44,14,42,7,48,4,56,4,52,13,37,9,49,19,58,10,48,12,45,0,69,20,33,8,63,35,238,33,231,28,253,24,10,27,0,34,242,52,212,39,232,19,17,31,25,36,29,24,33,34,15,30,20,22,73,20,34,19,31,27,44,19,16,15,36,15,36,21,28,25,21,30,20,31,12,27,16,24,42,0,93,14,56,15,57,26,38,232,127,232,115,234,82,247,62,0,53,0,59,242,85,243,89,243,94,245,92,227,127,235,100,242,57,244,67,245,71,246,77,235,85,240,88,233,104,241,98,219,127,246,82,248,48,248,61,248,66,249,70,242,75,246,79,247,83,244,92,238,108,252,79,234,69,240,75,254,58,1,58,243,78,247,83,252,81,243,99,243,81,250,38,243,62,250,58,254,59,240,73,246,76,243,86,247,83,246,87,0,0,234,127,231,127,231,120,229,127,237,114,233,117,231,118,230,117,232,113,228,118,225,120,219,124,246,94,241,102,246,99,243,106,206,127,251,92,17,57,251,86,243,94,244,91,254,77,0,71,255,73,4,64,249,81,5,64,15,57,1,67,0,68,246,67,1,68,0,77,2,64,0,68,251,78,7,55,5,59,2,65,14,54,15,44,5,60,2,70,254,76,238,86,12,70,5,64,244,70,11,55,5,56,0,69,2,65,250,74,5,54,7,54,250,76,245,82,254,77,254,77,25,42,17,243,16,247,17,244,27,235,37,226,41,216,42,215,48,209,39,224,46,216,52,205,46,215,52,217,43,237,32,11,61,201,56,210,62,206,81,189,45,236,35,254,28,15,34,1,39,1,30,17,20,38,18,45,15,54,0,79,36,240,37,242,37,239,32,1,34,15,29,15,24,25,34,22,31,16,35,18,31,28,33,41,36,28,27,47,21,62,18,31,19,26,36,24,24,23,27,16,24,30,31,29,22,41,22,42,16,60,15,52,14,60,3,78,240,123,21,53,22,56,25,61,21,33,19,50,17,61,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,247,71,249,37,248,44,245,49,246,56,244,59,248,63,247,67,250,68,246,79,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,11,80,5,76,2,84,5,78,250,55,4,61,242,83,219,127,251,79,245,104,245,91,226,127,11,80,5,76,2,84,5,78,250,55,4,61,242,83,219,127,251,79,245,104,245,91,226,127,252,86,244,88,251,82,253,72,252,67,248,72,240,89,247,69,255,59,5,66,4,57,252,71,254,71,2,58,255,74,252,44,255,69,0,62,249,51,252,47,250,42,253,41,250,53,8,76,247,78,245,83,9,52,0,67,251,90,1,67,241,72,251,75,248,80,235,83,235,64,243,31,231,64,227,94,9,75,17,63,248,74,251,35,254,27,13,91,252,86,244,88,251,82,253,72,252,67,248,72,240,89,247,69,255,59,5,66,4,57,252,71,254,71,2,58,255,74,252,44,255,69,0,62,249,51,252,47,250,42,253,41,250,53,8,76,247,78,245,83,9,52,0,67,251,90,1,67,241,72,251,75,248,80,235,83,235,64,243,31,231,64,227,94,9,75,17,63,248,74,251,35,254,27,13,91,4,39,0,42,7,34,11,29,8,31,6,37,7,42,3,40,8,33,13,43,13,36,4,47,3,55,2,58,6,60,8,44,11,44,14,42,7,48,4,56,4,52,13,37,9,49,19,58,10,48,12,45,0,69,20,33,8,63,35,238,33,231,28,253,24,10,27,0,34,242,52,212,39,232,19,17,31,25,36,29,24,33,34,15,30,20,22,73,4,39,0,42,7,34,11,29,8,31,6,37,7,42],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+96656),allocate([3,40,8,33,13,43,13,36,4,47,3,55,2,58,6,60,8,44,11,44,14,42,7,48,4,56,4,52,13,37,9,49,19,58,10,48,12,45,0,69,20,33,8,63,35,238,33,231,28,253,24,10,27,0,34,242,52,212,39,232,19,17,31,25,36,29,24,33,34,15,30,20,22,73,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,247,71,249,37,248,44,245,49,246,56,244,59,248,63,247,67,250,68,246,79,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,253,78,248,74,247,72,246,72,238,75,244,71,245,63,251,70,239,75,242,72,240,67,248,53,242,59,247,52,245,68,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,9,254,30,246,31,252,33,255,33,7,31,12,37,23,31,38,20,64,247,71,249,37,248,44,245,49,246,56,244,59,248,63,247,67,250,68,246,79,234,127,231,127,231,120,229,127,237,114,233,117,231,118,230,117,232,113,228,118,225,120,219,124,246,94,241,102,246,99,243,106,206,127,251,92,17,57,251,86,243,94,244,91,254,77,0,71,255,73,4,64,249,81,5,64,15,57,1,67,0,68,246,67,1,68,0,77,2,64,0,68,251,78,7,55,5,59,2,65,14,54,15,44,5,60,2,70,234,127,231,127,231,120,229,127,237,114,233,117,231,118,230,117,232,113,228,118,225,120,219,124,246,94,241,102,246,99,243,106,206,127,251,92,17,57,251,86,243,94,244,91,254,77,0,71,255,73,4,64,249,81,5,64,15,57,1,67,0,68,246,67,1,68,0,77,2,64,0,68,251,78,7,55,5,59,2,65,14,54,15,44,5,60,2,70,17,243,16,247,17,244,27,235,37,226,41,216,42,215,48,209,39,224,46,216,52,205,46,215,52,217,43,237,32,11,61,201,56,210,62,206,81,189,45,236,35,254,28,15,34,1,39,1,30,17,20,38,18,45,15,54,0,79,36,240,37,242,37,239,32,1,34,15,29,15,24,25,34,22,31,16,35,18,31,28,33,41,36,28,27,47,21,62,17,243,16,247,17,244,27,235,37,226,41,216,42,215,48,209,39,224,46,216,52,205,46,215,52,217,43,237,32,11,61,201,56,210,62,206,81,189,45,236,35,254,28,15,34,1,39,1,30,17,20,38,18,45,15,54,0,79,36,240,37,242,37,239,32,1,34,15,29,15,24,25,34,22,31,16,35,18,31,28,33,41,36,28,27,47,21,62,232,115,234,82,247,62,0,53,0,59,242,85,243,89,243,94,245,92,227,127,235,100,242,57,244,67,245,71,246,77,235,85,240,88,233,104,241,98,219,127,246,82,248,48,248,61,248,66,249,70,242,75,246,79,247,83,244,92,238,108,232,115,234,82,247,62,0,53,0,59,242,85,243,89,243,94,245,92,227,127,235,100,242,57,244,67,245,71,246,77,235,85,240,88,233,104,241,98,219,127,246,82,248,48,248,61,248,66,249,70,242,75,246,79,247,83,244,92,238,108,251,79,245,104,245,91,226,127,251,79,245,104,245,91,226,127,251,79,245,104,245,91,226,127,20,241,2,54,3,74,20,241,2,54,3,74,228,127,233,104,250,53,255,54,7,51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,0,63,0,63,0,63,247,83,4,86,0,97,249,72,13,41,3,62,0,11,1,55,0,69,239,127,243,102,0,82,249,74,235,107,229,127,225,127,232,127,238,95,229,127,235,114,226,127,239,123,244,115,240,122,245,115,244,63,254,68,241,84,243,104,253,70,248,93,246,90,226,127,255,74,250,97,249,91,236,127,252,56,251,82,249,76,234,125,249,93,245,87,253,77,251,71,252,63,252,68,244,84,249,62,249,65,8,61,5,56,254,66,1,64,0,61,254,78,1,50,7,52,10,35,0,44,11,38,1,45,0,46,5,44,31,17,1,51,7,50,28,19,16,33,14,62,243,108,241,100,243,101,243,91,244,94,246,88,240,84,246,86,249,83,243,87,237,94,1,70,0,72,251,74,18,59,248,102,241,100,0,95,252,75,2,72,245,75,253,71,15,46,243,69,0,62,0,65,21,37,241,72,9,57,16,54,0,62,12,72,24,0,15,9,8,25,13,18,15,9,13,19,10,37,12,18,6,29,20,33,15,30,4,45,1,58,0,62,7,61,12,38,11,45,15,39,11,42,13,44,16,45,12,41,10,49,30,34,18,42,10,55,17,51,17,46,0,89,26,237,22,239,26,239,30,231,28,236,33,233,37,229,33,233,40,228,38,239,33,245,40,241,41,250,38,1,41,17,30,250,27,3,26,22,37,240,35,252,38,248,38,253,37,3,38,5,42,0,35,16,39,22,14,48,27,37,21,60,12,68,2,97,253,71,250,42,251,50,253,54,254,62,0,58,1,63,254,72,255,74,247,91,251,67,251,27,253,39,254,44,0,46,240,64,248,68,246,78,250,77,246,86,244,92,241,55,246,60,250,62,252,65,244,73,248,76,249,80,247,88,239,110,245,97,236,84,245,79,250,73,252,74,243,86,243,96,245,97,237,117,248,78,251,33,252,48,254,53,253,62,243,71,246,79,244,86,243,90,242,97,0,0,250,93,250,84,248,79,0,66,255,71,0,62,254,60,254,59,251,75,253,62,252,58,247,66,255,79,0,71,3,68,10,44,249,62,15,36,14,40,16,27,12,29,1,44,20,36,18,32,5,42,1,48,10,62,17,46,9,64,244,104,245,97,240,96,249,88,248,85,249,85,247,85,243,88,4,66,253,77,253,76,250,76,10,58,255,76,255,83,249,99,242,95,2,95,0,76,251,74,0,70,245,75,1,68,0,65,242,73,3,62,4,62,255,68,243,75,11,55,5,64,12,70,15,6,6,19,7,16,12,14,18,13,13,11,13,15,15,16,12,23,13,23,15,20,14,26,14,44,17,40,17,47,24,17,21,21,25,22,31,27,22,29,19,35,14,50,10,57,7,63,254,77,252,82,253,94,9,69,244,109,36,221,36,222,32,230,37,226,44,224,34,238,34,241,40,241,33,249,35,251,33,0,38,2,33,13,23,35,13,58,29,253,26,0,22,30,31,249,35,241,34,253,34,3,36,255,34,5,32,11,35,5,34,12,39,11,30,29,34,26,29,39,19,66,31,21,31,31,25,50,239,120,236,112,238,114,245,85,241,92,242,89,230,71,241,81,242,80,0,68,242,70,232,56,233,68,232,50,245,74,23,243,26,243,40,241,49,242,44,3,45,6,44,34,33,54,19,82,253,75,255,23,1,34,1,43,0,54,254,55,0,61,1,64,0,68,247,92,242,106,243,97,241,90,244,90,238,88,246,73,247,79,242,86,246,73,246,70,246,69,251,66,247,64,251,58,2,59,21,246,24,245,28,248,28,255,29,3,29,9,35,20,29,36,14,67,239,123,244,115,240,122,245,115,244,63,254,68,241,84,243,104,253,70,248,93,246,90,226,127,239,123,244,115,240,122,245,115,244,63,254,68,241,84,243,104,253,70,248,93,246,90,226,127,249,93,245,87,253,77,251,71,252,63,252,68,244,84,249,62,249,65,8,61,5,56,254,66,1,64,0,61,254,78,1,50,7,52,10,35,0,44,11,38,1,45,0,46,5,44,31,17,1,51,7,50,28,19,16,33,14,62,243,108,241,100,243,101,243,91,244,94,246,88,240,84,246,86,249,83,243,87,237,94,1,70,0,72,251,74,18,59,249,93,245,87,253,77,251,71,252,63,252,68,244,84,249,62,249,65,8,61,5,56,254,66,1,64,0,61,254,78,1,50,7,52,10,35,0,44,11,38,1,45,0,46,5,44,31,17,1,51,7,50,28,19,16,33,14,62,243,108,241,100,243,101,243,91,244,94,246,88,240,84,246,86,249,83,243,87,237,94,1,70,0,72,251,74,18,59,24,0,15,9,8,25,13,18,15,9,13,19,10,37,12,18,6,29,20,33,15,30,4,45,1,58,0,62,7,61,12,38,11,45,15,39,11,42,13,44,16,45,12,41,10,49,30,34,18,42,10,55,17,51,17,46,0,89,26,237,22,239,26,239,30,231,28,236,33,233,37,229,33,233,40,228,38,239,33,245,40,241,41,250,38,1,41,17,24,0,15,9,8,25,13,18,15,9,13,19,10,37,12,18,6,29,20,33,15,30,4,45,1,58,0,62,7,61,12,38,11,45,15,39,11,42,13,44,16,45,12,41,10,49,30,34,18,42,10,55,17,51,17,46,0,89,26,237,22,239,26,239,30,231,28,236,33,233,37,229,33,233,40,228,38,239,33,245,40,241,41,250,38,1,41,17,239,120,236,112,238,114,245,85,241,92,242,89,230,71,241,81,242,80,0,68,242,70,232,56,233,68,232,50,245,74,242,106,243,97,241,90,244,90,238,88,246,73,247,79,242,86,246,73,246,70,246,69,251,66,247,64,251,58,2,59,23,243,26,243,40,241,49,242,44,3,45,6,44,34,33,54,19,82,21,246,24,245,28,248,28,255,29,3,29,9,35,20,29,36,14,67,253,75,255,23,1,34,1,43,0,54,254,55,0,61,1,64,0,68,247,92,239,120,236,112,238,114,245,85,241,92,242,89,230,71,241,81,242,80,0,68,242,70,232,56,233,68,232,50,245,74,242,106,243,97,241,90,244,90,238,88,246,73,247,79,242,86,246,73,246,70,246,69,251,66,247,64,251,58,2,59,23,243,26,243,40,241,49,242,44,3,45,6,44,34,33,54,19,82,21,246,24,245,28,248,28,255,29,3,29,9,35,20,29,36,14,67,253,75,255,23,1,34,1,43,0,54,254,55,0,61,1,64,0,68,247,92,250,93,250,84,248,79,0,66,255,71,0,62,254,60,254,59,251,75,253,62,252,58,247,66,255,79,0,71,3,68,10,44,249,62,15,36,14,40,16,27,12,29,1,44,20,36,18,32,5,42,1,48,10,62,17,46,9,64,244,104,245,97,240,96,249,88,248,85,249,85,247,85,243,88,4,66,253,77,253,76,250,76,10,58,255,76,255,83,250,93,250,84,248,79,0,66,255,71,0,62,254,60,254,59,251,75,253,62,252,58,247,66,255,79,0,71,3,68,10,44,249,62,15,36,14,40,16,27,12,29,1,44,20,36,18,32,5,42,1,48,10,62,17,46,9,64,244,104,245,97,240,96,249,88,248,85,249,85,247,85,243,88,4,66,253,77,253,76,250,76,10,58,255,76,255,83,15,6,6,19,7,16,12,14,18,13,13,11,13,15,15,16,12,23,13,23,15,20,14,26,14,44,17,40,17,47,24,17,21,21,25,22,31,27,22,29,19,35,14,50,10,57,7,63,254,77,252,82,253,94,9,69,244,109,36,221,36,222,32,230,37,226,44,224,34,238,34,241,40,241,33,249,35,251,33,0,38,2,33,13,23,35,13,58,15,6,6,19,7,16,12,14,18,13,13,11,13,15,15,16,12,23,13,23,15,20,14,26,14,44,17,40,17,47,24,17,21,21,25,22,31,27,22,29,19,35,14,50,10,57,7,63,254,77,252,82,253,94,9,69,244,109,36,221,36,222,32,230,37,226,44,224,34,238,34,241,40,241,33,249,35,251,33,0,38,2,33,13,23,35,13,58,253,71,250,42,251,50,253,54,254,62,0,58,1,63,254,72,255,74,247,91,251,67,251,27,253,39,254,44,0,46,240,64,248,68,246,78,250,77,246,86,244,92,241,55,246,60,250,62,252,65,244,73,248,76,249,80,247,88,239,110,253,71,250,42,251,50,253,54,254,62,0,58,1,63,254,72,255,74,247,91,251,67,251,27,253,39,254,44,0,46,240,64,248,68,246,78,250,77,246,86,244,92,241,55,246,60,250,62,252,65,244,73,248,76,249,80,247,88,239,110,253,70,248,93,246,90,226,127,253,70,248,93,246,90,226,127,253,70,248,93,246,90,226,127,0,1,2,3,7,10,8,11,3,7,11,15,17,33,21,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,8,11,8,11,11,11,15,15,21,37,21,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,7,10,7,10,3,3,7,7,17,33,17,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,7,10,7,10,3,11,3,11,17,33,17,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,101,102,101,114,101,110,99,101,32,37,100,32,62,61,32,37,100,10,0,111,118,101,114,102,108,111,119,32,105,110,32,100,101,99,111,100,101,95,99,97,98,97,99,95,109,98,95,109,118,100,10,0,99,97,98,97,99,32,100,101,99,111,100,101,32,111,102,32,113,115,99,97,108,101,32,100,105,102,102,32,102,97,105,108,101,100,32,97,116,32,37,100,32,37,100,10,0,1,2,3,4,0,0,0,0,1,2,3,3,4,5,6,7,4,4,4,4,5,6,7,7,5,5,5,5,6,7,8,9,5,5,5,5,6,7,8,8,0,1,2,3,4,5,5,4,4,3,3,4,4,4,5,5,4,4,4,4,3,3,6,7,7,7,8,9,10,9,8,7,7,6,11,12,13,11,6,7,8,9,14,10,9,8,6,11,12,13,11,6,9,14,10,9,11,12,13,11,14,10,12,0,1,1,2,2,3,3,4,5,6,7,7,7,8,4,5,6,9,10,10,8,11,12,11,9,9,10,10,8,11,12,11,9,9,10,10,8,11,12,11,9,9,10,10,8,13,13,9,9,10,10,8,13,13,9,9,10,10,14,14,14,14,14,0,0,1,1,2,2,2,0,32,16,64,96,48,80,112,0,16,32,48,2,0,0,0,6,1,0,0,6,6,3,0,6,7,7,6,6,8,8,7,1,0,0,0,7,1,0,0,4,6,1,0,3,3,2,5,2,3,2,0,1,0,0,0,7,2,0,0,7,7,3,0,9,7,7,5,9,9,7,6,10,10,9,7,11,11,10,7,12,12,11,10,13,12,12,11,1,0,0,0,15,1,0,0,14,13,1,0,7,12,11,1,6,5,10,1,7,6,4,9,7,6,5,8,7,6,5,4,7,5,4,4,1,0,0,0,6,2,0,0,8,6,3,0,9,8,7,5,10,9,8,6,11,10,9,7,13,11,10,8,13,13,11,9,13,13,13,10,14,14,13,11,14,14,14,13,15,15,14,14,15,15,15,14,16,15,15,15,16,16,16,15,16,16,16,16,16,16,16,16,2,0,0,0,6,2,0,0,6,5,3,0,7,6,6,4,8,6,6,4,8,7,7,5,9,8,8,6,11,9,9,6,11,11,11,7,12,11,11,9,12,12,12,11,12,12,12,11,13,13,13,12,13,13,13,13,13,14,13,13,14,14,14,13,14,14,14,14,4,0,0,0,6,4,0,0,6,5,4,0,6,5,5,4,7,5,5,4,7,5,5,4,7,6,6,4,7,6,6,4,8,7,7,5,8,8,7,6,9,8,8,7,9,9,8,8,9,9,9,8,10,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,6,0,0,0,6,6,0,0,6,6,6,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,1,0,0,0,5,1,0,0,7,4,1,0,7,6,5,3,7,6,5,3,7,6,5,4,15,6,5,4,11,14,5,4,8,10,13,4,15,14,9,4,11,10,13,12,15,14,9,12,11,10,13,8,15,1,9,12,11,14,13,8,7,10,9,12,4,6,5,8,3,0,0,0,11,2,0,0,7,7,3,0,7,10,9,5,7,6,5,4,4,6,5,6,7,6,5,8,15,6,5,4,11,14,13,4,15,10,9,4,11,14,13,12,8,10,9,8,15,14,13,12,11,10,9,12,7,11,6,8,9,8,10,1,7,6,5,4,15,0,0,0,15,14,0,0,11,15,13,0,8,12,14,12,15,10,11,11,11,8,9,10,9,14,13,9,8,10,9,8,15,14,13,13,11,14,10,12,15,10,13,12,11,14,9,12,8,10,13,8,13,7,9,12,9,12,11,10,5,8,7,6,1,4,3,2,3,0,0,0,0,1,0,0,4,5,6,0,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,1,2,3,3,1,2,2,0,1,1,0,0,1,1,1,0,1,1,0,0,1,0,0,0,1,3,3,4,4,4,5,5,3,2,3,3,3,3,3,0,3,3,2,2,3,3,0,0,3,2,2,2,3,0,0,0,2,2,2,2,0,0,0,0,2,2,1,0,0,0,0,0,1,1,0,0,0,0,0,0,1,2,3,2,3,1,1,0,0,1,1,4,5,6,7,0,0,1,1,2,6,7,0,0,6,0,1,2,7,0,0,0,0,1,2,3,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,1,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,3,3,3,3,3,4,4,4,4,5,5,6,6,6,6,0,4,3,3,3,4,4,3,3,4,5,5,6,5,6,0,0,5,3,4,4,3,3,3,4,3,4,5,5,5,0,0,0,4,4,4,3,3,3,3,3,4,5,4,5,0,0,0,0,6,5,3,3,3,3,3,3,4,3,6,0,0,0,0,0,6,5,3,3,3,2,3,4,3,6,0,0,0,0,0,0,6,4,5,3,2,2,3,3,6,0,0,0,0,0,0,0,6,6,4,2,2,3,2,5,0,0,0,0,0,0,0,0,5,5,3,2,2,2,4,0,0,0,0,0,0,0,0,0,4,4,3,3,1,3,0,0,0,0,0,0,0,0,0,0,4,4,2,1,3,0,0,0,0,0,0,0,0,0,0,0,3,3,1,2,0,0,0,0,0,0,0,0,0,0,0,0,2,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,2,3,2,3,2,3,2,3,2,3,2,3,2,1,7,6,5,4,3,5,4,3,2,3,2,3,2,1,0,0,5,7,6,5,4,3,4,3,2,3,2,1,1,0,0,0,3,7,5,4,6,5,4,3,3,2,2,1,0,0,0,0,5,4,3,7,6,5,4,3,2,1,1,0,0,0,0,0,1,1,7,6,5,4,3,2,1,1,0,0,0,0,0,0,1,1,5,4,3,3,2,1,1,0,0,0,0,0,0,0,1,1,1,3,3,2,2,1,0,0,0,0,0,0,0,0,1,0,1,3,2,1,1,1,0,0,0,0,0,0,0,0,1,0,1,3,2,1,1,0,0,0,0,0,0,0,0,0,0,1,1,2,1,3,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,3,3,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,3,3,0,0,0,0,0,0,0,0,0,0,2,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,4,5,6,7,8,9,10,11,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,1,1,0,0,0,0,0,0,0,0,0,0,0,0,3,2,3,2,1,0,0,0,0,0,0,0,0,0,0,0,3,0,1,3,2,5,4,0,0,0,0,0,0,0,0,0,7,6,5,4,3,2,1,1,1,1,1,1,1,1,1,0,0,1,2,3,7,10,8,11,3,7,11,15,17,33,21,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,3,3,8,11,8,11,11,11,15,15,21,37,21,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,7,10,7,10,3,3,7,7,17,33,17,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,7,10,7,10,3,11,3,11,17,33,17,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,109,98,95,116,121,112,101,32,37,100,32,105,110,32,37,99,32,115,108,105,99,101,32,116,111,111,32,108,97,114,103,101,32,97,116,32,37,100,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,102,111,114,32,97,110,32,105,110,116,114,97,32,80,67,77,32,98,108,111,99,107,46,10,0,66,32,115,117,98,95,109,98,95,116,121,112,101,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,32,97,116,32,37,100,32,37,100,10,0,80,32,115,117,98,95,109,98,95,116,121,112,101,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,32,97,116,32,37,100,32,37,100,10,0,114,101,102,32,37,117,32,111,118,101,114,102,108,111,119,10,0,99,98,112,32,116,111,111,32,108,97,114,103,101,32,40,37,117,41,32,97,116,32,37,100,32,37,100,10,0,47,31,15,0,23,27,29,30,7,11,13,14,39,43,45,46,16,3,5,10,12,19,21,26,28,35,37,42,44,1,2,4,8,17,18,20,24,6,9,22,25,32,33,34,36,40,38,41,0,16,1,2,4,8,32,3,5,10,12,15,47,7,11,13,14,6,9,31,35,37,42,44,33,34,36,40,39,43,45,46,17,18,20,24,19,21,26,28,23,27,29,30,22,25,38,41,15,0,7,11,13,14,3,5,10,12,1,2,4,8,6,9,0,1,2,4,8,3,5,10,12,15,7,11,13,14,6,9,103,114,97,121,32,99,104,114,111,109,97,10,0,100,113,117,97,110,116,32,111,117,116,32,111,102,32,114,97,110,103,101,32,40,37,100,41,32,97,116,32,37,100,32,37,100,10,0,99,111,114,114,117,112,116,101,100,32,109,97,99,114,111,98,108,111,99,107,32,37,100,32,37,100,32,40,116,111,116,97,108,95,99,111,101,102,102,61,37,100,41,10,0,73,110,118,97,108,105,100,32,108,101,118,101,108,32,112,114,101,102,105,120,10,0,110,101,103,97,116,105,118,101,32,110,117,109,98,101,114,32,111,102,32,122,101,114,111,32,99,111,101,102,102,115,32,97,116,32,37,100,32,37,100,10,0,0,32,16,64,96,48,80,112,0,16,32,48,99,111,32,108,111,99,97,116,101,100,32,80,79,67,115,32,117,110,97,118,97,105,108,97,98,108,101,10,0,3,3,3,3,7,7,7,7,11,11,11,11,15,15,15,15,3,7,11,15,3,7,11,15,3,7,11,15,3,7,11,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,5,6,7,8,9,10,12,13,15,17,20,22,25,28,32,36,40,45,50,56,63,71,80,90,101,113,127,144,162,182,203,226,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,3,3,3,3,4,4,4,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,1,255,0,0,1,255,0,0,1,255,0,0,1,255,0,1,1,255,0,1,1,255,1,1,1,255,1,1,1,255,1,1,1,255,1,1,1,255,1,1,2,255,1,1,2,255,1,1,2,255,1,1,2,255,1,2,3,255,1,2,3,255,2,2,3,255,2,2,4,255,2,3,4,255,2,3,4,255,3,3,5,255,3,4,6,255,3,4,6,255,4,5,7,255,4,5,8,255,4,6,9,255,5,7,10,255,6,8,11,255,6,8,13,255,7,10,14,255,8,11,16,255,9,12,18,255,10,13,20,255,11,15,23,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,255,13,17,25,0,3,3,3,1,1,1,1,0,3,1,1,3,3,3,3,0,16,64,80,32,48,96,112,128,144,192,208,160,176,224,240,33,100,115,116,45,62,102,45,62,98,117,102,91,48,93,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,95,112,105,99,116,117,114,101,46,99,0,115,114,99,45,62,102,45,62,98,117,102,91,48,93,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,29,30,31,32,32,33,34,34,35,35,36,36,37,37,37,38,38,38,39,39,39,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,35,36,37,38,38,39,40,40,41,41,42,42,43,43,43,44,44,44,45,45,45,45,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,41,42,43,44,44,45,46,46,47,47,48,48,49,49,49,50,50,50,51,51,51,51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,47,48,49,50,50,51,52,52,53,53,54,54,55,55,55,56,56,56,57,57,57,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,53,54,55,56,56,57,58,58,59,59,60,60,61,61,61,62,62,62,63,63,63,63,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,59,60,61,62,62,63,64,64,65,65,66,66,67,67,67,68,68,68,69,69,69,69,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,65,66,67,68,68,69,70,70,71,71,72,72,73,73,73,74,74,74,75,75,75,75,84,114,117,110,99,97,116,105,110,103,32,108,105,107,101,108,121,32,111,118,101,114,115,105,122,101,100,32,83,80,83,10,0,115,112,115,95,105,100,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,99,104,114,111,109,97,95,102,111,114,109,97,116,95,105,100,99,32,37,117,0,115,101,112,97,114,97,116,101,32,99,111,108,111,114,32,112,108,97,110,101,115,32,97,114,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,68,105,102,102,101,114,101,110,116,32,99,104,114,111,109,97,32,97,110,100,32,108,117,109,97,32,98,105,116,32,100,101,112,116,104,0,105,108,108,101,103,97,108,32,98,105,116,32,100,101,112,116,104,32,118,97,108,117,101,32,40,37,100,44,32,37,100,41,10,0,6,10,13,16,18,23,25,27,10,11,16,18,23,25,27,29,13,16,18,23,25,27,29,31,16,18,23,25,27,29,31,33,18,23,25,27,29,31,33,36,23,25,27,29,31,33,36,38,25,27,29,31,33,36,38,40,27,29,31,33,36,38,40,42,9,13,15,17,19,21,22,24,13,13,17,19,21,22,24,25,15,17,19,21,22,24,25,27,17,19,21,22,24,25,27,28,19,21,22,24,25,27,28,30,21,22,24,25,27,28,30,32,22,24,25,27,28,30,32,33,24,25,27,28,30,32,33,35,6,13,20,28,13,20,28,32,20,28,32,37,28,32,37,42,10,14,20,24,14,20,24,27,20,24,27,30,24,27,30,34,108,111,103,50,95,109,97,120,95,102,114,97,109,101,95,110,117,109,95,109,105,110,117,115,52,32,111,117,116,32,111,102,32,114,97,110,103,101,32,40,48,45,49,50,41,58,32,37,100,10,0,108,111,103,50,95,109,97,120,95,112,111,99,95,108,115,98,32,40,37,100,41,32,105,115,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,112,111,99,95,99,121,99,108,101,95,108,101,110,103,116,104,32,111,118,101,114,102,108,111,119,32,37,100,10,0,105,108,108,101,103,97,108,32,80,79,67,32,116,121,112,101,32,37,100,10,0,116,111,111,32,109,97,110,121,32,114,101,102,101,114,101,110,99,101,32,102,114,97,109,101,115,32,37,100,10,0,109,98,95,119,105,100,116,104,47,104,101,105,103,104,116,32,111,118,101,114,102,108,111,119,10,0,100,105,115,99,97,114,100,105,110,103,32,115,112,115,32,99,114,111,112,112,105,110,103,44,32,111,114,105,103,105,110,97,108,32,118,97,108,117,101,115,32,97,114,101,32,108,58,37,100,32,114,58,37,100,32,116,58,37,100,32,98,58,37,100,10,0,82,101,100,117,99,105,110,103,32,108,101,102,116,32,99,114,111,112,112,105,110,103,32,116,111,32,37,100,32,99,104,114,111,109,97,32,115,97,109,112,108,101,115,32,116,111,32,112,114,101,115,101,114,118,101,32,97,108,105,103,110,109,101,110,116,46,10,0,99,114,111,112,32,118,97,108,117,101,115,32,105,110,118,97,108,105,100,32,37,100,32,37,100,32,37,100,32,37,100,32,47,32,37,100,32,37,100,10,0,105,108,108,101,103,97,108,32,97,115,112,101,99,116,32,114,97,116,105,111,10,0,84,114,117,110,99,97,116,101,100,32,86,85,73,10,0,116,105,109,101,95,115,99,97,108,101,47,110,117,109,95,117,110,105,116,115,95,105,110,95,116,105,99,107,32,105,110,118,97,108,105,100,32,111,114,32,117,110,115,117,112,112,111,114,116,101,100,32,40,37,117,47,37,117,41,10,0,99,112,98,95,99,111,117,110,116,32,37,100,32,105,110,118,97,108,105,100,10,0,67,108,105,112,112,105,110,103,32,105,108,108,101,103,97,108,32,110,117,109,95,114,101,111,114,100,101,114,95,102,114,97,109,101,115,32,37,100,10,0,86,85,73,0,79,118,101,114,114,101,97,100,32,37,115,32,98,121,32,37,100,32,98,105,116,115,10,0,77,66,45,65,70,70,0,80,73,67,45,65,70,70,0,70,82,77,0,56,66,56,0,71,114,97,121,0,52,50,48,0,0,52,50,50,0,0,52,52,52,0,0,115,112,115,58,37,117,32,112,114,111,102,105,108,101,58,37,100,47,37,100,32,112,111,99,58,37,100,32,114,101,102,58,37,100,32,37,100,120,37,100,32,37,115,32,37,115,32,99,114,111,112,58,37,117,47,37,117,47,37,117,47,37,117,32,37,115,32,37,115,32,37,100,47,37,100,32,98,37,100,32,114,101,111,58,37,100,10,0,84,114,117,110,99,97,116,105,110,103,32,108,105,107,101,108,121,32,111,118,101,114,115,105,122,101,100,32,80,80,83,10,0,73,110,118,97,108,105,100,32,108,117,109,97,32,98,105,116,32,100,101,112,116,104,61,37,100,10,0,85,110,105,109,112,108,101,109,101,110,116,101,100,32,108,117,109,97,32,98,105,116,32,100,101,112,116,104,61,37,100,10,0,70,77,79,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,114,101,102,101,114,101,110,99,101,32,111,118,101,114,102,108,111,119,32,40,112,112,115,41,10,0,67,117,114,114,101,110,116,32,112,114,111,102,105,108,101,32,100,111,101,115,110,39,116,32,112,114,111,118,105,100,101,32,109,111,114,101,32,82,66,83,80,32,100,97,116,97,32,105,110,32,80,80,83,44,32,115,107,105,112,112,105,110,103,10,0,67,65,66,65,67,0,67,65,86,76,67,0,119,101,105,103,104,116,101,100,0,76,80,65,82,0,67,79,78,83,84,82,0,82,69,68,85,0,56,120,56,68,67,84,0,112,112,115,58,37,117,32,115,112,115,58,37,117,32,37,115,32,115,108,105,99,101,95,103,114,111,117,112,115,58,37,100,32,114,101,102,58,37,117,47,37,117,32,37,115,32,113,112,58,37,100,47,37,100,47,37,100,47,37,100,32,37,115,32,37,115,32,37,115,32,37,115,10,0,115,104,111,114,116,32,116,101,114,109,32,108,105,115,116,58,10,0,37,117,32,102,110,58,37,100,32,112,111,99,58,37,100,32,37,112,10,0,108,111,110,103,32,116,101,114,109,32,108,105,115,116,58,10,0,108,101,110,32,60,61,32,51,50,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,95,114,101,102,115,46,99,0,105,110,100,101,120,32,60,32,100,101,102,95,108,101,110,0,68,105,115,99,97,114,100,105,110,103,32,109,105,115,109,97,116,99,104,105,110,103,32,114,101,102,101,114,101,110,99,101,10,0,114,101,102,101,114,101,110,99,101,32,99,111,117,110,116,32,111,118,101,114,102,108,111,119,10,0,97,98,115,95,100,105,102,102,95,112,105,99,95,110,117,109,32,111,118,101,114,102,108,111,119,10,0,108,111,110,103,95,116,101,114,109,95,112,105,99,95,105,100,120,32,111,118,101,114,102,108,111,119,10,0,105,108,108,101,103,97,108,32,109,111,100,105,102,105,99,97,116,105,111,110,95,111,102,95,112,105,99,95,110,117,109,115,95,105,100,99,32,37,117,10,0,114,101,102,101,114,101,110,99,101,32,112,105,99,116,117,114,101,32,109,105,115,115,105,110,103,32,100,117,114,105,110,103,32,114,101,111,114,100,101,114,10,0,77,105,115,115,105,110,103,32,114,101,102,101,114,101,110,99,101,32,112,105,99,116,117,114,101,44,32,100,101,102,97,117,108,116,32,105,115,32,37,100,10,0,97,118,95,98,117,102,102,101,114,95,103,101,116,95,114,101,102,95,99,111,117,110,116,40,115,108,45,62,114,101,102,95,108,105,115,116,91,108,105,115,116,93,91,105,110,100,101,120,93,46,112,97,114,101,110,116,45,62,102,45,62,98,117,102,91,48,93,41,32,62,32,48,0,77,77,67,79,32,111,112,99,111,100,101,32,91,37,100,44,32,37,100,93,32,97,116,32,37,100,32,109,105,115,109,97,116,99,104,101,115,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,77,77,67,79,32,115,116,97,116,101,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,32,91,37,100,44,32,37,100,93,10,0,110,111,32,109,109,99,111,32,104,101,114,101,10,0,109,109,99,111,58,37,100,32,37,100,32,37,100,10,0,37,100,32,37,100,32,37,112,10,0,109,109,99,111,58,32,117,110,114,101,102,32,115,104,111,114,116,32,102,97,105,108,117,114,101,10,0,109,109,99,111,58,32,117,110,114,101,102,32,115,104,111,114,116,32,37,100,32,99,111,117,110,116,32,37,100,10,0,114,101,109,111,118,101,32,115,104,111,114,116,32,37,100,32,99,111,117,110,116,32,37,100,10,0,109,109,99,111,58,32,117,110,114,101,102,32,108,111,110,103,32,102,97,105,108,117,114,101,10,0,109,109,99,111,58,32,99,97,110,110,111,116,32,97,115,115,105,103,110,32,99,117,114,114,101,110,116,32,112,105,99,116,117,114,101,32,116,111,32,115,104,111,114,116,32,97,110,100,32,108,111,110,103,32,97,116,32,116,104,101,32,115,97,109,101,32,116,105,109,101,10,0,109,109,99,111,58,32,99,97,110,110,111,116,32,97,115,115,105,103,110,32,99,117,114,114,101,110,116,32,112,105,99,116,117,114,101,32,116,111,32,50,32,108,111,110,103,32,116,101,114,109,32,114,101,102,101,114,101,110,99,101,115,10,0,33,104,45,62,99,117,114,95,112,105,99,95,112,116,114,45,62,108,111,110,103,95,114,101,102,0,105,108,108,101,103,97,108,32,115,104,111,114,116,32,116,101,114,109,32,114,101,102,101,114,101,110,99,101,32,97,115,115,105,103,110,109,101,110,116,32,102,111,114,32,115,101,99,111,110,100,32,102,105,101,108,100,32,105,110,32,99,111,109,112,108,101,109,101,110,116,97,114,121,32,102,105,101,108,100,32,112,97,105,114,32,40,102,105,114,115,116,32,102,105,101,108,100,32,105,115,32,108,111,110,103,32,116,101,114,109,41,10,0,105,108,108,101,103,97,108,32,115,104,111,114,116,32,116,101,114,109,32,98,117,102,102,101,114,32,115,116,97,116,101,32,100,101,116,101,99,116,101,100,10,0,110,117,109,98,101,114,32,111,102,32,114,101,102,101,114,101,110,99,101,32,102,114,97,109,101,115,32,40,37,100,43,37,100,41,32,101,120,99,101,101,100,115,32,109,97,120,32,40,37,100,59,32,112,114,111,98,97,98,108,121,32,99,111,114,114,117,112,116,32,105,110,112,117,116,41,44,32,100,105,115,99,97,114,100,105,110,103,32,111,110,101,10,0,105,108,108,101,103,97,108,32,108,111,110,103,32,114,101,102,32,105,110,32,109,101,109,111,114,121,32,109,97,110,97,103,101,109,101,110,116,32,99,111,110,116,114,111,108,32,111,112,101,114,97,116,105,111,110,32,37,100,10,0,105,108,108,101,103,97,108,32,109,101,109,111,114,121,32,109,97,110,97,103,101,109,101,110,116,32,99,111,110,116,114,111,108,32,111,112,101,114,97,116,105,111,110,32,37,100,10,0,83,69,73,32,37,100,32,108,101,110,58,37,100,10,0,83,69,73,32,116,121,112,101,32,37,100,32,115,105,122,101,32,37,100,32,116,114,117,110,99,97,116,101,100,32,97,116,32,37,100,10,0,1,1,1,2,2,3,3,2,3,99,116,95,116,121,112,101,58,37,88,32,112,105,99,95,115,116,114,117,99,116,58,37,100,10,0,120,50,54,52,32,45,32,99,111,114,101,32,37,100,0,120,50,54,52,32,45,32,99,111,114,101,32,48,48,48,48,0,117,115,101,114,32,100,97,116,97,58,34,37,115,34,10,0,115,101,105,95,114,101,99,111,118,101,114,121,95,102,114,97,109,101,95,99,110,116,58,32,37,100,10,0,110,111,110,45,101,120,105,115,116,105,110,103,32,83,80,83,32,37,100,32,114,101,102,101,114,101,110,99,101,100,32,105,110,32,98,117,102,102,101,114,105,110,103,32,112,101,114,105,111,100,10,0,83,69,73,32,70,80,65,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,32,37,100,10,0,71,114,101,101,110,32,77,101,116,97,100,97,116,97,32,73,110,102,111,32,83,69,73,32,109,101,115,115,97,103,101,10,0,103,114,101,101,110,95,109,101,116,97,100,97,116,97,95,116,121,112,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,100,10,0,103,114,101,101,110,95,109,101,116,97,100,97,116,97,95,112,101,114,105,111,100,95,116,121,112,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,100,10,0,103,114,101,101,110,95,109,101,116,97,100,97,116,97,95,110,117,109,95,115,101,99,111,110,100,115,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,100,10,0,103,114,101,101,110,95,109,101,116,97,100,97,116,97,95,110,117,109,95,112,105,99,116,117,114,101,115,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,100,10,0,83,69,73,32,71,82,69,69,78,32,67,111,109,112,108,101,120,105,116,121,32,77,101,116,114,105,99,115,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,102,32,37,102,32,37,102,32,37,102,10,0,120,115,100,95,109,101,116,114,105,99,95,116,121,112,101,32,32,32],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+106896),allocate([32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,100,10,0,120,115,100,95,109,101,116,114,105,99,95,118,97,108,117,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,61,32,37,102,10,0,117,110,107,110,111,119,110,32,83,69,73,32,116,121,112,101,32,37,100,10,0,99,104,101,99,107,101,114,98,111,97,114,100,95,114,108,0,99,104,101,99,107,101,114,98,111,97,114,100,95,108,114,0,99,111,108,95,105,110,116,101,114,108,101,97,118,101,100,95,114,108,0,99,111,108,95,105,110,116,101,114,108,101,97,118,101,100,95,108,114,0,114,111,119,95,105,110,116,101,114,108,101,97,118,101,100,95,114,108,0,114,111,119,95,105,110,116,101,114,108,101,97,118,101,100,95,108,114,0,114,105,103,104,116,95,108,101,102,116,0,108,101,102,116,95,114,105,103,104,116,0,98,111,116,116,111,109,95,116,111,112,0,116,111,112,95,98,111,116,116,111,109,0,98,108,111,99,107,95,114,108,0,98,108,111,99,107,95,108,114,0,0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,14,14,14,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,10,13,16,11,14,18,13,16,20,14,18,23,16,20,25,18,23,29,0,3,4,3,3,1,5,1,4,5,2,5,3,1,5,1,20,18,32,19,25,24,22,19,35,21,28,26,26,23,42,24,33,31,28,25,45,26,35,33,32,28,51,30,40,38,36,32,58,34,46,43,0,1,4,8,5,2,3,6,9,12,13,10,7,11,14,15,0,0,4,1,8,12,5,9,13,2,6,10,14,3,7,11,15,0,0,9,17,18,12,40,27,7,35,57,29,30,58,38,53,47,1,2,24,11,19,48,20,14,42,50,22,37,59,31,60,55,8,3,32,4,26,41,13,21,49,43,15,44,52,39,61,62,16,10,25,5,33,34,6,28,56,36,23,51,45,46,54,63,0,0,8,16,1,9,24,32,17,2,25,40,48,56,33,10,3,18,41,49,57,26,11,4,19,34,42,50,58,27,12,5,20,35,43,51,59,28,13,6,21,36,44,52,60,29,14,22,37,45,53,61,30,7,15,38,46,54,62,23,31,39,47,55,63,0,0,9,2,56,18,26,34,27,35,28,36,29,45,7,54,39,8,24,25,33,41,11,42,12,43,13,44,14,53,15,62,47,16,32,40,10,49,4,50,5,51,6,52,22,61,38,23,55,1,17,48,3,57,19,58,20,59,21,60,37,30,46,31,63,0,67,111,117,108,100,32,110,111,116,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,10,0,86,68,80,65,85,32,100,101,99,111,100,105,110,103,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,118,105,100,101,111,32,99,111,108,111,114,115,112,97,99,101,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,98,105,116,32,100,101,112,116,104,32,37,100,10,0,116,111,111,32,109,97,110,121,32,116,104,114,101,97,100,115,47,115,108,105,99,101,115,32,37,100,44,32,114,101,100,117,99,105,110,103,32,116,111,32,37,100,10,0,99,111,110,116,101,120,116,95,105,110,105,116,40,41,32,102,97,105,108,101,100,46,10,0,33,104,45,62,115,101,116,117,112,95,102,105,110,105,115,104,101,100,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,95,115,108,105,99,101,46,99,0,84,111,111,32,109,97,110,121,32,102,105,101,108,100,115,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,109,117,108,116,105,112,108,101,32,97,99,99,101,115,115,32,117,110,105,116,115,32,97,115,32,115,108,105,99,101,32,116,104,114,101,97,100,115,10,0,66,114,111,107,101,110,32,102,114,97,109,101,32,112,97,99,107,101,116,105,122,105,110,103,10,0,115,108,32,61,61,32,104,45,62,115,108,105,99,101,95,99,116,120,0,115,108,105,99,101,32,116,121,112,101,32,37,100,32,116,111,111,32,108,97,114,103,101,32,97,116,32,37,100,10,0,2,3,1,6,5,65,32,110,111,110,45,105,110,116,114,97,32,115,108,105,99,101,32,105,110,32,97,110,32,73,68,82,32,78,65,76,32,117,110,105,116,46,10,0,73,110,118,97,108,105,100,32,85,69,32,103,111,108,111,109,98,32,99,111,100,101,10,0,112,112,115,95,105,100,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,110,111,110,45,101,120,105,115,116,105,110,103,32,80,80,83,32,37,117,32,114,101,102,101,114,101,110,99,101,100,10,0,80,80,83,32,99,104,97,110,103,101,32,102,114,111,109,32,37,100,32,116,111,32,37,100,32,102,111,114,98,105,100,100,101,110,10,0,110,111,110,45,101,120,105,115,116,105,110,103,32,83,80,83,32,37,117,32,114,101,102,101,114,101,110,99,101,100,10,0,80,80,83,32,99,104,97,110,103,101,100,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,10,0,83,80,83,32,99,104,97,110,103,101,100,32,105,110,32,116,104,101,32,109,105,100,100,108,101,32,111,102,32,116,104,101,32,102,114,97,109,101,10,0,68,101,108,97,121,101,100,32,102,114,97,109,101,115,32,115,101,101,110,46,32,82,101,101,110,97,98,108,105,110,103,32,108,111,119,32,100,101,108,97,121,32,114,101,113,117,105,114,101,115,32,97,32,99,111,100,101,99,32,102,108,117,115,104,46,10,0,104,45,62,115,112,115,46,99,114,111,112,95,114,105,103,104,116,32,43,32,104,45,62,115,112,115,46,99,114,111,112,95,108,101,102,116,32,60,32,40,117,110,115,105,103,110,101,100,41,104,45,62,119,105,100,116,104,0,104,45,62,115,112,115,46,99,114,111,112,95,116,111,112,32,43,32,104,45,62,115,112,115,46,99,114,111,112,95,98,111,116,116,111,109,32,60,32,40,117,110,115,105,103,110,101,100,41,104,45,62,104,101,105,103,104,116,0,73,110,118,97,108,105,100,32,99,114,111,112,112,101,100,32,100,105,109,101,110,115,105,111,110,115,58,32,37,100,120,37,100,46,10,0,73,103,110,111,114,105,110,103,32,99,114,111,112,112,105,110,103,32,105,110,102,111,114,109,97,116,105,111,110,46,10,0,99,104,97,110,103,105,110,103,32,119,105,100,116,104,32,37,100,32,45,62,32,37,100,32,47,32,104,101,105,103,104,116,32,37,100,32,45,62,32,37,100,32,111,110,32,115,108,105,99,101,32,37,100,10,0,82,101,105,110,105,116,32,99,111,110,116,101,120,116,32,116,111,32,37,100,120,37,100,44,32,112,105,120,95,102,109,116,58,32,37,115,10,0,104,50,54,52,95,115,108,105,99,101,95,104,101,97,100,101,114,95,105,110,105,116,40,41,32,102,97,105,108,101,100,10,0,67,97,110,110,111,116,32,40,114,101,45,41,105,110,105,116,105,97,108,105,122,101,32,99,111,110,116,101,120,116,32,100,117,114,105,110,103,32,112,97,114,97,108,108,101,108,32,100,101,99,111,100,105,110,103,46,10,0,70,114,97,109,101,32,110,117,109,32,99,104,97,110,103,101,32,102,114,111,109,32,37,100,32,116,111,32,37,100,10,0,84,104,105,115,32,115,116,114,101,97,109,32,119,97,115,32,103,101,110,101,114,97,116,101,100,32,98,121,32,97,32,98,114,111,107,101,110,32,101,110,99,111,100,101,114,44,32,105,110,118,97,108,105,100,32,56,120,56,32,105,110,102,101,114,101,110,99,101,10,0,67,104,97,110,103,105,110,103,32,102,105,101,108,100,32,109,111,100,101,32,40,37,100,32,45,62,32,37,100,41,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,32,105,115,32,110,111,116,32,97,108,108,111,119,101,100,10,0,117,110,115,101,116,32,99,117,114,95,112,105,99,95,112,116,114,32,111,110,32,115,108,105,99,101,32,37,100,10,0,104,45,62,99,117,114,95,112,105,99,95,112,116,114,0,104,45,62,99,117,114,95,112,105,99,95,112,116,114,45,62,102,45,62,98,117,102,91,48,93,0,73,110,118,97,108,105,100,32,102,105,101,108,100,32,109,111,100,101,32,99,111,109,98,105,110,97,116,105,111,110,32,37,100,47,37,100,10,0,70,111,117,110,100,32,114,101,102,101,114,101,110,99,101,32,97,110,100,32,110,111,110,45,114,101,102,101,114,101,110,99,101,32,102,105,101,108,100,115,32,105,110,32,116,104,101,32,115,97,109,101,32,102,114,97,109,101,44,32,119,104,105,99,104,0,70,114,97,109,101,32,110,117,109,32,103,97,112,32,37,100,32,37,100,10,0,65,116,116,101,109,112,116,32,116,111,32,115,116,97,114,116,32,97,32,102,114,97,109,101,32,111,117,116,115,105,100,101,32,83,69,84,85,80,32,115,116,97,116,101,10,0,110,111,32,102,114,97,109,101,32,98,117,102,102,101,114,32,97,118,97,105,108,97,98,108,101,10,0,33,112,105,99,45,62,102,45,62,100,97,116,97,91,48,93,0,33,112,105,99,45,62,104,119,97,99,99,101,108,95,112,105,99,116,117,114,101,95,112,114,105,118,97,116,101,0,102,105,114,115,116,95,109,98,95,105,110,95,115,108,105,99,101,32,111,118,101,114,102,108,111,119,10,0,99,97,98,97,99,95,105,110,105,116,95,105,100,99,32,37,117,32,111,118,101,114,102,108,111,119,10,0,81,80,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,100,101,98,108,111,99,107,105,110,103,95,102,105,108,116,101,114,95,105,100,99,32,37,117,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,100,101,98,108,111,99,107,105,110,103,32,102,105,108,116,101,114,32,112,97,114,97,109,101,116,101,114,115,32,37,100,32,37,100,32,111,117,116,32,111,102,32,114,97,110,103,101,10,0,67,97,110,110,111,116,32,112,97,114,97,108,108,101,108,105,122,101,32,115,108,105,99,101,32,100,101,99,111,100,105,110,103,32,119,105,116,104,32,100,101,98,108,111,99,107,105,110,103,32,102,105,108,116,101,114,32,116,121,112,101,32,49,44,32,100,101,99,111,100,105,110,103,32,115,117,99,104,32,102,114,97,109,101,115,32,105,110,32,115,101,113,117,101,110,116,105,97,108,32,111,114,100,101,114,10,84,111,32,112,97,114,97,108,108,101,108,105,122,101,32,115,108,105,99,101,32,100,101,99,111,100,105,110,103,32,121,111,117,32,110,101,101,100,32,118,105,100,101,111,32,101,110,99,111,100,101,100,32,119,105,116,104,32,100,105,115,97,98,108,101,95,100,101,98,108,111,99,107,105,110,103,95,102,105,108,116,101,114,95,105,100,99,32,115,101,116,32,116,111,32,50,32,40,100,101,98,108,111,99,107,32,111,110,108,121,32,101,100,103,101,115,32,116,104,97,116,32,100,111,32,110,111,116,32,99,114,111,115,115,32,115,108,105,99,101,115,41,46,10,83,101,116,116,105,110,103,32,116,104,101,32,102,108,97,103,115,50,32,108,105,98,97,118,99,111,100,101,99,32,111,112,116,105,111,110,32,116,111,32,43,102,97,115,116,32,40,45,102,108,97,103,115,50,32,43,102,97,115,116,41,32,119,105,108,108,32,100,105,115,97,98,108,101,32,100,101,98,108,111,99,107,105,110,103,32,97,99,114,111,115,115,32,115,108,105,99,101,115,32,97,110,100,32,101,110,97,98,108,101,32,112,97,114,97,108,108,101,108,32,115,108,105,99,101,32,100,101,99,111,100,105,110,103,32,98,117,116,32,119,105,108,108,32,103,101,110,101,114,97,116,101,32,110,111,110,45,115,116,97,110,100,97,114,100,45,99,111,109,112,108,105,97,110,116,32,111,117,116,112,117,116,46,10,0,68,101,98,108,111,99,107,105,110,103,32,115,119,105,116,99,104,101,100,32,105,110,115,105,100,101,32,102,114,97,109,101,46,10,0,80,111,115,115,105,98,108,121,32,116,111,111,32,109,97,110,121,32,115,108,105,99,101,115,32,40,37,100,32,62,61,32,37,100,41,44,32,105,110,99,114,101,97,115,101,32,77,65,88,95,83,76,73,67,69,83,32,97,110,100,32,114,101,99,111,109,112,105,108,101,32,105,102,32,116,104,101,114,101,32,97,114,101,32,97,114,116,105,102,97,99,116,115,10,0,84,0,66,0,70,0,32,102,105,120,0,32,73,68,82,0,99,0,83,80,65,84,0,84,69,77,80,0,115,108,105,99,101,58,37,100,32,37,115,32,109,98,58,37,100,32,37,99,37,115,37,115,32,112,112,115,58,37,117,32,102,114,97,109,101,58,37,100,32,112,111,99,58,37,100,47,37,100,32,114,101,102,58,37,100,47,37,100,32,113,112,58,37,100,32,108,111,111,112,58,37,100,58,37,100,58,37,100,32,119,101,105,103,104,116,58,37,100,37,115,32,37,115,10,0,99,111,110,116,101,120,116,95,99,111,117,110,116,32,38,38,32,104,45,62,115,108,105,99,101,95,99,116,120,91,99,111,110,116,101,120,116,95,99,111,117,110,116,32,45,32,49,93,46,109,98,95,121,32,60,32,104,45,62,109,98,95,104,101,105,103,104,116,0,104,45,62,98,108,111,99,107,95,111,102,102,115,101,116,91,49,53,93,32,61,61,32,40,52,32,42,32,40,40,115,99,97,110,56,91,49,53,93,32,45,32,115,99,97,110,56,91,48,93,41,32,38,32,55,41,32,60,60,32,104,45,62,112,105,120,101,108,95,115,104,105,102,116,41,32,43,32,52,32,42,32,115,108,45,62,108,105,110,101,115,105,122,101,32,42,32,40,40,115,99,97,110,56,91,49,53,93,32,45,32,115,99,97,110,56,91,48,93,41,32,62,62,32,51,41,0,83,108,105,99,101,32,111,118,101,114,108,97,112,115,32,119,105,116,104,32,110,101,120,116,32,97,116,32,37,100,10,0,98,121,116,101,115,116,114,101,97,109,32,111,118,101,114,114,101,97,100,32,37,116,100,10,0,101,114,114,111,114,32,119,104,105,108,101,32,100,101,99,111,100,105,110,103,32,77,66,32,37,100,32,37,100,44,32,98,121,116,101,115,116,114,101,97,109,32,37,116,100,10,0,101,114,114,111,114,32,119,104,105,108,101,32,100,101,99,111,100,105,110,103,32,77,66,32,37,100,32,37,100,10,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,100,115,112,46,99,0,12,13,20,21,14,15,22,23,28,29,36,37,30,31,38,39,52,53,60,61,54,55,62,63,68,69,76,77,70,71,78,79,92,93,100,101,94,95,102,103,108,109,116,117,110,111,118,119,0,40,80,0,32,128,160,0,16,98,105,116,95,100,101,112,116,104,60,61,56,0,108,105,98,97,118,99,111,100,101,99,47,104,50,54,52,112,114,101,100,46,99,0,0,0,0,0,1,0,2,0,3,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,104,101,118,99,0,72,69,86,67,32,100,101,99,111,100,101,114,0,97,112,112,108,121,95,100,101,102,100,105,115,112,119,105,110,0,65,112,112,108,121,32,100,101,102,97,117,108,116,32,100,105,115,112,108,97,121,32,119,105,110,100,111,119,32,102,114,111,109,32,86,85,73,0,115,116,114,105,99,116,45,100,105,115,112,108,97,121,119,105,110,0,115,116,114,105,99,108,121,32,97,112,112,108,121,32,100,101,102,97,117,108,116,32,100,105,115,112,108,97,121,32,119,105,110,100,111,119,32,115,105,122,101,0,98,117,102,95,115,105,122,101,32,62,61,32,48,0,108,105,98,97,118,99,111,100,101,99,47,98,121,116,101,115,116,114,101,97,109,46,104,0,73,110,118,97,108,105,100,32,78,65,76,32,117,110,105,116,32,115,105,122,101,32,105,110,32,101,120,116,114,97,100,97,116,97,46,10,0,69,114,114,111,114,32,115,112,108,105,116,116,105,110,103,32,116,104,101,32,105,110,112,117,116,32,105,110,116,111,32,78,65,76,32,117,110,105,116,115,46,10,0,80,80,83,32,99,104,97,110,103,101,100,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,46,10,0,73,110,118,97,108,105,100,32,115,108,105,99,101,32,115,101,103,109,101,110,116,32,97,100,100,114,101,115,115,58,32,37,117,46,10,0,85,110,107,110,111,119,110,32,115,108,105,99,101,32,116,121,112,101,58,32,37,100,46,10,0,73,110,116,101,114,32,115,108,105,99,101,115,32,105,110,32,97,110,32,73,82,65,80,32,102,114,97,109,101,46,10,0,73,103,110,111,114,105,110,103,32,80,79,67,32,99,104,97,110,103,101,32,98,101,116,119,101,101,110,32,115,108,105,99,101,115,58,32,37,100,32,45,62,32,37,100,10,0,78,111,32,114,101,102,32,108,105,115,116,115,32,105,110,32,116,104,101,32,83,80,83,46,10,0,73,110,118,97,108,105,100,32,108,111,110,103,32,116,101,114,109,32,82,80,83,46,10,0,84,111,111,32,109,97,110,121,32,114,101,102,115,58,32,37,100,47,37,100,46,10,0,90,101,114,111,32,114,101,102,115,32,102,111,114,32,97,32,102,114,97,109,101,32,119,105,116,104,32,80,32,111,114,32,66,32,115,108,105,99,101,115,46,10,0,73,110,118,97,108,105,100,32,99,111,108,108,111,99,97,116,101,100,95,114,101,102,95,105,100,120,58,32,37,100,46,10,0,108,117,109,97,95,108,111,103,50,95,119,101,105,103,104,116,95,100,101,110,111,109,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,109,101,114,103,105,110,103,32,77,86,80,32,99,97,110,100,105,100,97,116,101,115,58,32,37,100,46,10,0,73,110,100,101,112,101,110,100,101,110,116,32,115,108,105,99,101,32,115,101,103,109,101,110,116,32,109,105,115,115,105,110,103,46,10,0,110,117,109,95,101,110,116,114,121,95,112,111,105,110,116,95,111,102,102,115,101,116,115,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,111,102,102,115,101,116,95,108,101,110,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,10,0,116,111,111,32,109,97,110,121,32,115,108,105,99,101,95,104,101,97,100,101,114,95,101,120,116,101,110,115,105,111,110,95,100,97,116,97,95,98,121,116,101,115,10,0,84,104,101,32,115,108,105,99,101,95,113,112,32,37,100,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,118,97,108,105,100,32,114,97,110,103,101,32,91,37,100,44,32,53,49,93,46,10,0,73,109,112,111,115,115,105,98,108,101,32,115,108,105,99,101,32,115,101,103,109,101,110,116,46,10,0,79,118,101,114,114,101,97,100,32,115,108,105,99,101,32,104,101,97,100,101,114,32,98,121,32,37,100,32,98,105,116,115,10,0,69,114,114,111,114,32,99,111,110,115,116,114,117,99,116,105,110,103,32,116,104,101,32,102,114,97,109,101,32,82,80,83,46,10,0,77,97,115,116,101,114,105,110,103,32,68,105,115,112,108,97,121,32,77,101,116,97,100,97,116,97,58,10,0,114,40,37,53,46,52,102,44,37,53,46,52,102,41,32,103,40,37,53,46,52,102,44,37,53,46,52,102,41,32,98,40,37,53,46,52,102,32,37,53,46,52,102,41,32,119,112,40,37,53,46,52,102,44,32,37,53,46,52,102,41,10,0,109,105,110,95,108,117,109,105,110,97,110,99,101,61,37,102,44,32,109,97,120,95,108,117,109,105,110,97,110,99,101,61,37,102,10,0,70,105,114,115,116,32,115,108,105,99,101,32,105,110,32,97,32,102,114,97,109,101,32,109,105,115,115,105,110,103,46,10,0,78,111,110,45,109,97,116,99,104,105,110,103,32,78,65,76,32,116,121,112,101,115,32,111,102,32,116,104,101,32,86,67,76,32,78,65,76,85,115,58,32,37,100,32,37,100,10,0,69,114,114,111,114,32,99,111,110,115,116,114,117,99,116,105,110,103,32,116,104,101,32,114,101,102,101,114,101,110,99,101,32,108,105,115,116,115,32,102,111,114,32,116,104,101,32,99,117,114,114,101,110,116,32,115,108,105,99,101,46,10,0,87,80,80,32,99,116,98,32,97,100,100,114,101,115,115,101,115,32,97,114,101,32,119,114,111,110,103,32,40,37,100,32,37,100,32,37,100,32,37,100,41,10,0,101,110,116,114,121,95,112,111,105,110,116,95,111,102,102,115,101,116,32,116,97,98,108,101,32,105,115,32,99,111,114,114,117,112,116,101,100,10,0,0,26,10,1,0,1,2,2,2,2,3,5,7,8,10,12,13,15,17,18,19,20,21,22,23,23,24,24,25,25,26,27,27,28,28,29,29,30,31,99,117,95,99,104,114,111,109,97,95,113,112,95,111,102,102,115,101,116,95,105,100,120,32,110,111,116,32,121,101,116,32,116,101,115,116,101,100,46,10,0,84,104,101,32,99,117,95,113,112,95,100,101,108,116,97,32,37,100,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,118,97,108,105,100,32,114,97,110,103,101,32,91,37,100,44,32,37,100,93,46,10,0,73,109,112,111,115,115,105,98,108,101,32,105,110,105,116,105,97,108,32,116,105,108,101,46,10,0,80,114,101,118,105,111,117,115,32,115,108,105,99,101,32,115,101,103,109,101,110,116,32,109,105,115,115,105,110,103,10,0,83,107,105,112,112,105,110,103,32,78,65,76,32,117,110,105,116,32,37,100,10,0,69,114,114,111,114,32,112,97,114,115,105,110,103,32,78,65,76,32,117,110,105,116,32,35,37,100,46,10,0,68,101,99,111,100,105,110,103,32,110,97,108,32,117,110,105,116,32,37,100,32,37,100,32,102,114,111,109,32,104,118,99,67,32,102,97,105,108,101,100,10,0,104,97,114,100,119,97,114,101,32,97,99,99,101,108,101,114,97,116,111,114,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,112,105,99,116,117,114,101,10,0,86,101,114,105,102,121,105,110,103,32,99,104,101,99,107,115,117,109,32,102,111,114,32,102,114,97,109,101,32,119,105,116,104,32,80,79,67,32,37,100,58,32,0,112,108,97,110,101,32,37,100,32,45,32,99,111,114,114,101,99,116,32,0,37,48,50,120,0,59,32,0,109,105,115,109,97,116,99,104,105,110,103,32,99,104,101,99,107,115,117,109,32,111,102,32,112,108,97,110,101,32,37,100,32,45,32,0,32,33,61,32,0,10,0,68,101,99,111,100,101,100,32,102,114,97,109,101,32,119,105,116,104,32,80,79,67,32,37,100,46,10,0,153,200,139,141,157,154,154,154,154,154,154,154,154,184,154,154,154,184,63,139,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,153,138,138,111,141,94,138,182,154,139,139,139,139,139,139,110,110,124,125,140,153,125,127,140,109,111,143,127,111,79,108,123,63,110,110,124,125,140,153,125,127,140,109,111,143,127,111,79,108,123,63,91,171,134,141,111,111,125,110,110,94,124,108,124,107,125,141,179,153,125,107,125,141,179,153,125,107,125,141,179,153,125,140,139,182,182,152,136,152,136,153,136,139,111,136,139,111,141,111,140,92,137,138,140,152,138,139,153,74,149,92,139,107,122,152,140,179,166,182,140,227,122,197,138,153,136,167,152,152,154,154,154,154,154,154,154,154,154,154,154,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,185,107,139,126,154,197,185,201,154,154,154,149,154,139,154,154,154,152,139,110,122,95,79,63,31,31,153,153,153,153,140,198,140,198,168,79,124,138,94,153,111,149,107,167,154,139,139,139,139,139,139,125,110,94,110,95,79,125,111,110,78,110,111,111,95,94,108,123,108,125,110,94,110,95,79,125,111,110,78,110,111,111,95,94,108,123,108,121,140,61,154,155,154,139,153,139,123,123,63,153,166,183,140,136,153,154,166,183,140,136,153,154,166,183,140,136,153,154,170,153,123,123,107,121,107,121,167,151,183,140,151,183,140,140,140,154,196,196,167,154,152,167,182,182,134,149,136,153,121,136,137,169,194,166,167,154,167,137,182,107,167,91,122,107,167,154,154,154,154,154,154,154,154,154,154,154,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,160,107,139,126,154,197,185,201,154,154,154,134,154,139,154,154,183,152,139,154,137,95,79,63,31,31,153,153,153,153,169,198,169,198,168,79,224,167,122,153,111,149,92,167,154,139,139,139,139,139,139,125,110,124,110,95,94,125,111,111,79,125,126,111,111,79,108,123,93,125,110,124,110,95,94,125,111,111,79,125,126,111,111,79,108,123,93,121,140,61,154,170,154,139,153,139,123,123,63,124,166,183,140,136,153,154,166,183,140,136,153,154,166,183,140,136,153,154,170,153,138,138,122,121,122,121,167,151,183,140,151,183,140,140,140,154,196,167,167,154,152,167,182,182,134,149,136,153,121,136,122,169,208,166,167,154,152,167,182,107,167,91,107,107,167,154,154,154,154,154,154,154,154,154,154,154,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,65,66,65,67,95,77,65,88,95,66,73,78,32,58,32,37,100,10,0,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5,0,1,0,0,40,45,51,57,64,72,0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,11,11,11,11,11,11,12,12,0,0,0,2,5,9,1,4,8,12,3,7,11,14,6,10,13,15,0,2,1,3,0,2,5,9,14,20,27,35,1,4,8,13,19,26,34,42,3,7,12,18,25,33,41,48,6,11,17,24,32,40,47,53,10,16,23,31,39,46,52,57,15,22,30,38,45,51,56,60,21,29,37,44,50,55,59,62,28,36,43,49,54,58,61,63,0,1,2,3,16,17,18,19,4,5,6,7,20,21,22,23,8,9,10,11,24,25,26,27,12,13,14,15,28,29,30,31,32,33,34,35,48,49,50,51,36,37,38,39,52,53,54,55,40,41,42,43,56,57,58,59,44,45,46,47,60,61,62,63,0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,0,1,0,1,0,0,1,1,0,1,4,5,2,3,4,5,6,6,8,8,7,7,8,8,1,1,1,0,1,1,0,0,1,0,0,0,0,0,0,0,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,2,1,0,0,2,1,0,0,2,1,0,0,2,1,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,1,0,1,2,0,1,2,3,1,2,3,2,3,3,0,1,0,2,1,0,3,2,1,0,3,2,1,3,2,3,0,0,1,0,1,2,0,1,2,3,0,1,2,3,4,0,1,2,3,4,5,0,1,2,3,4,5,6,0,1,2,3,4,5,6,7,1,2,3,4,5,6,7,2,3,4,5,6,7,3,4,5,6,7,4,5,6,7,5,6,7,6,7,7,0,1,0,2,1,0,3,2,1,0,4,3,2,1,0,5,4,3,2,1,0,6,5,4,3,2,1,0,7,6,5,4,3,2,1,0,7,6,5,4,3,2,1,7,6,5,4,3,2,7,6,5,4,3,7,6,5,4,7,6,5,7,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,8,9,10,11,12,13,14,15,16,17,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,5,5,6,6,7,8,9,10,11,13,14,16,18,20,22,24,0,1,2,2,3,3,4,4,0,1,1,0,0,2,2,0,1,2,2,1,0,3,3,0,1,3,3,1,2,3,3,2,110,97,108,45,62,115,107,105,112,112,101,100,95,98,121,116,101,115,95,112,111,115,95,115,105,122,101,32,62,61,32,110,97,108,45,62,115,107,105,112,112,101,100,95,98,121,116,101,115,0,108,105,98,97,118,99,111,100,101,99,47,104,101,118,99,95,112,97,114,115,101,46,99,0,73,110,118,97,108,105,100,32,78,65,76,32,117,110,105,116,32,115,105,122,101,46,10,0,78,111,32,115,116,97,114,116,32,99,111,100,101,32,105,115,32,102,111,117,110,100,46,10,0,63,0,83,69,73,95,83,85,70,70,73,88,0,83,69,73,95,80,82,69,70,73,88,0,70,68,95,78,85,84,0,69,79,66,95,78,85,84,0,69,79,83,95,78,85,84,0,65,85,68,0,80,80,83,0,83,80,83,0,86,80,83,0,67,82,65,95,78,85,84,0,73,68,82,95,78,95,76,80,0,73,68,82,95,87,95,82,65,68,76,0,66,76,65,95,78,95,76,80,0,66,76,65,95,87,95,82,65,68,76,0,66,76,65,95,87,95,76,80,0,82,65,83,76,95,82,0,82,65,83,76,95,78,0,82,65,68,76,95,82,0,82,65,68,76,95,78,0,83,84,83,65,95,82,0,83,84,83,65,95,78,0,84,83,65,95,82,0,84,83,65,95,78,0,84,82,65,73,76,95,82,0,84,82,65,73,76,95,78,0,110,97,108,95,117,110,105,116,95,116,121,112,101,58,32,37,100,40,37,115,41,44,32,110,117,104,95,108,97,121,101,114,95,105,100,58,32,37,100,44,32,116,101,109,112,111,114,97,108,95,105,100,58,32,37,100,10,0,73,110,118,97,108,105,100,32,78,65,76,32,117,110,105,116,32,37,100,44,32,115,107,105,112,112,105,110,103,46,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,111,102,32,100,101,108,116,97,95,105,100,120,32,105,110,32,115,108,105,99,101,32,104,101,97,100,101,114,32,82,80,83,58,32,37,100,32,62,32,37,100,46,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,111,102,32,97,98,115,95,100,101,108,116,97,95,114,112,115,58,32,37,100,10,0,84,111,111,32,109,97,110,121,32,114,101,102,115,32,105,110,32,97,32,115,104,111,114,116,32,116,101,114,109,32,82,80,83,46,10,0,68,101,99,111,100,105,110,103,32,86,80,83,10,0,118,112,115,95,114,101,115,101,114,118,101,100,95,116,104,114,101,101,95,50,98,105,116,115,32,105,115,32,110,111,116,32,116,104,114,101,101,10,0,118,112,115,95,114,101,115,101,114,118,101,100,95,102,102,102,102,95,49,54,98,105,116,115,32,105,115,32,110,111,116,32,48,120,102,102,102,102,10,0,118,112,115,95,109,97,120,95,115,117,98,95,108,97,121,101,114,115,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,77,97,105,110,32,112,114,111,102,105,108,101,32,98,105,116,115,116,114,101,97,109,10,0,77,97,105,110,32,49,48,32,112,114,111,102,105,108,101,32,98,105,116,115,116,114,101,97,109,10,0,77,97,105,110,32,83,116,105,108,108,32,80,105,99,116,117,114,101,32,112,114,111,102,105,108,101,32,98,105,116,115,116,114,101,97,109,10,0,82,97,110,103,101,32,69,120,116,101,110,115,105,111,110,32,112,114,111,102,105,108,101,32,98,105,116,115,116,114,101,97,109,10,0,85,110,107,110,111,119,110,32,72,69,86,67,32,112,114,111,102,105,108,101,58,32,37,100,10,0,80,84,76,32,105,110,102,111,114,109,97,116,105,111,110,32,116,111,111,32,115,104,111,114,116,10,0,80,84,76,32,105,110,102,111,114,109,97,116,105,111,110,32,102,111,114,32,115,117,98,108,97,121,101,114,32,37,105,32,116,111,111,32,115,104,111,114,116,10,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,102,111,114,32,115,117,98,108,97,121,101,114,32,37,105,32,108,101,118,101,108,95,105,100,99,10,0,118,112,115,95,109,97,120,95,100,101,99,95,112,105,99,95,98,117,102,102,101,114,105,110,103,95,109,105,110,117,115,49,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,118,112,115,95,109,97,120,95,110,117,109,95,114,101,111,114,100,101,114,95,112,105,99,115,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,116,111,111,32,109,97,110,121,32,108,97,121,101,114,95,105,100,95,105,110,99,108,117,100,101,100,95,102,108,97,103,115,10,0,118,112,115,95,110,117,109,95,104,114,100,95,112,97,114,97,109,101,116,101,114,115,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,110,98,95,99,112,98,32,37,100,32,105,110,118,97,108,105,100,10,0,79,118,101,114,114,101,97,100,32,86,80,83,32,98,121,32,37,100,32,98,105,116,115,10,0,33,40,115,45,62,115,112,115,95,108,105,115,116,91,105,100,93,32,38,38,32,115,45,62,115,112,115,32,61,61,32,40,72,69,86,67,83,80,83,42,41,115,45,62,115,112,115,95,108,105,115,116,91,105,100,93,45,62,100,97,116,97,41,0,108,105,98,97,118,99,111,100,101,99,47,104,101,118,99,95,112,115,46,99,0,86,80,83,32,37,100,32,100,111,101,115,32,110,111,116,32,101,120,105,115,116,10,0,115,112,115,95,109,97,120,95,115,117,98,95,108,97,121,101,114,115,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,83,80,83,32,105,100,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,99,104,114,111,109,97,95,102,111,114,109,97,116,95,105,100,99,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,100,105,115,99,97,114,100,105,110,103,32,115,112,115,32,99,111,110,102,111,114,109,97,110,99,101,32,119,105,110,100,111,119,44,32,111,114,105,103,105,110,97,108,32,118,97,108,117,101,115,32,97,114,101,32,108,58,37,117,32,114,58,37,117,32,116,58,37,117,32,98,58,37,117,10,0,76,117,109,97,32,98,105,116,32,100,101,112,116,104,32,40,37,100,41,32,105,115,32,100,105,102,102,101,114,101,110,116,32,102,114,111,109,32,99,104,114,111,109,97,32,98,105,116,32,100,101,112,116,104,32,40,37,100,41,44,32,116,104,105,115,32,105,115,32,117,110,115,117,112,112,111,114,116,101,100,46,10,0,52,58,50,58,48,44,32,52,58,50,58,50,44,32,52,58,52,58,52,32,115,117,112,112,111,114,116,115,32,97,114,101,32,99,117,114,114,101,110,116,108,121,32,115,112,101,99,105,102,105,101,100,32,102,111,114,32,56,44,32,49,48,32,97,110,100,32,49,50,32,98,105,116,115,46,10,0,99,104,114,111,109,97,95,102,111,114,109,97,116,95,105,100,99,32,105,115,32,37,100,44,32,100,101,112,116,104,32,105,115,32,37,100,0,108,111,103,50,95,109,97,120,95,112,105,99,95,111,114,100,101,114,95,99,110,116,95,108,115,98,95,109,105,110,117,115,52,32,111,117,116,32,114,97,110,103,101,58,32,37,100,10,0,115,112,115,95,109,97,120,95,100,101,99,95,112,105,99,95,98,117,102,102,101,114,105,110,103,95,109,105,110,117,115,49,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,115,112,115,95,109,97,120,95,110,117,109,95,114,101,111,114,100,101,114,95,112,105,99,115,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,37,100,32,102,111,114,32,108,111,103,50,95,109,105,110,95,99,98,95,115,105,122,101,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,37,100,32,102,111,114,32,108,111,103,50,95,100,105,102,102,95,109,97,120,95,109,105,110,95,99,111,100,105,110,103,95,98,108,111,99,107,95,115,105,122,101,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,108,111,103,50,95,109,105,110,95,116,98,95,115,105,122,101,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,37,100,32,102,111,114,32,108,111,103,50,95,100,105,102,102,95,109,97,120,95,109,105,110,95,116,114,97,110,115,102,111,114,109,95,98,108,111,99,107,95,115,105,122,101,0,16,16,16,16,17,18,21,24,16,16,16,16,17,19,22,25,16,16,17,18,20,22,25,29,16,16,18,21,24,27,31,36,17,17,20,24,30,35,41,47,18,19,22,27,35,44,54,65,21,22,25,31,41,54,70,88,24,25,29,36,47,65,88,115,16,16,16,16,17,18,20,24,16,16,16,17,18,20,24,25,16,16,17,18,20,24,25,28,16,17,18,20,24,25,28,33,17,18,20,24,25,28,33,41,18,20,24,25,28,33,41,54,20,24,25,28,33,41,54,71,24,25,28,33,41,54,71,91,73,110,118,97,108,105,100,32,100,101,108,116,97,32,105,110,32,115,99,97,108,105,110,103,32,108,105,115,116,32,100,97,116,97,58,32,37,100,46,10,0,80,67,77,32,98,105,116,32,100,101,112,116,104,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,110,111,114,109,97,108,32,98,105,116,32,100,101,112,116,104,32,40,37,100,41,10,0,84,111,111,32,109,97,110,121,32,115,104,111,114,116,32,116,101,114,109,32,82,80,83,58,32,37,100,46,10,0,110,117,109,95,108,111,110,103,95,116,101,114,109,95,114,101,102,95,112,105,99,115,95,115,112,115,32,37,100,32,105,115,32,111,117,116,32,111,102,32,114,97,110,103,101,46,10,0,68,101,99,111,100,105,110,103,32,86,85,73,10,0,85,110,107,110,111,119,110,32,83,65,82,32,105,110,100,101,120,58,32,37,117,46,10,0,73,110,118,97,108,105,100,32,100,101,102,97,117,108,116,32,100,105,115,112,108,97,121,32,119,105,110,100,111,119,10,0,100,105,115,99,97,114,100,105,110,103,32,118,117,105,32,100,101,102,97,117,108,116,32,100,105,115,112,108,97,121,32,119,105,110,100,111,119,44,32,111,114,105,103,105,110,97,108,32,118,97,108,117,101,115,32,97,114,101,32,108,58,37,117,32,114,58,37,117,32,116,58,37,117,32,98,58,37,117,10,0,83,116,114,97,110,103,101,32,86,85,73,32,116,105,109,105,110,103,32,105,110,102,111,114,109,97,116,105,111,110,44,32,114,101,116,114,121,105,110,103,46,46,46,10,0,82,101,116,114,121,32,103,111,116,32,37,105,47,37,105,32,102,112,115,10,0,101,120,116,101,110,100,101,100,95,112,114,101,99,105,115,105,111,110,95,112,114,111,99,101,115,115,105,110,103,95,102,108,97,103,32,110,111,116,32,121,101,116,32,105,109,112,108,101,109,101,110,116,101,100,10,0,104,105,103,104,95,112,114,101,99,105,115,105,111,110,95,111,102,102,115,101,116,115,95,101,110,97,98,108,101,100,95,102,108,97,103,32,110,111,116,32,121,101,116,32,105,109,112,108,101,109,101,110,116,101,100,10,0,99,97,98,97,99,95,98,121,112,97,115,115,95,97,108,105,103,110,109,101,110,116,95,101,110,97,98,108,101,100,95,102,108,97,103,32,110,111,116,32,121,101,116,32,105,109,112,108,101,109,101,110,116,101,100,10,0,82,101,100,117,99,105,110,103,32,108,101,102,116,32,111,117,116,112,117,116,32,119,105,110,100,111,119,32,116,111,32,37,100,32,99,104,114,111,109,97,32,115,97,109,112,108,101,115,32,116,111,32,112,114,101,115,101,114,118,101,32,97,108,105,103,110,109,101,110,116,46,10,0,73,110,118,97,108,105,100,32,118,105,115,105,98,108,101,32,102,114,97,109,101,32,100,105,109,101,110,115,105,111,110,115,58,32,37,100,120,37,100,46,10,0,68,105,115,112,108,97,121,105,110,103,32,116,104,101,32,119,104,111,108,101,32,118,105,100,101,111,32,115,117,114,102,97,99,101,46,10,0,67,84,66,32,115,105,122,101,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,50,94,37,100,10,0,108,111,103,50,95,99,116,98,95,115,105,122,101,32,37,100,32,100,105,102,102,101,114,115,32,102,114,111,109,32,116,104,101,32,98,111,117,110,100,115,32,111,102,32,97,110,121,32,107,110,111,119,110,32,112,114,111,102,105,108,101,10,0,108,111,103,50,95,99,116,98,95,115,105,122,101,32,37,100,0,73,110,118,97,108,105,100,32,99,111,100,101,100,32,102,114,97,109,101,32,100,105,109,101,110,115,105,111,110,115,46,10,0,109,97,120,95,116,114,97,110,115,102,111,114,109,95,104,105,101,114,97,114,99,104,121,95,100,101,112,116,104,95,105,110,116,101,114,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,109,97,120,95,116,114,97,110,115,102,111,114,109,95,104,105,101,114,97,114,99,104,121,95,100,101,112,116,104,95,105,110,116,114,97,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,109,97,120,32,116,114,97,110,115,102,111,114,109,32,98,108,111,99,107,32,115,105,122,101,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,79,118,101,114,114,101,97,100,32,83,80,83,32,98,121,32,37,100,32,98,105,116,115,10,0,68,101,99,111,100,105,110,103,32,83,80,83,10,0,80,97,114,115,101,100,32,83,80,83,58,32,105,100,32,37,100,59,32,99,111,100,101,100,32,119,120,104,58,32,37,100,120,37,100,59,32,99,114,111,112,112,101,100,32,119,120,104,58,32,37,100,120,37,100,59,32,112,105,120,95,102,109,116,58,32,37,115,46,10,0,68,101,99,111,100,105,110,103,32,80,80,83,10,0,80,80,83,32,105,100,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,83,80,83,32,37,117,32,100,111,101,115,32,110,111,116,32,101,120,105,115,116,46,10,0,100,105,102,102,95,99,117,95,113,112,95,100,101,108,116,97,95,100,101,112,116,104,32,37,100,32,105,115,32,105,110,118,97,108,105,100,10,0,112,112,115,95,99,98,95,113,112,95,111,102,102,115,101,116,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,112,112,115,95,99,114,95,113,112,95,111,102,102,115,101,116,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,110,117,109,95,116,105,108,101,95,99,111,108,117,109,110,115,95,109,105,110,117,115,49,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,110,117,109,95,116,105,108,101,95,114,111,119,115,95,109,105,110,117,115,49,32,111,117,116,32,111,102,32,114,97,110,103,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+117136),allocate([58,32,37,100,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,119,105,100,116,104,115,46,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,104,101,105,103,104,116,115,46,10,0,112,112,115,95,98,101,116,97,95,111,102,102,115,101,116,95,100,105,118,50,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,112,112,115,95,116,99,95,111,102,102,115,101,116,95,100,105,118,50,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,108,111,103,50,95,112,97,114,97,108,108,101,108,95,109,101,114,103,101,95,108,101,118,101,108,95,109,105,110,117,115,50,32,111,117,116,32,111,102,32,114,97,110,103,101,58,32,37,100,10,0,99,104,114,111,109,97,95,113,112,95,111,102,102,115,101,116,95,108,105,115,116,95,108,101,110,95,109,105,110,117,115,49,32,115,104,97,108,108,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,48,44,32,53,93,46,10,0,99,98,95,113,112,95,111,102,102,115,101,116,95,108,105,115,116,32,110,111,116,32,116,101,115,116,101,100,32,121,101,116,46,10,0,79,118,101,114,114,101,97,100,32,80,80,83,32,98,121,32,37,100,32,98,105,116,115,10,0,68,117,112,108,105,99,97,116,101,32,80,79,67,32,105,110,32,97,32,115,101,113,117,101,110,99,101,58,32,37,100,46,10,0,33,102,114,97,109,101,45,62,104,119,97,99,99,101,108,95,112,105,99,116,117,114,101,95,112,114,105,118,97,116,101,0,108,105,98,97,118,99,111,100,101,99,47,104,101,118,99,95,114,101,102,115,46,99,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,102,114,97,109,101,44,32,68,80,66,32,102,117,108,108,46,10,0,79,117,116,112,117,116,32,102,114,97,109,101,32,119,105,116,104,32,80,79,67,32,37,100,46,10,0,90,101,114,111,32,114,101,102,115,32,105,110,32,116,104,101,32,102,114,97,109,101,32,82,80,83,46,10,0,73,110,118,97,108,105,100,32,114,101,102,101,114,101,110,99,101,32,105,110,100,101,120,46,10,0,67,111,117,108,100,32,110,111,116,32,102,105,110,100,32,114,101,102,32,119,105,116,104,32,80,79,67,32,37,100,10,0,68,101,99,111,100,105,110,103,32,83,69,73,10,0,66,79,84,84,79,77,32,70,105,101,108,100,10,0,84,79,80,32,70,105,101,108,100,10,0,110,117,109,95,115,112,115,95,105,100,115,95,109,105,110,117,115,49,32,37,100,32,105,110,118,97,108,105,100,10,0,97,99,116,105,118,101,95,112,97,114,97,109,101,116,101,114,95,115,101,116,95,105,100,32,37,100,32,105,110,118,97,108,105,100,10,0,83,107,105,112,112,101,100,32,80,82,69,70,73,88,32,83,69,73,32,37,100,10,0,83,107,105,112,112,101,100,32,83,85,70,70,73,88,32,83,69,73,32,37,100,10,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,90,90,88,85,82,78,73,67,61,54,46,38,31,22,13,4,252,243,234,225,218,210,202,195,189,183,178,174,171,168,166,166,90,87,80,70,57,43,25,9,247,231,213,199,186,176,169,166,166,169,176,186,199,213,231,247,9,25,43,57,70,80,87,90,90,82,67,46,22,252,225,202,183,171,166,168,178,195,218,243,13,38,61,78,88,90,85,73,54,31,4,234,210,189,174,166,89,75,50,18,238,206,181,167,167,181,206,238,18,50,75,89,89,75,50,18,238,206,181,167,167,181,206,238,18,50,75,89,88,67,31,243,202,174,166,178,210,252,38,73,90,85,61,22,234,195,171,166,183,218,4,46,78,90,82,54,13,225,189,168,87,57,9,213,176,166,186,231,25,70,90,80,43,247,199,169,169,199,247,43,80,90,70,25,231,186,166,176,213,9,57,87,85,46,243,189,166,183,234,38,82,88,54,252,195,166,178,225,31,78,90,61,4,202,168,174,218,22,73,90,67,13,210,171,83,36,220,173,173,220,36,83,83,36,220,173,173,220,36,83,83,36,220,173,173,220,36,83,83,36,220,173,173,220,36,83,82,22,202,166,195,13,78,85,31,210,166,189,4,73,88,38,218,168,183,252,67,90,46,225,171,178,243,61,90,54,234,174,80,9,186,169,231,57,90,43,213,166,199,25,87,70,247,176,176,247,70,87,25,199,166,213,43,90,57,231,169,186,9,80,78,252,174,183,13,85,67,234,168,195,31,90,54,218,166,210,46,90,38,202,166,225,61,88,22,189,171,243,73,82,4,178,75,238,167,206,50,89,18,181,181,18,89,50,206,167,238,75,75,238,167,206,50,89,18,181,181,18,89,50,206,167,238,75,73,225,166,234,78,67,218,166,243,82,61,210,168,252,85,54,202,171,4,88,46,195,174,13,90,38,189,178,22,90,31,183,70,213,169,9,90,25,176,199,57,80,231,166,247,87,43,186,186,43,87,247,166,231,80,57,199,176,25,90,9,169,213,70,67,202,178,38,85,234,166,4,90,13,168,225,82,46,183,195,61,73,210,174,31,88,243,166,252,90,22,171,218,78,54,189,64,192,192,64,64,192,192,64,64,192,192,64,64,192,192,64,64,192,192,64,64,192,192,64,64,192,192,64,64,192,192,64,61,183,210,82,31,168,243,90,252,166,22,85,218,178,54,67,189,202,78,38,171,234,90,4,166,13,88,225,174,46,73,195,57,176,231,90,247,169,43,70,186,213,87,9,166,25,80,199,199,80,25,166,9,87,213,186,70,43,169,247,90,231,176,57,54,171,252,88,210,195,82,13,166,38,67,178,234,90,225,183,73,31,166,22,78,189,218,90,243,174,61,46,168,4,85,202,50,167,18,75,181,238,89,206,206,89,238,181,75,18,167,50,50,167,18,75,181,238,89,206,206,89,238,181,75,18,167,50,46,166,38,54,166,31,61,168,22,67,171,13,73,174,4,78,178,252,82,183,243,85,189,234,88,195,225,90,202,218,90,210,43,166,57,25,169,70,9,176,80,247,186,87,231,199,90,213,213,90,199,231,87,186,247,80,176,9,70,169,25,57,166,43,38,168,73,252,189,90,210,225,85,178,13,61,166,54,22,174,82,234,202,90,195,243,78,171,31,46,166,67,4,183,88,218,36,173,83,220,220,83,173,36,36,173,83,220,220,83,173,36,36,173,83,220,220,83,173,36,36,173,83,220,220,83,173,36,31,178,90,195,4,54,168,82,218,234,73,166,67,243,210,85,171,46,13,189,90,183,22,38,174,88,202,252,61,166,78,225,25,186,90,176,43,9,199,87,169,57,247,213,80,166,70,231,231,70,166,80,213,247,57,169,87,199,9,43,176,90,186,25,22,195,85,166,73,218,252,46,178,90,174,54,243,225,67,168,88,189,31,13,202,82,166,78,210,4,38,183,90,171,61,234,18,206,75,167,89,181,50,238,238,50,181,89,167,75,206,18,18,206,75,167,89,181,50,238,238,50,181,89,167,75,206,18,13,218,61,178,88,166,85,183,54,225,4,22,210,67,174,90,166,82,189,46,234,252,31,202,73,171,90,168,78,195,38,243,9,231,43,199,70,176,87,166,90,169,80,186,57,213,25,247,247,25,213,57,186,80,169,90,166,87,176,70,199,43,231,9,4,243,22,225,38,210,54,195,67,183,78,174,85,168,90,166,90,166,88,171,82,178,73,189,61,202,46,218,31,234,13,252,255,0,1,0,0,255,0,1,255,255,1,1,1,255,255,1,1,2,0,3,4],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+127376),allocate([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63,65,86,67,111,100,101,99,67,111,110,116,101,120,116,0,78,85,76,76,0,98,0,115,101,116,32,98,105,116,114,97,116,101,32,40,105,110,32,98,105,116,115,47,115,41,0,97,98,0,98,116,0,83,101,116,32,118,105,100,101,111,32,98,105,116,114,97,116,101,32,116,111,108,101,114,97,110,99,101,32,40,105,110,32,98,105,116,115,47,115,41,46,32,73,110,32,49,45,112,97,115,115,32,109,111,100,101,44,32,98,105,116,114,97,116,101,32,116,111,108,101,114,97,110,99,101,32,115,112,101,99,105,102,105,101,115,32,104,111,119,32,102,97,114,32,114,97,116,101,99,111,110,116,114,111,108,32,105,115,32,119,105,108,108,105,110,103,32,116,111,32,100,101,118,105,97,116,101,32,102,114,111,109,32,116,104,101,32,116,97,114,103,101,116,32,97,118,101,114,97,103,101,32,98,105,116,114,97,116,101,32,118,97,108,117,101,46,32,84,104,105,115,32,105,115,32,110,111,116,32,114,101,108,97,116,101,100,32,116,111,32,109,105,110,105,109,117,109,47,109,97,120,105,109,117,109,32,98,105,116,114,97,116,101,46,32,76,111,119,101,114,105,110,103,32,116,111,108,101,114,97,110,99,101,32,116,111,111,32,109,117,99,104,32,104,97,115,32,97,110,32,97,100,118,101,114,115,101,32,101,102,102,101,99,116,32,111,110,32,113,117,97,108,105,116,121,46,0,102,108,97,103,115,0,117,110,97,108,105,103,110,101,100,0,97,108,108,111,119,32,100,101,99,111,100,101,114,115,32,116,111,32,112,114,111,100,117,99,101,32,117,110,97,108,105,103,110,101,100,32,111,117,116,112,117,116,0,109,118,52,0,117,115,101,32,102,111,117,114,32,109,111,116,105,111,110,32,118,101,99,116,111,114,115,32,112,101,114,32,109,97,99,114,111,98,108,111,99,107,32,40,77,80,69,71,45,52,41,0,113,112,101,108,0,117,115,101,32,49,47,52,45,112,101,108,32,109,111,116,105,111,110,32,99,111,109,112,101,110,115,97,116,105,111,110,0,108,111,111,112,0,117,115,101,32,108,111,111,112,32,102,105,108,116,101,114,0,113,115,99,97,108,101,0,117,115,101,32,102,105,120,101,100,32,113,115,99,97,108,101,0,103,109,99,0,117,115,101,32,103,109,99,0,109,118,48,0,97,108,119,97,121,115,32,116,114,121,32,97,32,109,98,32,119,105,116,104,32,109,118,61,60,48,44,48,62,0,105,110,112,117,116,95,112,114,101,115,101,114,118,101,100,0,112,97,115,115,49,0,117,115,101,32,105,110,116,101,114,110,97,108,32,50,45,112,97,115,115,32,114,97,116,101,99,111,110,116,114,111,108,32,105,110,32,102,105,114,115,116,32,32,112,97,115,115,32,109,111,100,101,0,112,97,115,115,50,0,117,115,101,32,105,110,116,101,114,110,97,108,32,50,45,112,97,115,115,32,114,97,116,101,99,111,110,116,114,111,108,32,105,110,32,115,101,99,111,110,100,32,112,97,115,115,32,109,111,100,101,0,111,110,108,121,32,100,101,99,111,100,101,47,101,110,99,111,100,101,32,103,114,97,121,115,99,97,108,101,0,101,109,117,95,101,100,103,101,0,100,111,32,110,111,116,32,100,114,97,119,32,101,100,103,101,115,0,112,115,110,114,0,101,114,114,111,114,91,63,93,32,118,97,114,105,97,98,108,101,115,32,119,105,108,108,32,98,101,32,115,101,116,32,100,117,114,105,110,103,32,101,110,99,111,100,105,110,103,0,116,114,117,110,99,97,116,101,100,0,73,110,112,117,116,32,98,105,116,115,116,114,101,97,109,32,109,105,103,104,116,32,98,101,32,114,97,110,100,111,109,108,121,32,116,114,117,110,99,97,116,101,100,0,110,97,113,0,110,111,114,109,97,108,105,122,101,32,97,100,97,112,116,105,118,101,32,113,117,97,110,116,105,122,97,116,105,111,110,0,105,108,100,99,116,0,117,115,101,32,105,110,116,101,114,108,97,99,101,100,32,68,67,84,0,108,111,119,95,100,101,108,97,121,0,102,111,114,99,101,32,108,111,119,32,100,101,108,97,121,0,103,108,111,98,97,108,95,104,101,97,100,101,114,0,112,108,97,99,101,32,103,108,111,98,97,108,32,104,101,97,100,101,114,115,32,105,110,32,101,120,116,114,97,100,97,116,97,32,105,110,115,116,101,97,100,32,111,102,32,101,118,101,114,121,32,107,101,121,102,114,97,109,101,0,98,105,116,101,120,97,99,116,0,117,115,101,32,111,110,108,121,32,98,105,116,101,120,97,99,116,32,102,117,110,99,116,105,111,110,115,32,40,101,120,99,101,112,116,32,40,73,41,68,67,84,41,0,97,105,99,0,72,46,50,54,51,32,97,100,118,97,110,99,101,100,32,105,110,116,114,97,32,99,111,100,105,110,103,32,47,32,77,80,69,71,45,52,32,65,67,32,112,114,101,100,105,99,116,105,111,110,0,105,108,109,101,0,105,110,116,101,114,108,97,99,101,100,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,99,103,111,112,0,99,108,111,115,101,100,32,71,79,80,0,111,117,116,112,117,116,95,99,111,114,114,117,112,116,0,79,117,116,112,117,116,32,101,118,101,110,32,112,111,116,101,110,116,105,97,108,108,121,32,99,111,114,114,117,112,116,101,100,32,102,114,97,109,101,115,0,102,97,115,116,0,97,108,108,111,119,32,110,111,110,45,115,112,101,99,45,99,111,109,112,108,105,97,110,116,32,115,112,101,101,100,117,112,32,116,114,105,99,107,115,0,102,108,97,103,115,50,0,110,111,111,117,116,0,115,107,105,112,32,98,105,116,115,116,114,101,97,109,32,101,110,99,111,100,105,110,103,0,105,103,110,111,114,101,99,114,111,112,0,105,103,110,111,114,101,32,99,114,111,112,112,105,110,103,32,105,110,102,111,114,109,97,116,105,111,110,32,102,114,111,109,32,115,112,115,0,108,111,99,97,108,95,104,101,97,100,101,114,0,112,108,97,99,101,32,103,108,111,98,97,108,32,104,101,97,100,101,114,115,32,97,116,32,101,118,101,114,121,32,107,101,121,102,114,97,109,101,32,105,110,115,116,101,97,100,32,111,102,32,105,110,32,101,120,116,114,97,100,97,116,97,0,99,104,117,110,107,115,0,70,114,97,109,101,32,100,97,116,97,32,109,105,103,104,116,32,98,101,32,115,112,108,105,116,32,105,110,116,111,32,109,117,108,116,105,112,108,101,32,99,104,117,110,107,115,0,115,104,111,119,97,108,108,0,83,104,111,119,32,97,108,108,32,102,114,97,109,101,115,32,98,101,102,111,114,101,32,116,104,101,32,102,105,114,115,116,32,107,101,121,102,114,97,109,101,0,101,120,112,111,114,116,95,109,118,115,0,101,120,112,111,114,116,32,109,111,116,105,111,110,32,118,101,99,116,111,114,115,32,116,104,114,111,117,103,104,32,102,114,97,109,101,32,115,105,100,101,32,100,97,116,97,0,115,107,105,112,95,109,97,110,117,97,108,0,100,111,32,110,111,116,32,115,107,105,112,32,115,97,109,112,108,101,115,32,97,110,100,32,101,120,112,111,114,116,32,115,107,105,112,32,105,110,102,111,114,109,97,116,105,111,110,32,97,115,32,102,114,97,109,101,32,115,105,100,101,32,100,97,116,97,0,109,101,95,109,101,116,104,111,100,0,115,101,116,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,109,101,116,104,111,100,0,122,101,114,111,0,122,101,114,111,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,40,102,97,115,116,101,115,116,41,0,102,117,108,108,0,102,117,108,108,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,40,115,108,111,119,101,115,116,41,0,101,112,122,115,0,69,80,90,83,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,101,115,97,0,101,115,97,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,40,97,108,105,97,115,32,102,111,114,32,102,117,108,108,41,0,116,101,115,97,0,116,101,115,97,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,100,105,97,0,100,105,97,109,111,110,100,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,40,97,108,105,97,115,32,102,111,114,32,69,80,90,83,41,0,108,111,103,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,112,104,111,100,115,0,112,104,111,100,115,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,120,49,0,88,49,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,104,101,120,0,104,101,120,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,117,109,104,0,117,109,104,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,105,116,101,114,0,105,116,101,114,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,116,105,109,101,95,98,97,115,101,0,103,0,115,101,116,32,116,104,101,32,103,114,111,117,112,32,111,102,32,112,105,99,116,117,114,101,32,40,71,79,80,41,32,115,105,122,101,0,97,114,0,115,101,116,32,97,117,100,105,111,32,115,97,109,112,108,105,110,103,32,114,97,116,101,32,40,105,110,32,72,122,41,0,97,99,0,115,101,116,32,110,117,109,98,101,114,32,111,102,32,97,117,100,105,111,32,99,104,97,110,110,101,108,115,0,99,117,116,111,102,102,0,115,101,116,32,99,117,116,111,102,102,32,98,97,110,100,119,105,100,116,104,0,102,114,97,109,101,95,115,105,122,101,0,102,114,97,109,101,95,110,117,109,98,101,114,0,100,101,108,97,121,0,113,99,111,109,112,0,118,105,100,101,111,32,113,117,97,110,116,105,122,101,114,32,115,99,97,108,101,32,99,111,109,112,114,101,115,115,105,111,110,32,40,86,66,82,41,46,32,67,111,110,115,116,97,110,116,32,111,102,32,114,97,116,101,99,111,110,116,114,111,108,32,101,113,117,97,116,105,111,110,46,32,82,101,99,111,109,109,101,110,100,101,100,32,114,97,110,103,101,32,102,111,114,32,100,101,102,97,117,108,116,32,114,99,95,101,113,58,32,48,46,48,45,49,46,48,0,113,98,108,117,114,0,118,105,100,101,111,32,113,117,97,110,116,105,122,101,114,32,115,99,97,108,101,32,98,108,117,114,32,40,86,66,82,41,0,113,109,105,110,0,109,105,110,105,109,117,109,32,118,105,100,101,111,32,113,117,97,110,116,105,122,101,114,32,115,99,97,108,101,32,40,86,66,82,41,0,113,109,97,120,0,109,97,120,105,109,117,109,32,118,105,100,101,111,32,113,117,97,110,116,105,122,101,114,32,115,99,97,108,101,32,40,86,66,82,41,0,113,100,105,102,102,0,109,97,120,105,109,117,109,32,100,105,102,102,101,114,101,110,99,101,32,98,101,116,119,101,101,110,32,116,104,101,32,113,117,97,110,116,105,122,101,114,32,115,99,97,108,101,115,32,40,86,66,82,41,0,98,102,0,115,101,116,32,109,97,120,105,109,117,109,32,110,117,109,98,101,114,32,111,102,32,66,32,102,114,97,109,101,115,32,98,101,116,119,101,101,110,32,110,111,110,45,66,45,102,114,97,109,101,115,0,98,95,113,102,97,99,116,111,114,0,81,80,32,102,97,99,116,111,114,32,98,101,116,119,101,101,110,32,80,45,32,97,110,100,32,66,45,102,114,97,109,101,115,0,114,99,95,115,116,114,97,116,101,103,121,0,114,97,116,101,99,111,110,116,114,111,108,32,109,101,116,104,111,100,0,98,95,115,116,114,97,116,101,103,121,0,115,116,114,97,116,101,103,121,32,116,111,32,99,104,111,111,115,101,32,98,101,116,119,101,101,110,32,73,47,80,47,66,45,102,114,97,109,101,115,0,112,115,0,82,84,80,32,112,97,121,108,111,97,100,32,115,105,122,101,32,105,110,32,98,121,116,101,115,0,109,118,95,98,105,116,115,0,104,101,97,100,101,114,95,98,105,116,115,0,105,95,116,101,120,95,98,105,116,115,0,112,95,116,101,120,95,98,105,116,115,0,105,95,99,111,117,110,116,0,112,95,99,111,117,110,116,0,115,107,105,112,95,99,111,117,110,116,0,109,105,115,99,95,98,105,116,115,0,102,114,97,109,101,95,98,105,116,115,0,99,111,100,101,99,95,116,97,103,0,98,117,103,0,119,111,114,107,32,97,114,111,117,110,100,32,110,111,116,32,97,117,116,111,100,101,116,101,99,116,101,100,32,101,110,99,111,100,101,114,32,98,117,103,115,0,97,117,116,111,100,101,116,101,99,116,0,111,108,100,95,109,115,109,112,101,103,52,0,115,111,109,101,32,111,108,100,32,108,97,118,99,45,103,101,110,101,114,97,116,101,100,32,77,83,77,80,69,71,52,118,51,32,102,105,108,101,115,32,40,110,111,32,97,117,116,111,100,101,116,101,99,116,105,111,110,41,0,120,118,105,100,95,105,108,97,99,101,0,88,118,105,100,32,105,110,116,101,114,108,97,99,105,110,103,32,98,117,103,32,40,97,117,116,111,100,101,116,101,99,116,101,100,32,105,102,32,70,79,85,82,67,67,32,61,61,32,88,86,73,88,41,0,117,109,112,52,0,40,97,117,116,111,100,101,116,101,99,116,101,100,32,105,102,32,70,79,85,82,67,67,32,61,61,32,85,77,80,52,41,0,110,111,95,112,97,100,100,105,110,103,0,112,97,100,100,105,110,103,32,98,117,103,32,40,97,117,116,111,100,101,116,101,99,116,101,100,41,0,97,109,118,0,97,99,95,118,108,99,0,105,108,108,101,103,97,108,32,86,76,67,32,98,117,103,32,40,97,117,116,111,100,101,116,101,99,116,101,100,32,112,101,114,32,70,79,85,82,67,67,41,0,113,112,101,108,95,99,104,114,111,109,97,0,115,116,100,95,113,112,101,108,0,111,108,100,32,115,116,97,110,100,97,114,100,32,113,112,101,108,32,40,97,117,116,111,100,101,116,101,99,116,101,100,32,112,101,114,32,70,79,85,82,67,67,47,118,101,114,115,105,111,110,41,0,113,112,101,108,95,99,104,114,111,109,97,50,0,100,105,114,101,99,116,95,98,108,111,99,107,115,105,122,101,0,100,105,114,101,99,116,45,113,112,101,108,45,98,108,111,99,107,115,105,122,101,32,98,117,103,32,40,97,117,116,111,100,101,116,101,99,116,101,100,32,112,101,114,32,70,79,85,82,67,67,47,118,101,114,115,105,111,110,41,0,101,100,103,101,0,101,100,103,101,32,112,97,100,100,105,110,103,32,98,117,103,32,40,97,117,116,111,100,101,116,101,99,116,101,100,32,112,101,114,32,70,79,85,82,67,67,47,118,101,114,115,105,111,110,41,0,104,112,101,108,95,99,104,114,111,109,97,0,100,99,95,99,108,105,112,0,109,115,0,119,111,114,107,32,97,114,111,117,110,100,32,118,97,114,105,111,117,115,32,98,117,103,115,32,105,110,32,77,105,99,114,111,115,111,102,116,39,115,32,98,114,111,107,101,110,32,100,101,99,111,100,101,114,115,0,116,114,117,110,99,97,116,101,100,32,102,114,97,109,101,115,0,115,116,114,105,99,116,0,104,111,119,32,115,116,114,105,99,116,108,121,32,116,111,32,102,111,108,108,111,119,32,116,104,101,32,115,116,97,110,100,97,114,100,115,0,118,101,114,121,0,115,116,114,105,99,116,108,121,32,99,111,110,102,111,114,109,32,116,111,32,97,32,111,108,100,101,114,32,109,111,114,101,32,115,116,114,105,99,116,32,118,101,114,115,105,111,110,32,111,102,32,116,104,101,32,115,112,101,99,32,111,114,32,114,101,102,101,114,101,110,99,101,32,115,111,102,116,119,97,114,101,0,115,116,114,105,99,116,108,121,32,99,111,110,102,111,114,109,32,116,111,32,97,108,108,32,116,104,101,32,116,104,105,110,103,115,32,105,110,32,116,104,101,32,115,112,101,99,32,110,111,32,109,97,116,116,101,114,32,119,104,97,116,32,116,104,101,32,99,111,110,115,101,113,117,101,110,99,101,115,0,110,111,114,109,97,108,0,117,110,111,102,102,105,99,105,97,108,0,97,108,108,111,119,32,117,110,111,102,102,105,99,105,97,108,32,101,120,116,101,110,115,105,111,110,115,0,101,120,112,101,114,105,109,101,110,116,97,108,0,97,108,108,111,119,32,110,111,110,45,115,116,97,110,100,97,114,100,105,122,101,100,32,101,120,112,101,114,105,109,101,110,116,97,108,32,116,104,105,110,103,115,0,98,95,113,111,102,102,115,101,116,0,81,80,32,111,102,102,115,101,116,32,98,101,116,119,101,101,110,32,80,45,32,97,110,100,32,66,45,102,114,97,109,101,115,0,101,114,114,95,100,101,116,101,99,116,0,115,101,116,32,101,114,114,111,114,32,100,101,116,101,99,116,105,111,110,32,102,108,97,103,115,0,99,114,99,99,104,101,99,107,0,118,101,114,105,102,121,32,101,109,98,101,100,100,101,100,32,67,82,67,115,0,98,105,116,115,116,114,101,97,109,0,100,101,116,101,99,116,32,98,105,116,115,116,114,101,97,109,32,115,112,101,99,105,102,105,99,97,116,105,111,110,32,100,101,118,105,97,116,105,111,110,115,0,98,117,102,102,101,114,0,100,101,116,101,99,116,32,105,109,112,114,111,112,101,114,32,98,105,116,115,116,114,101,97,109,32,108,101,110,103,116,104,0,101,120,112,108,111,100,101,0,97,98,111,114,116,32,100,101,99,111,100,105,110,103,32,111,110,32,109,105,110,111,114,32,101,114,114,111,114,32,100,101,116,101,99,116,105,111,110,0,105,103,110,111,114,101,95,101,114,114,0,105,103,110,111,114,101,32,101,114,114,111,114,115,0,99,97,114,101,102,117,108,0,99,111,110,115,105,100,101,114,32,116,104,105,110,103,115,32,116,104,97,116,32,118,105,111,108,97,116,101,32,116,104,101,32,115,112,101,99,44,32,97,114,101,32,102,97,115,116,32,116,111,32,99,104,101,99,107,32,97,110,100,32,104,97,118,101,32,110,111,116,32,98,101,101,110,32,115,101,101,110,32,105,110,32,116,104,101,32,119,105,108,100,32,97,115,32,101,114,114,111,114,115,0,99,111,109,112,108,105,97,110,116,0,99,111,110,115,105,100,101,114,32,97,108,108,32,115,112,101,99,32,110,111,110,32,99,111,109,112,108,105,97,110,99,105,101,115,32,97,115,32,101,114,114,111,114,115,0,97,103,103,114,101,115,115,105,118,101,0,99,111,110,115,105,100,101,114,32,116,104,105,110,103,115,32,116,104,97,116,32,97,32,115,97,110,101,32,101,110,99,111,100,101,114,32,115,104,111,117,108,100,32,110,111,116,32,100,111,32,97,115,32,97,110,32,101,114,114,111,114,0,104,97,115,95,98,95,102,114,97,109,101,115,0,98,108,111,99,107,95,97,108,105,103,110,0,109,112,101,103,95,113,117,97,110,116,0,117,115,101,32,77,80,69,71,32,113,117,97,110,116,105,122,101,114,115,32,105,110,115,116,101,97,100,32,111,102,32,72,46,50,54,51,0,113,115,113,117,105,115,104,0,100,101,112,114,101,99,97,116,101,100,44,32,117,115,101,32,101,110,99,111,100,101,114,32,112,114,105,118,97,116,101,32,111,112,116,105,111,110,115,32,105,110,115,116,101,97,100,0,114,99,95,113,109,111,100,95,97,109,112,0,114,99,95,113,109,111,100,95,102,114,101,113,0,114,99,95,111,118,101,114,114,105,100,101,95,99,111,117,110,116,0,114,99,95,101,113,0,109,97,120,114,97,116,101,0,109,97,120,105,109,117,109,32,98,105,116,114,97,116,101,32,40,105,110,32,98,105,116,115,47,115,41,46,32,85,115,101,100,32,102,111,114,32,86,66,86,32,116,111,103,101,116,104,101,114,32,119,105,116,104,32,98,117,102,115,105,122,101,46,0,109,105,110,114,97,116,101,0,109,105,110,105,109,117,109,32,98,105,116,114,97,116,101,32,40,105,110,32,98,105,116,115,47,115,41,46,32,77,111,115,116,32,117,115,101,102,117,108,32,105,110,32,115,101,116,116,105,110,103,32,117,112,32,97,32,67,66,82,32,101,110,99,111,100,101,46,32,73,116,32,105,115,32,111,102,32,108,105,116,116,108,101,32,117,115,101,32,111,116,104,101,114,119,105,115,101,46,0,98,117,102,115,105,122,101,0,115,101,116,32,114,97,116,101,99,111,110,116,114,111,108,32,98,117,102,102,101,114,32,115,105,122,101,32,40,105,110,32,98,105,116,115,41,0,114,99,95,98,117,102,95,97,103,103,114,101,115,115,105,118,105,116,121,0,105,95,113,102,97,99,116,111,114,0,81,80,32,102,97,99,116,111,114,32,98,101,116,119,101,101,110,32,80,45,32,97,110,100,32,73,45,102,114,97,109,101,115,0,105,95,113,111,102,102,115,101,116,0,81,80,32,111,102,102,115,101,116,32,98,101,116,119,101,101,110,32,80,45,32,97,110,100,32,73,45,102,114,97,109,101,115,0,114,99,95,105,110,105,116,95,99,112,108,120,0,100,99,116,0,68,67,84,32,97,108,103,111,114,105,116,104,109,0,97,117,116,111,115,101,108,101,99,116,32,97,32,103,111,111,100,32,111,110,101,0,102,97,115,116,105,110,116,0,102,97,115,116,32,105,110,116,101,103,101,114,0,105,110,116,0,97,99,99,117,114,97,116,101,32,105,110,116,101,103,101,114,0,109,109,120,0,97,108,116,105,118,101,99,0,102,97,97,110,0,102,108,111,97,116,105,110,103,32,112,111,105,110,116,32,65,65,78,32,68,67,84,0,108,117,109,105,95,109,97,115,107,0,99,111,109,112,114,101,115,115,101,115,32,98,114,105,103,104,116,32,97,114,101,97,115,32,115,116,114,111,110,103,101,114,32,116,104,97,110,32,109,101,100,105,117,109,32,111,110,101,115,0,116,99,112,108,120,95,109,97,115,107,0,116,101,109,112,111,114,97,108,32,99,111,109,112,108,101,120,105,116,121,32,109,97,115,107,105,110,103,0,115,99,112,108,120,95,109,97,115,107,0,115,112,97,116,105,97,108,32,99,111,109,112,108,101,120,105,116,121,32,109,97,115,107,105,110,103,0,112,95,109,97,115,107,0,105,110,116,101,114,32,109,97,115,107,105,110,103,0,100,97,114,107,95,109,97,115,107,0,99,111,109,112,114,101,115,115,101,115,32,100,97,114,107,32,97,114,101,97,115,32,115,116,114,111,110,103,101,114,32,116,104,97,110,32,109,101,100,105,117,109,32,111,110,101,115,0,105,100,99,116,0,115,101,108,101,99,116,32,73,68,67,84,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,0,115,105,109,112,108,101,0,115,105,109,112,108,101,109,109,120,0,97,114,109,0,115,104,52,0,115,105,109,112,108,101,97,114,109,0,115,105,109,112,108,101,97,114,109,118,53,116,101,0,115,105,109,112,108,101,97,114,109,118,54,0,115,105,109,112,108,101,110,101,111,110,0,115,105,109,112,108,101,97,108,112,104,97,0,105,112,112,0,120,118,105,100,0,120,118,105,100,109,109,120,0,100,101,112,114,101,99,97,116,101,100,44,32,102,111,114,32,99,111,109,112,97,116,105,98,105,108,105,116,121,32,111,110,108,121,0,102,97,97,110,105,0,102,108,111,97,116,105,110,103,32,112,111,105,110,116,32,65,65,78,32,73,68,67,84,0,115,105,109,112,108,101,97,117,116,111,0,115,108,105,99,101,95,99,111,117,110,116,0,101,99,0,115,101,116,32,101,114,114,111,114,32,99,111,110,99,101,97,108,109,101,110,116,32,115,116,114,97,116,101,103,121,0,103,117,101,115,115,95,109,118,115,0,105,116,101,114,97,116,105,118,101,32,109,111,116,105,111,110,32,118,101,99,116,111,114,32,40,77,86,41,32,115,101,97,114,99,104,32,40,115,108,111,119,41,0,100,101,98,108,111,99,107,0,117,115,101,32,115,116,114,111,110,103,32,100,101,98,108,111,99,107,32,102,105,108,116,101,114,32,102,111,114,32,100,97,109,97,103,101,100,32,77,66,115,0,102,97,118,111,114,95,105,110,116,101,114,0,102,97,118,111,114,32,112,114,101,100,105,99,116,105,110,103,32,102,114,111,109,32,116,104,101,32,112,114,101,118,105,111,117,115,32,102,114,97,109,101,0,98,105,116,115,95,112,101,114,95,99,111,100,101,100,95,115,97,109,112,108,101,0,112,114,101,100,0,112,114,101,100,105,99,116,105,111,110,32,109,101,116,104,111,100,0,108,101,102,116,0,112,108,97,110,101,0,109,101,100,105,97,110,0,97,115,112,101,99,116,0,115,97,109,112,108,101,32,97,115,112,101,99,116,32,114,97,116,105,111,0,112,114,105,110,116,32,115,112,101,99,105,102,105,99,32,100,101,98,117,103,32,105,110,102,111,0,112,105,99,116,0,112,105,99,116,117,114,101,32,105,110,102,111,0,114,99,0,114,97,116,101,32,99,111,110,116,114,111,108,0,109,98,95,116,121,112,101,0,109,97,99,114,111,98,108,111,99,107,32,40,77,66,41,32,116,121,112,101,0,113,112,0,112,101,114,45,98,108,111,99,107,32,113,117,97,110,116,105,122,97,116,105,111,110,32,112,97,114,97,109,101,116,101,114,32,40,81,80,41,0,109,118,0,109,111,116,105,111,110,32,118,101,99,116,111,114,0,100,99,116,95,99,111,101,102,102,0,103,114,101,101,110,95,109,101,116,97,100,97,116,97,0,115,107,105,112,0,115,116,97,114,116,99,111,100,101,0,112,116,115,0,101,114,0,101,114,114,111,114,32,114,101,99,111,103,110,105,116,105,111,110,0,109,109,99,111,0,109,101,109,111,114,121,32,109,97,110,97,103,101,109,101,110,116,32,99,111,110,116,114,111,108,32,111,112,101,114,97,116,105,111,110,115,32,40,72,46,50,54,52,41,0,98,117,103,115,0,118,105,115,95,113,112,0,118,105,115,117,97,108,105,122,101,32,113,117,97,110,116,105,122,97,116,105,111,110,32,112,97,114,97,109,101,116,101,114,32,40,81,80,41,44,32,108,111,119,101,114,32,81,80,32,97,114,101,32,116,105,110,116,101,100,32,103,114,101,101,110,101,114,0,118,105,115,95,109,98,95,116,121,112,101,0,118,105,115,117,97,108,105,122,101,32,98,108,111,99,107,32,116,121,112,101,115,0,98,117,102,102,101,114,115,0,112,105,99,116,117,114,101,32,98,117,102,102,101,114,32,97,108,108,111,99,97,116,105,111,110,115,0,116,104,114,101,97,100,95,111,112,115,0,116,104,114,101,97,100,105,110,103,32,111,112,101,114,97,116,105,111,110,115,0,110,111,109,99,0,115,107,105,112,32,109,111,116,105,111,110,32,99,111,109,112,101,110,115,97,116,105,111,110,0,118,105,115,109,118,0,118,105,115,117,97,108,105,122,101,32,109,111,116,105,111,110,32,118,101,99,116,111,114,115,32,40,77,86,115,41,32,40,100,101,112,114,101,99,97,116,101,100,41,0,100,101,98,117,103,95,109,118,0,112,102,0,102,111,114,119,97,114,100,32,112,114,101,100,105,99,116,101,100,32,77,86,115,32,111,102,32,80,45,102,114,97,109,101,115,0,102,111,114,119,97,114,100,32,112,114,101,100,105,99,116,101,100,32,77,86,115,32,111,102,32,66,45,102,114,97,109,101,115,0,98,98,0,98,97,99,107,119,97,114,100,32,112,114,101,100,105,99,116,101,100,32,77,86,115,32,111,102,32,66,45,102,114,97,109,101,115,0,99,109,112,0,102,117,108,108,45,112,101,108,32,77,69,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,99,109,112,95,102,117,110,99,0,115,117,98,99,109,112,0,115,117,98,45,112,101,108,32,77,69,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,109,98,99,109,112,0,109,97,99,114,111,98,108,111,99,107,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,105,108,100,99,116,99,109,112,0,105,110,116,101,114,108,97,99,101,100,32,68,67,84,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,100,105,97,95,115,105,122,101,0,100,105,97,109,111,110,100,32,116,121,112,101,32,38,32,115,105,122,101,32,102,111,114,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,108,97,115,116,95,112,114,101,100,0,97,109,111,117,110,116,32,111,102,32,109,111,116,105,111,110,32,112,114,101,100,105,99,116,111,114,115,32,102,114,111,109,32,116,104,101,32,112,114,101,118,105,111,117,115,32,102,114,97,109,101,0,112,114,101,109,101,0,112,114,101,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,0,112,114,101,99,109,112,0,112,114,101,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,115,97,100,0,115,117,109,32,111,102,32,97,98,115,111,108,117,116,101,32,100,105,102,102,101,114,101,110,99,101,115,44,32,102,97,115,116,0,115,115,101,0,115,117,109,32,111,102,32,115,113,117,97,114,101,100,32,101,114,114,111,114,115,0,115,97,116,100,0,115,117,109,32,111,102,32,97,98,115,111,108,117,116,101,32,72,97,100,97,109,97,114,100,32,116,114,97,110,115,102,111,114,109,101,100,32,100,105,102,102,101,114,101,110,99,101,115,0,115,117,109,32,111,102,32,97,98,115,111,108,117,116,101,32,68,67,84,32,116,114,97,110,115,102,111,114,109,101,100,32,100,105,102,102,101,114,101,110,99,101,115,0,115,117,109,32,111,102,32,115,113,117,97,114,101,100,32,113,117,97,110,116,105,122,97,116,105,111,110,32,101,114,114,111,114,115,32,40,97,118,111,105,100,44,32,108,111,119,32,113,117,97,108,105,116,121,41,0,98,105,116,0,110,117,109,98,101,114,32,111,102,32,98,105,116,115,32,110,101,101,100,101,100,32,102,111,114,32,116,104,101,32,98,108,111,99,107,0,114,100,0,114,97,116,101,32,100,105,115,116,111,114,116,105,111,110,32,111,112,116,105,109,97,108,44,32,115,108,111,119,0,118,115,97,100,0,115,117,109,32,111,102,32,97,98,115,111,108,117,116,101,32,118,101,114,116,105,99,97,108,32,100,105,102,102,101,114,101,110,99,101,115,0,118,115,115,101,0,115,117,109,32,111,102,32,115,113,117,97,114,101,100,32,118,101,114,116,105,99,97,108,32,100,105,102,102,101,114,101,110,99,101,115,0,110,115,115,101,0,110,111,105,115,101,32,112,114,101,115,101,114,118,105,110,103,32,115,117,109,32,111,102,32,115,113,117,97,114,101,100,32,100,105,102,102,101,114,101,110,99,101,115,0,100,99,116,109,97,120,0,99,104,114,111,109,97,0,112,114,101,95,100,105,97,95,115,105,122,101,0,100,105,97,109,111,110,100,32,116,121,112,101,32,38,32,115,105,122,101,32,102,111,114,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,112,114,101,45,112,97,115,115,0,115,117,98,113,0,115,117,98,45,112,101,108,32,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,113,117,97,108,105,116,121,0,100,116,103,95,97,99,116,105,118,101,95,102,111,114,109,97,116,0,109,101,95,114,97,110,103,101,0,108,105,109,105,116,32,109,111,116,105,111,110,32,118,101,99,116,111,114,115,32,114,97,110,103,101,32,40,49,48,50,51,32,102,111,114,32,68,105,118,88,32,112,108,97,121,101,114,41,0,105,98,105,97,115,0,105,110,116,114,97,32,113,117,97,110,116,32,98,105,97,115,0,112,98,105,97,115,0,105,110,116,101,114,32,113,117,97,110,116,32,98,105,97,115,0,103,108,111,98,97,108,95,113,117,97,108,105,116,121,0,99,111,100,101,114,0,118,108,99,0,118,97,114,105,97,98,108,101,32,108,101,110,103,116,104,32,99,111,100,101,114,32,47,32,72,117,102,102,109,97,110,32,99,111,100,101,114,0,97,114,105,116,104,109,101,116,105,99,32,99,111,100,101,114,0,114,97,119,0,114,97,119,32,40,110,111,32,101,110,99,111,100,105,110,103,41,0,114,108,101,0,114,117,110,45,108,101,110,103,116,104,32,99,111,100,101,114,0,100,101,102,108,97,116,101,0,100,101,102,108,97,116,101,45,98,97,115,101,100,32,99,111,100,101,114,0,99,111,110,116,101,120,116,0,99,111,110,116,101,120,116,32,109,111,100,101,108,0,115,108,105,99,101,95,102,108,97,103,115,0,120,118,109,99,95,97,99,99,101,108,101,114,97,116,105,111,110,0,109,98,100,0,109,97,99,114,111,98,108,111,99,107,32,100,101,99,105,115,105,111,110,32,97,108,103,111,114,105,116,104,109,32,40,104,105,103,104,32,113,117,97,108,105,116,121,32,109,111,100,101,41,0,117,115,101,32,109,98,99,109,112,0,98,105,116,115,0,117,115,101,32,102,101,119,101,115,116,32,98,105,116,115,0,117,115,101,32,98,101,115,116,32,114,97,116,101,32,100,105,115,116,111,114,116,105,111,110,0,115,116,114,101,97,109,95,99,111,100,101,99,95,116,97,103,0,115,99,95,116,104,114,101,115,104,111,108,100,0,115,99,101,110,101,32,99,104,97,110,103,101,32,116,104,114,101,115,104,111,108,100,0,108,109,105,110,0,108,109,97,120,0,110,114,0,110,111,105,115,101,32,114,101,100,117,99,116,105,111,110,0,114,99,95,105,110,105,116,95,111,99,99,117,112,97,110,99,121,0,110,117,109,98,101,114,32,111,102,32,98,105,116,115,32,119,104,105,99,104,32,115,104,111,117,108,100,32,98,101,32,108,111,97,100,101,100,32,105,110,116,111,32,116,104,101,32,114,99,32,98,117,102,102,101,114,32,98,101,102,111,114,101,32,100,101,99,111,100,105,110,103,32,115,116,97,114,116,115,0,116,104,114,101,97,100,115,0,115,101,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,116,104,114,101,97,100,115,0,97,117,116,111,100,101,116,101,99,116,32,97,32,115,117,105,116,97,98,108,101,32,110,117,109,98,101,114,32,111,102,32,116,104,114,101,97,100,115,32,116,111,32,117,115,101,0,109,101,95,116,104,114,101,115,104,111,108,100,0,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,116,104,114,101,115,104,111,108,100,0,109,98,95,116,104,114,101,115,104,111,108,100,0,109,97,99,114,111,98,108,111,99,107,32,116,104,114,101,115,104,111,108,100,0,100,99,0,105,110,116,114,97,95,100,99,95,112,114,101,99,105,115,105,111,110,0,110,115,115,101,119,0,110,115,115,101,32,119,101,105,103,104,116,0,115,107,105,112,95,116,111,112,0,110,117,109,98,101,114,32,111,102,32,109,97,99,114,111,98,108,111,99,107,32,114,111,119,115,32,97,116,32,116,104,101,32,116,111,112,32,119,104,105,99,104,32,97,114,101,32,115,107,105,112,112,101,100,0,115,107,105,112,95,98,111,116,116,111,109,0,110,117,109,98,101,114,32,111,102,32,109,97,99,114,111,98,108,111,99,107,32,114,111,119,115,32,97,116,32,116,104,101,32,98,111,116,116,111,109,32,119,104,105,99,104,32,97,114,101,32,115,107,105,112,112,101,100,0,112,114,111,102,105,108,101,0,117,110,107,110,111,119,110,0,97,97,99,95,109,97,105,110,0,97,97,99,95,108,111,119,0,97,97,99,95,115,115,114,0,97,97,99,95,108,116,112,0,97,97,99,95,104,101,0,97,97,99,95,104,101,95,118,50,0,97,97,99,95,108,100,0,97,97,99,95,101,108,100,0,109,112,101,103,50,95,97,97,99,95,108,111,119,0,109,112,101,103,50,95,97,97,99,95,104,101,0,100,116,115,0,100,116,115,95,101,115,0,100,116,115,95,57,54,95,50,52,0,100,116,115,95,104,100,95,104,114,97,0,100,116,115,95,104,100,95,109,97,0,109,112,101,103,52,95,115,112,0,109,112,101,103,52,95,99,111,114,101,0,109,112,101,103,52,95,109,97,105,110,0,109,112,101,103,52,95,97,115,112,0,108,101,118,101,108,0,108,111,119,114,101,115,0,100,101,99,111,100,101,32,97,116,32,49,61,32,49,47,50,44,32,50,61,49,47,52,44,32,51,61,49,47,56,32,114,101,115,111,108,117,116,105,111,110,115,0,115,107,105,112,95,116,104,114,101,115,104,111,108,100,0,102,114,97,109,101,32,115,107,105,112,32,116,104,114,101,115,104,111,108,100,0,115,107,105,112,95,102,97,99,116,111,114,0,102,114,97,109,101,32,115,107,105,112,32,102,97,99,116,111,114,0,115,107,105,112,95,101,120,112,0,102,114,97,109,101,32,115,107,105,112,32,101,120,112,111,110,101,110,116,0,115,107,105,112,99,109,112,0,102,114,97,109,101,32,115,107,105,112,32,99,111,109,112,97,114,101,32,102,117,110,99,116,105,111,110,0,98,111,114,100,101,114,95,109,97,115,107,0,109,98,108,109,105,110,0,109,105,110,105,109,117,109,32,109,97,99,114,111,98,108,111,99,107,32,76,97,103,114,97,110,103,101,32,102,97,99,116,111,114,32,40,86,66,82,41,0,109,98,108,109,97,120,0,109,97,120,105,109,117,109,32,109,97,99,114,111,98,108,111,99,107,32,76,97,103,114,97,110,103,101,32,102,97,99,116,111,114,32,40,86,66,82,41,0,109,101,112,99,0,109,111,116,105,111,110,32,101,115,116,105,109,97,116,105,111,110,32,98,105,116,114,97,116,101,32,112,101,110,97,108,116,121,32,99,111,109,112,101,110,115,97,116,105,111,110,32,40,49,46,48,32,61,32,50,53,54,41,0,115,107,105,112,95,108,111,111,112,95,102,105,108,116,101,114,0,115,107,105,112,32,108,111,111,112,32,102,105,108,116,101,114,105,110,103,32,112,114,111,99,101,115,115,32,102,111,114,32,116,104,101,32,115,101,108,101,99,116,101,100,32,102,114,97,109,101,115,0,97,118,100,105,115,99,97,114,100,0,115,107,105,112,95,105,100,99,116,0,115,107,105,112,32,73,68,67,84,47,100,101,113,117,97,110,116,105,122,97,116,105,111,110,32,102,111,114,32,116,104,101,32,115,101,108,101,99,116,101,100,32,102,114,97,109,101,115,0,115,107,105,112,95,102,114,97,109,101,0,115,107,105,112,32,100,101,99,111,100,105,110,103,32,102,111],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+130138),allocate([114,32,116,104,101,32,115,101,108,101,99,116,101,100,32,102,114,97,109,101,115,0,100,105,115,99,97,114,100,32,110,111,32,102,114,97,109,101,0,100,105,115,99,97,114,100,32,117,115,101,108,101,115,115,32,102,114,97,109,101,115,0,110,111,114,101,102,0,100,105,115,99,97,114,100,32,97,108,108,32,110,111,110,45,114,101,102,101,114,101,110,99,101,32,102,114,97,109,101,115,0,98,105,100,105,114,0,100,105,115,99,97,114,100,32,97,108,108,32,98,105,100,105,114,101,99,116,105,111,110,97,108,32,102,114,97,109,101,115,0,110,111,107,101,121,0,100,105,115,99,97,114,100,32,97,108,108,32,102,114,97,109,101,115,32,101,120,99,101,112,116,32,107,101,121,102,114,97,109,101,115,0,110,111,105,110,116,114,97,0,100,105,115,99,97,114,100,32,97,108,108,32,102,114,97,109,101,115,32,101,120,99,101,112,116,32,73,32,102,114,97,109,101,115,0,100,105,115,99,97,114,100,32,97,108,108,32,102,114,97,109,101,115,0,98,105,100,105,114,95,114,101,102,105,110,101,0,114,101,102,105,110,101,32,116,104,101,32,116,119,111,32,109,111,116,105,111,110,32,118,101,99,116,111,114,115,32,117,115,101,100,32,105,110,32,98,105,100,105,114,101,99,116,105,111,110,97,108,32,109,97,99,114,111,98,108,111,99,107,115,0,98,114,100,95,115,99,97,108,101,0,100,111,119,110,115,99,97,108,101,32,102,114,97,109,101,115,32,102,111,114,32,100,121,110,97,109,105,99,32,66,45,102,114,97,109,101,32,100,101,99,105,115,105,111,110,0,107,101,121,105,110,116,95,109,105,110,0,109,105,110,105,109,117,109,32,105,110,116,101,114,118,97,108,32,98,101,116,119,101,101,110,32,73,68,82,45,102,114,97,109,101,115,0,114,101,102,115,0,114,101,102,101,114,101,110,99,101,32,102,114,97,109,101,115,32,116,111,32,99,111,110,115,105,100,101,114,32,102,111,114,32,109,111,116,105,111,110,32,99,111,109,112,101,110,115,97,116,105,111,110,0,99,104,114,111,109,97,111,102,102,115,101,116,0,99,104,114,111,109,97,32,81,80,32,111,102,102,115,101,116,32,102,114,111,109,32,108,117,109,97,0,116,114,101,108,108,105,115,0,114,97,116,101,45,100,105,115,116,111,114,116,105,111,110,32,111,112,116,105,109,97,108,32,113,117,97,110,116,105,122,97,116,105,111,110,0,115,99,95,102,97,99,116,111,114,0,109,117,108,116,105,112,108,105,101,100,32,98,121,32,113,115,99,97,108,101,32,102,111,114,32,101,97,99,104,32,102,114,97,109,101,32,97,110,100,32,97,100,100,101,100,32,116,111,32,115,99,101,110,101,95,99,104,97,110,103,101,95,115,99,111,114,101,0,109,118,48,95,116,104,114,101,115,104,111,108,100,0,98,95,115,101,110,115,105,116,105,118,105,116,121,0,97,100,106,117,115,116,32,115,101,110,115,105,116,105,118,105,116,121,32,111,102,32,98,95,102,114,97,109,101,95,115,116,114,97,116,101,103,121,32,49,0,99,111,109,112,114,101,115,115,105,111,110,95,108,101,118,101,108,0,109,105,110,95,112,114,101,100,105,99,116,105,111,110,95,111,114,100,101,114,0,109,97,120,95,112,114,101,100,105,99,116,105,111,110,95,111,114,100,101,114,0,116,105,109,101,99,111,100,101,95,102,114,97,109,101,95,115,116,97,114,116,0,71,79,80,32,116,105,109,101,99,111,100,101,32,102,114,97,109,101,32,115,116,97,114,116,32,110,117,109,98,101,114,44,32,105,110,32,110,111,110,45,100,114,111,112,45,102,114,97,109,101,32,102,111,114,109,97,116,0,98,105,116,115,95,112,101,114,95,114,97,119,95,115,97,109,112,108,101,0,99,104,97,110,110,101,108,95,108,97,121,111,117,116,0,114,101,113,117,101,115,116,95,99,104,97,110,110,101,108,95,108,97,121,111,117,116,0,114,99,95,109,97,120,95,118,98,118,95,117,115,101,0,114,99,95,109,105,110,95,118,98,118,95,117,115,101,0,116,105,99,107,115,95,112,101,114,95,102,114,97,109,101,0,99,111,108,111,114,95,112,114,105,109,97,114,105,101,115,0,99,111,108,111,114,32,112,114,105,109,97,114,105,101,115,0,99,111,108,111,114,95,112,114,105,109,97,114,105,101,115,95,116,121,112,101,0,98,116,55,48,57,0,66,84,46,55,48,57,0,117,110,115,112,101,99,105,102,105,101,100,0,85,110,115,112,101,99,105,102,105,101,100,0,98,116,52,55,48,109,0,66,84,46,52,55,48,32,77,0,98,116,52,55,48,98,103,0,66,84,46,52,55,48,32,66,71,0,115,109,112,116,101,49,55,48,109,0,83,77,80,84,69,32,49,55,48,32,77,0,115,109,112,116,101,50,52,48,109,0,83,77,80,84,69,32,50,52,48,32,77,0,70,105,108,109,0,98,116,50,48,50,48,0,66,84,46,50,48,50,48,0,115,109,112,116,101,52,50,56,95,49,0,83,77,80,84,69,32,83,84,32,52,50,56,45,49,0,99,111,108,111,114,95,116,114,99,0,99,111,108,111,114,32,116,114,97,110,115,102,101,114,32,99,104,97,114,97,99,116,101,114,105,115,116,105,99,115,0,99,111,108,111,114,95,116,114,99,95,116,121,112,101,0,103,97,109,109,97,50,50,0,103,97,109,109,97,50,56,0,108,105,110,101,97,114,0,76,105,110,101,97,114,0,76,111,103,0,108,111,103,95,115,113,114,116,0,76,111,103,32,115,113,117,97,114,101,32,114,111,111,116,0,105,101,99,54,49,57,54,54,95,50,95,52,0,73,69,67,32,54,49,57,54,54,45,50,45,52,0,98,116,49,51,54,49,0,66,84,46,49,51,54,49,0,105,101,99,54,49,57,54,54,95,50,95,49,0,73,69,67,32,54,49,57,54,54,45,50,45,49,0,98,116,50,48,50,48,95,49,48,98,105,116,0,66,84,46,50,48,50,48,32,45,32,49,48,32,98,105,116,0,98,116,50,48,50,48,95,49,50,98,105,116,0,66,84,46,50,48,50,48,32,45,32,49,50,32,98,105,116,0,115,109,112,116,101,50,48,56,52,0,83,77,80,84,69,32,83,84,32,50,48,56,52,0,99,111,108,111,114,115,112,97,99,101,0,99,111,108,111,114,32,115,112,97,99,101,0,99,111,108,111,114,115,112,97,99,101,95,116,121,112,101,0,114,103,98,0,82,71,66,0,102,99,99,0,70,67,67,0,121,99,111,99,103,0,89,67,79,67,71,0,98,116,50,48,50,48,95,110,99,108,0,66,84,46,50,48,50,48,32,78,67,76,0,98,116,50,48,50,48,95,99,108,0,66,84,46,50,48,50,48,32,67,76,0,99,111,108,111,114,95,114,97,110,103,101,0,99,111,108,111,114,32,114,97,110,103,101,0,99,111,108,111,114,95,114,97,110,103,101,95,116,121,112,101,0,109,112,101,103,0,77,80,69,71,32,40,50,49,57,42,50,94,40,110,45,56,41,41,0,106,112,101,103,0,74,80,69,71,32,40,50,94,110,45,49,41,0,99,104,114,111,109,97,95,115,97,109,112,108,101,95,108,111,99,97,116,105,111,110,0,99,104,114,111,109,97,32,115,97,109,112,108,101,32,108,111,99,97,116,105,111,110,0,99,104,114,111,109,97,95,115,97,109,112,108,101,95,108,111,99,97,116,105,111,110,95,116,121,112,101,0,76,101,102,116,0,99,101,110,116,101,114,0,67,101,110,116,101,114,0,116,111,112,108,101,102,116,0,84,111,112,45,108,101,102,116,0,116,111,112,0,84,111,112,0,98,111,116,116,111,109,108,101,102,116,0,66,111,116,116,111,109,45,108,101,102,116,0,98,111,116,116,111,109,0,66,111,116,116,111,109,0,108,111,103,95,108,101,118,101,108,95,111,102,102,115,101,116,0,115,101,116,32,116,104,101,32,108,111,103,32,108,101,118,101,108,32,111,102,102,115,101,116,0,115,108,105,99,101,115,0,115,101,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,115,108,105,99,101,115,44,32,117,115,101,100,32,105,110,32,112,97,114,97,108,108,101,108,105,122,101,100,32,101,110,99,111,100,105,110,103,0,116,104,114,101,97,100,95,116,121,112,101,0,115,101,108,101,99,116,32,109,117,108,116,105,116,104,114,101,97,100,105,110,103,32,116,121,112,101,0,115,108,105,99,101,0,102,114,97,109,101,0,97,117,100,105,111,95,115,101,114,118,105,99,101,95,116,121,112,101,0,97,117,100,105,111,32,115,101,114,118,105,99,101,32,116,121,112,101,0,109,97,0,77,97,105,110,32,65,117,100,105,111,32,83,101,114,118,105,99,101,0,101,102,0,69,102,102,101,99,116,115,0,118,105,0,86,105,115,117,97,108,108,121,32,73,109,112,97,105,114,101,100,0,104,105,0,72,101,97,114,105,110,103,32,73,109,112,97,105,114,101,100,0,100,105,0,68,105,97,108,111,103,117,101,0,99,111,0,67,111,109,109,101,110,116,97,114,121,0,101,109,0,69,109,101,114,103,101,110,99,121,0,118,111,0,86,111,105,99,101,32,79,118,101,114,0,107,97,0,75,97,114,97,111,107,101,0,114,101,113,117,101,115,116,95,115,97,109,112,108,101,95,102,109,116,0,115,97,109,112,108,101,32,102,111,114,109,97,116,32,97,117,100,105,111,32,100,101,99,111,100,101,114,115,32,115,104,111,117,108,100,32,112,114,101,102,101,114,0,112,107,116,95,116,105,109,101,98,97,115,101,0,115,117,98,95,99,104,97,114,101,110,99,0,115,101,116,32,105,110,112,117,116,32,116,101,120,116,32,115,117,98,116,105,116,108,101,115,32,99,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,0,115,117,98,95,99,104,97,114,101,110,99,95,109,111,100,101,0,115,101,116,32,105,110,112,117,116,32,116,101,120,116,32,115,117,98,116,105,116,108,101,115,32,99,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,32,109,111,100,101,0,100,111,95,110,111,116,104,105,110,103,0,112,114,101,95,100,101,99,111,100,101,114,0,114,101,102,99,111,117,110,116,101,100,95,102,114,97,109,101,115,0,115,105,100,101,95,100,97,116,97,95,111,110,108,121,95,112,97,99,107,101,116,115,0,115,107,105,112,95,97,108,112,104,97,0,83,107,105,112,32,112,114,111,99,101,115,115,105,110,103,32,97,108,112,104,97,0,102,105,101,108,100,95,111,114,100,101,114,0,70,105,101,108,100,32,111,114,100,101,114,0,112,114,111,103,114,101,115,115,105,118,101,0,116,116,0,116,98,0,100,117,109,112,95,115,101,112,97,114,97,116,111,114,0,115,101,116,32,105,110,102,111,114,109,97,116,105,111,110,32,100,117,109,112,32,102,105,101,108,100,32,115,101,112,97,114,97,116,111,114,0,99,111,100,101,99,95,119,104,105,116,101,108,105,115,116,0,76,105,115,116,32,111,102,32,100,101,99,111,100,101,114,115,32,116,104,97,116,32,97,114,101,32,97,108,108,111,119,101,100,32,116,111,32,98,101,32,117,115,101,100,0,112,105,120,101,108,95,102,111,114,109,97,116,0,115,101,116,32,112,105,120,101,108,32,102,111,114,109,97,116,0,118,105,100,101,111,95,115,105,122,101,0,115,101,116,32,118,105,100,101,111,32,115,105,122,101,0,114,101,116,32,62,61,32,48,0,108,105,98,97,118,99,111,100,101,99,47,111,112,116,105,111,110,115,46,99,0,46,47,108,105,98,97,118,117,116,105,108,47,109,101,109,95,105,110,116,101,114,110,97,108,46,104,0,105,103,110,111,114,105,110,103,32,105,110,118,97,108,105,100,32,83,65,82,58,32,37,100,47,37,100,10,0,100,101,115,99,45,62,102,108,97,103,115,32,38,32,40,49,32,60,60,32,52,41,0,108,105,98,97,118,99,111,100,101,99,47,117,116,105,108,115,46,99,0,48,0,112,105,99,45,62,100,97,116,97,91,48,93,33,61,78,85,76,76,32,105,110,32,97,118,99,111,100,101,99,95,100,101,102,97,117,108,116,95,103,101,116,95,98,117,102,102,101,114,10,0,85,110,97,98,108,101,32,116,111,32,103,101,116,32,112,105,120,101,108,32,102,111,114,109,97,116,32,100,101,115,99,114,105,112,116,111,114,32,102,111,114,32,102,111,114,109,97,116,32,37,115,10,0,100,101,102,97,117,108,116,95,103,101,116,95,98,117,102,102,101,114,32,99,97,108,108,101,100,32,111,110,32,112,105,99,32,37,112,10,0,102,114,97,109,101,45,62,110,98,95,101,120,116,101,110,100,101,100,95,98,117,102,32,61,61,32,48,0,100,101,102,97,117,108,116,95,103,101,116,95,98,117,102,102,101,114,32,99,97,108,108,101,100,32,111,110,32,102,114,97,109,101,32,37,112,0,105,103,110,111,114,105,110,103,32,105,110,118,97,108,105,100,32,83,65,82,58,32,37,117,47,37,117,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,99,104,97,110,110,101,108,32,99,111,110,102,105,103,117,114,97,116,105,111,110,46,10,0,84,111,111,32,109,97,110,121,32,99,104,97,110,110,101,108,115,58,32,37,100,46,10,0,118,105,100,101,111,95,103,101,116,95,98,117,102,102,101,114,58,32,105,109,97,103,101,32,112,97,114,97,109,101,116,101,114,115,32,105,110,118,97,108,105,100,10,0,103,101,116,95,98,117,102,102,101,114,40,41,32,102,97,105,108,101,100,10,0,110,32,62,61,32,49,0,72,97,114,100,119,97,114,101,32,97,99,99,101,108,101,114,97,116,101,100,32,100,101,99,111,100,105,110,103,32,119,105,116,104,32,102,114,97,109,101,32,116,104,114,101,97,100,105,110,103,32,105,115,32,107,110,111,119,110,32,116,111,32,98,101,32,117,110,115,116,97,98,108,101,32,97,110,100,32,105,116,115,32,117,115,101,32,105,115,32,100,105,115,99,111,117,114,97,103,101,100,46,10,0,67,111,117,108,100,32,110,111,116,32,102,105,110,100,32,97,110,32,65,86,72,87,65,99,99,101,108,32,102,111,114,32,116,104,101,32,112,105,120,101,108,32,102,111,114,109,97,116,58,32,37,115,0,73,103,110,111,114,105,110,103,32,101,120,112,101,114,105,109,101,110,116,97,108,32,104,119,97,99,99,101,108,58,32,37,115,10,0,99,104,111,105,99,101,115,91,110,93,32,33,61,32,65,86,95,80,73,88,95,70,77,84,95,78,79,78,69,0,102,102,95,97,118,99,111,100,101,99,95,108,111,99,107,101,100,0,78,111,32,99,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,97,118,99,111,100,101,99,95,111,112,101,110,50,40,41,10,0,84,104,105,115,32,65,86,67,111,100,101,99,67,111,110,116,101,120,116,32,119,97,115,32,97,108,108,111,99,97,116,101,100,32,102,111,114,32,37,115,44,32,98,117,116,32,37,115,32,112,97,115,115,101,100,32,116,111,32,97,118,99,111,100,101,99,95,111,112,101,110,50,40,41,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,116,104,114,101,97,100,32,108,111,99,107,105,110,103,46,32,65,116,32,108,101,97,115,116,32,37,100,32,116,104,114,101,97,100,115,32,97,114,101,32,99,97,108,108,105,110,103,32,97,118,99,111,100,101,99,95,111,112,101,110,50,40,41,32,97,116,32,116,104,101,32,115,97,109,101,32,116,105,109,101,32,114,105,103,104,116,32,110,111,119,46,10,0,78,111,32,108,111,99,107,32,109,97,110,97,103,101,114,32,105,115,32,115,101,116,44,32,112,108,101,97,115,101,32,115,101,101,32,97,118,95,108,111,99,107,109,103,114,95,114,101,103,105,115,116,101,114,40,41,10,0,33,102,102,95,97,118,99,111,100,101,99,95,108,111,99,107,101,100,0,67,111,100,101,99,32,40,37,115,41,32,110,111,116,32,111,110,32,119,104,105,116,101,108,105,115,116,32,39,37,115,39,10,0,73,103,110,111,114,105,110,103,32,105,110,118,97,108,105,100,32,119,105,100,116,104,47,104,101,105,103,104,116,32,118,97,108,117,101,115,10,0,67,111,100,101,99,32,116,121,112,101,32,111,114,32,105,100,32,109,105,115,109,97,116,99,104,101,115,10,0,101,110,99,111,100,101,114,0,100,101,99,111,100,101,114,0,84,104,101,32,37,115,32,39,37,115,39,32,105,115,32,101,120,112,101,114,105,109,101,110,116,97,108,32,98,117,116,32,101,120,112,101,114,105,109,101,110,116,97,108,32,99,111,100,101,99,115,32,97,114,101,32,110,111,116,32,101,110,97,98,108,101,100,44,32,97,100,100,32,39,45,115,116,114,105,99,116,32,37,100,39,32,105,102,32,121,111,117,32,119,97,110,116,32,116,111,32,117,115,101,32,105,116,46,10,0,65,108,116,101,114,110,97,116,105,118,101,108,121,32,117,115,101,32,116,104,101,32,110,111,110,32,101,120,112,101,114,105,109,101,110,116,97,108,32,37,115,32,39,37,115,39,46,10,0,87,97,114,110,105,110,103,58,32,110,111,116,32,99,111,109,112,105,108,101,100,32,119,105,116,104,32,116,104,114,101,97,100,32,115,117,112,112,111,114,116,44,32,117,115,105,110,103,32,116,104,114,101,97,100,32,101,109,117,108,97,116,105,111,110,10,0,84,104,101,32,109,97,120,105,109,117,109,32,118,97,108,117,101,32,102,111,114,32,108,111,119,114,101,115,32,115,117,112,112,111,114,116,101,100,32,98,121,32,116,104,101,32,100,101,99,111,100,101,114,32,105,115,32,37,100,10,0,84,104,101,32,39,118,105,115,109,118,39,32,111,112,116,105,111,110,32,105,115,32,100,101,112,114,101,99,97,116,101,100,44,32,115,101,101,32,116,104,101,32,99,111,100,101,99,118,105,101,119,32,102,105,108,116,101,114,32,105,110,115,116,101,97,100,46,10,0,37,100,0,83,112,101,99,105,102,105,101,100,32,115,97,109,112,108,101,32,102,111,114,109,97,116,32,37,115,32,105,115,32,105,110,118,97,108,105,100,32,111,114,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,83,112,101,99,105,102,105,101,100,32,112,105,120,101,108,32,102,111,114,109,97,116,32,37,115,32,105,115,32,105,110,118,97,108,105,100,32,111,114,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,83,112,101,99,105,102,105,101,100,32,115,97,109,112,108,101,32,114,97,116,101,32,37,100,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,67,104,97,110,110,101,108,32,108,97,121,111,117,116,32,110,111,116,32,115,112,101,99,105,102,105,101,100,10,0,83,112,101,99,105,102,105,101,100,32,99,104,97,110,110,101,108,32,108,97,121,111,117,116,32,39,37,115,39,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,67,104,97,110,110,101,108,32,108,97,121,111,117,116,32,39,37,115,39,32,119,105,116,104,32,37,100,32,99,104,97,110,110,101,108,115,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,110,117,109,98,101,114,32,111,102,32,115,112,101,99,105,102,105,101,100,32,99,104,97,110,110,101,108,115,32,37,100,10,0,83,112,101,99,105,102,105,101,100,32,110,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,115,32,37,100,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,10,0,83,112,101,99,105,102,105,101,100,32,98,105,116,32,100,101,112,116,104,32,37,100,32,110,111,116,32,112,111,115,115,105,98,108,101,32,119,105,116,104,32,116,104,101,32,115,112,101,99,105,102,105,101,100,32,112,105,120,101,108,32,102,111,114,109,97,116,115,32,100,101,112,116,104,32,37,100,10,0,100,105,109,101,110,115,105,111,110,115,32,110,111,116,32,115,101,116,10,0,66,105,116,114,97,116,101,32,37,108,108,100,32,105,115,32,101,120,116,114,101,109,101,108,121,32,108,111,119,44,32,109,97,121,98,101,32,121,111,117,32,109,101,97,110,32,37,108,108,100,107,10,0,116,105,99,107,115,95,112,101,114,95,102,114,97,109,101,32,37,100,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,116,104,101,32,116,105,109,101,98,97,115,101,32,37,100,47,37,100,46,0,103,114,97,121,32,100,101,99,111,100,105,110,103,32,114,101,113,117,101,115,116,101,100,32,98,117,116,32,110,111,116,32,101,110,97,98,108,101,100,32,97,116,32,99,111,110,102,105,103,117,114,97,116,105,111,110,32,116,105,109,101,10,0,67,104,97,110,110,101,108,32,108,97,121,111,117,116,32,39,37,115,39,32,119,105,116,104,32,37,100,32,99,104,97,110,110,101,108,115,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,115,112,101,99,105,102,105,101,100,32,110,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,115,32,37,100,58,32,105,103,110,111,114,105,110,103,32,115,112,101,99,105,102,105,101,100,32,99,104,97,110,110,101,108,32,108,97,121,111,117,116,10,0,67,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,32,105,115,32,111,110,108,121,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,115,117,98,116,105,116,108,101,115,32,99,111,100,101,99,115,10,0,67,111,100,101,99,32,39,37,115,39,32,105,115,32,98,105,116,109,97,112,45,98,97,115,101,100,44,32,115,117,98,116,105,116,108,101,115,32,99,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,67,104,97,114,97,99,116,101,114,32,101,110,99,111,100,105,110,103,32,115,117,98,116,105,116,108,101,115,32,99,111,110,118,101,114,115,105,111,110,32,110,101,101,100,115,32,97,32,108,105,98,97,118,99,111,100,101,99,32,98,117,105,108,116,32,119,105,116,104,32,105,99,111,110,118,32,115,117,112,112,111,114,116,32,102,111,114,32,116,104,105,115,32,99,111,100,101,99,10,0,42,40,99,111,110,115,116,32,65,86,67,108,97,115,115,32,42,42,41,97,118,99,116,120,45,62,112,114,105,118,95,100,97,116,97,32,61,61,32,99,111,100,101,99,45,62,112,114,105,118,95,99,108,97,115,115,0,73,110,118,97,108,105,100,32,109,101,100,105,97,32,116,121,112,101,32,102,111,114,32,118,105,100,101,111,10,0,84,104,105,115,32,100,101,99,111,100,101,114,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,112,97,114,97,109,101,116,101,114,32,99,104,97,110,103,101,115,44,32,98,117,116,32,80,65,82,65,77,95,67,72,65,78,71,69,32,115,105,100,101,32,100,97,116,97,32,119,97,115,32,115,101,110,116,32,116,111,32,105,116,46,10,0,73,110,118,97,108,105,100,32,99,104,97,110,110,101,108,32,99,111,117,110,116,0,73,110,118,97,108,105,100,32,115,97,109,112,108,101,32,114,97,116,101,0,80,65,82,65,77,95,67,72,65,78,71,69,32,115,105,100,101,32,100,97,116,97,32,116,111,111,32,115,109,97,108,108,46,10,0,69,114,114,111,114,32,97,112,112,108,121,105,110,103,32,112,97,114,97,109,101,116,101,114,32,99,104,97,110,103,101,115,46,10,0,33,112,105,99,116,117,114,101,45,62,101,120,116,101,110,100,101,100,95,100,97,116,97,32,124,124,32,112,105,99,116,117,114,101,45,62,101,120,116,101,110,100,101,100,95,100,97,116,97,32,61,61,32,112,105,99,116,117,114,101,45,62,100,97,116,97,0,33,100,115,116,45,62,112,114,111,103,114,101,115,115,0,112,32,60,61,32,101,110,100,0,0,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255,47,100,101,118,47,117,114,97,110,100,111,109,0,70,97,105,108,101,100,32,116,111,32,115,101,116,32,99,108,111,115,101,32,111,110,32,101,120,101,99,10,0,91,37,115,32,64,32,37,112,93,32,0,112,97,110,105,99,0,102,97,116,97,108,0,101,114,114,111,114,0,119,97,114,110,105,110,103,0,105,110,102,111,0,118,101,114,98,111,115,101,0,100,101,98,117,103,0,113,117,105,101,116,0,91,37,115,93,32,0,37,115,37,115,37,115,37,115,0,32,32,32,32,76,97,115,116,32,109,101,115,115,97,103,101,32,114,101,112,101,97,116,101,100,32,37,100,32,116,105,109,101,115,13,0,32,32,32,32,76,97,115,116,32,109,101,115,115,97,103,101,32,114,101,112,101,97,116,101,100,32,37,100,32,116,105,109,101,115,10,0,84,69,82,77,0,78,79,95,67,79,76,79,82,0,65,86,95,76,79,71,95,70,79,82,67,69,95,78,79,67,79,76,79,82,0,65,86,95,76,79,71,95,70,79,82,67,69,95,67,79,76,79,82,0,65,86,95,76,79,71,95,70,79,82,67,69,95,50,53,54,67,79,76,79,82,0,50,53,54,99,111,108,111,114,0,27,91,37,100,59,51,37,100,109,37,115,27,91,48,109,0,27,91,52,56,59,53,59,37,100,109,27,91,51,56,59,53,59,37,100,109,37,115,27,91,48,109,0,47,100,101,118,47,114,97,110,100,111,109,0,115,105,122,101,111,102,40,116,109,112,41,32,62,61,32,97,118,95,115,104,97,95,115,105,122,101,0,108,105,98,97,118,117,116,105,108,47,114,97,110,100,111,109,95,115,101,101,100,46,99,0,65,76,76,0,80,111,111,108,32,114,97,99,101,32,100,101,99,116,101,99,116,101,100,44,32,115,112,105,110,105,110,103,32,116,111,32,97,118,111,105,100,32,111,118,101,114,97,108,108,111,99,97,116,105,111,110,32,97,110,100,32,101,118,101,110,116,117,97,108,32,79,79,77,10,0,109,111,110,111,0,115,116,101,114,101,111,0,50,46,49,0,51,46,48,0,51,46,48,40,98,97,99,107,41,0,52,46,48,0,113,117,97,100,0,113,117,97,100,40,115,105,100,101,41,0,51,46,49,0,53,46,48,0,53,46,48,40,115,105,100,101,41,0,52,46,49,0,53,46,49,0,53,46,49,40,115,105,100,101,41,0,54,46,48,0,54,46,48,40,102,114,111,110,116,41,0,104,101,120,97,103,111,110,97,108,0,54,46,49,0,54,46,49,40,98,97,99,107,41,0,54,46,49,40,102,114,111,110,116,41,0,55,46,48,0,55,46,48,40,102,114,111,110,116,41,0,55,46,49,0,55,46,49,40,119,105,100,101,41,0,55,46,49,40,119,105,100,101,45,115,105,100,101,41,0,111,99,116,97,103,111,110,97,108,0,104,101,120,97,100,101,99,97,103,111,110,97,108,0,100,111,119,110,109,105,120,0,70,76,0,102,114,111,110,116,32,108,101,102,116,0,70,82,0,102,114,111,110,116,32,114,105,103,104,116,0,70,67,0,102,114,111,110,116,32,99,101,110,116,101,114,0,76,70,69,0,108,111,119,32,102,114,101,113,117,101,110,99,121,0,66,76,0,98,97,99,107,32,108,101,102,116,0,66,82,0,98,97,99,107,32,114,105,103,104,116,0,70,76,67,0,102,114,111,110,116,32,108,101,102,116,45,111,102,45,99,101,110,116,101,114,0,70,82,67,0,102,114,111,110,116,32,114,105,103,104,116,45,111,102,45,99,101,110,116,101,114,0,66,67,0,98,97,99,107,32,99,101,110,116,101,114,0,83,76,0,115,105,100,101,32,108,101,102,116,0,83,82,0,115,105,100,101,32,114,105,103,104,116,0,84,67,0,116,111,112,32,99,101,110,116,101,114,0,84,70,76,0,116,111,112,32,102,114,111,110,116,32,108,101,102,116,0,84,70,67,0,116,111,112,32,102,114,111,110,116,32,99,101,110,116,101,114,0,84,70,82,0,116,111,112,32,102,114,111,110,116,32,114,105,103,104,116,0,84,66,76,0,116,111,112,32,98,97,99,107,32,108,101,102,116,0,84,66,67,0,116,111,112,32,98,97,99,107,32,99,101,110,116,101,114,0,84,66,82,0,116,111,112,32,98,97,99,107,32,114,105,103,104,116,0,68,76,0,100,111,119,110,109,105,120,32,108,101,102,116,0,68,82,0,100,111,119,110,109,105,120,32,114,105,103,104,116,0,87,76,0,119,105,100,101,32,108,101,102,116,0,87,82,0,119,105,100,101,32,114,105,103,104,116,0,83,68,76,0,115,117,114,114,111,117,110,100,32,100,105,114,101,99,116,32,108,101,102,116,0,83,68,82,0,115,117,114,114,111,117,110,100,32,100,105,114,101,99,116,32,114,105,103,104,116,0,76,70,69,50,0,108,111,119,32,102,114,101,113,117,101,110,99,121,32,50,0,37,115,0,37,100,32,99,104,97,110,110,101,108,115,0,32,40,0,43,0,41,0,37,100,37,42,49,91,58,47,93,37,100,37,99,0,86,97,108,117,101,32,37,102,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,39,37,115,39,32,111,117,116,32,111,102,32,114,97,110,103,101,32,91,37,103,32,45,32,37,103,93,10,0,86,97,108,117,101,32,37,102,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,39,37,115,39,32,105,115,32,110,111,116,32,97,32,118,97,108,105,100,32,115,101,116,32,111,102,32,51,50,98,105,116,32,105,110,116,101,103,101,114,32,102,108,97,103,115,10,0,0,1,2,53,3,7,54,27,4,38,41,8,34,55,48,28,62,5,39,46,44,42,22,9,24,35,59,56,49,18,29,11,63,52,6,26,37,40,33,47,61,45,43,21,23,58,17,10,51,25,36,32,60,20,57,16,50,31,19,15,30,14,13,12,99,111,110,115,116,95,118,97,108,117,101,115,32,97,114,114,97,121,32,116,111,111,32,115,109,97,108,108,32,102,111,114,32,37,115,10,0,100,101,102,97,117,108,116,0,110,111,110,101,0,97,108,108,0,69,118,97,108,0,69,0,80,73,0,80,72,73,0,81,80,50,76,65,77,66,68,65,0,85,110,100,101,102,105,110,101,100,32,99,111,110,115,116,97,110,116,32,111,114,32,109,105,115,115,105,110,103,32,39,40,39,32,105,110,32,39,37,115,39,10,0,77,105,115,115,105,110,103,32,39,41,39,32,105,110,32,39,37,115,39,10,0,77,105,115,115,105,110,103,32,39,41,39,32,111,114,32,116,111,111,32,109,97,110,121,32,97,114,103,115,32,105,110,32,39,37,115,39,10,0,115,105,110,104,0,99,111,115,104,0,116,97,110,104,0,115,105,110,0,99,111,115,0,116,97,110,0,97,116,97,110,0,97,115,105,110,0,97,99,111,115,0,101,120,112,0,108,111,103,0,97,98,115,0,116,105,109,101,0,115,113,117,105,115,104,0,103,97,117,115,115,0,109,111,100,0,109,97,120,0,109,105,110,0,101,113,0,103,116,101,0,103,116,0,108,116,101,0,108,116,0,108,100,0,105,115,110,97,110,0,105,115,105,110,102,0,115,116,0,119,104,105,108,101,0,116,97,121,108,111,114,0,114,111,111,116,0,102,108,111,111,114,0,99,101,105,108,0,116,114,117,110,99,0,115,113,114,116,0,110,111,116,0,112,111,119,0,112,114,105,110,116,0,104,121,112,111,116,0,103,99,100,0,105,102,0,105,102,110,111,116,0,98,105,116,97,110,100,0,98,105,116,111,114,0,98,101,116,119,101,101,110,0,99,108,105,112,0,85,110,107,110,111,119,110,32,102,117,110,99,116,105,111,110,32,105,110,32,39,37,115,39,10,0,73,110,118,97,108,105,100,32,99,104,97,114,115,32,39,37,115,39,32,97,116,32,116,104,101,32,101,110,100,32,111,102,32,101,120,112,114,101,115,115,105,111,110,32,39,37,115,39,10,0,37,102,10,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,10,0,121,117,118,52,50,48,112,0,121,117,121,118,52,50,50,0,114,103,98,50,52,0,98,103,114,50,52,0,121,117,118,52,50,50,112,0,121,117,118,52,52,52,112,0,121,117,118,52,49,48,112,0,121,117,118,52,49,49,112,0,103,114,97,121,0,103,114,97,121,56,44,121,56,0,109,111,110,111,119,0,109,111,110,111,98,0,112,97,108,56,0,121,117,118,106,52,50,48,112,0,121,117,118,106,52,50,50,112,0,121,117,118,106,52,52,52,112,0,120,118,109,99,109,99,0,120,118,109,99,105,100,99,116,0,117,121,118,121,52,50,50,0,117,121,121,118,121,121,52,49,49,0,98,103,114,56,0,98,103,114,52,0,98,103,114,52,95,98,121,116,101,0,114,103,98,56,0,114,103,98,52,0,114,103,98,52,95,98,121,116,101,0,110,118,49,50,0,110,118,50,49,0,97,114,103,98,0,114,103,98,97,0,97,98,103,114,0,98,103,114,97,0,103,114,97,121,49,54,98,101,0,121,49,54,98,101,0,103,114,97,121,49,54,108,101,0,121,49,54,108,101,0,121,117,118,52,52,48,112,0,121,117,118,106,52,52,48,112,0,121,117,118,97,52,50,48,112,0,118,100,112,97,117,95,104,50,54,52,0,118,100,112,97,117,95,109,112,101,103,49,0,118,100,112,97,117,95,109,112,101,103,50,0,118,100,112,97,117,95,119,109,118,51,0,118,100,112,97,117,95,118,99,49,0,114,103,98,52,56,98,101,0,114,103,98,52,56,108,101,0,114,103,98,53,54,53,98,101,0,114,103,98,53,54,53,108,101,0,114,103,98,53,53,53,98,101,0,114,103,98,53,53,53,108,101,0,98,103,114,53,54,53,98,101,0,98,103,114,53,54,53,108,101,0,98,103,114,53,53,53,98,101,0,98,103,114,53,53,53,108,101,0,118,97,97,112,105,95,109,111,99,111,0,118,97,97,112,105,95,105,100,99,116,0,118,97,97,112,105,95,118,108,100,0,121,117,118,52,50,48,112,49,54,108,101,0,121,117,118,52,50,48,112,49,54,98,101,0,121,117,118,52,50,50,112,49,54,108,101,0,121,117,118,52,50,50,112,49,54,98,101,0,121,117,118,52,52,52,112,49,54,108,101,0,121,117,118,52,52,52,112,49,54,98,101,0,118,100,112,97,117,95,109,112,101,103,52,0,100,120,118,97,50,95,118,108,100,0,114,103,98,52,52,52,108,101,0,114,103,98,52,52,52,98,101,0,98,103,114,52,52,52,108,101,0,98,103,114,52,52,52,98,101,0,121,97,56,0,103,114,97,121,56,97,0,98,103,114,52,56,98,101,0,98,103,114,52,56,108,101,0,121,117,118,52,50,48,112,57,98,101,0,121,117,118,52,50,48,112,57,108,101,0,121,117,118,52,50,48,112,49,48,98,101,0,121,117,118,52,50,48,112,49,48,108,101,0,121,117,118,52,50,50,112,49,48,98,101,0,121,117,118,52,50,50,112,49,48,108,101,0,121,117,118,52,52,52,112,57,98,101,0,121,117,118,52,52,52,112,57,108,101,0,121,117,118,52,52,52,112,49,48,98,101,0,121,117,118,52,52,52,112,49,48,108,101,0,121,117,118,52,50,50,112,57,98,101,0,121,117,118,52,50,50,112,57,108,101,0,118,100,97,95,118,108,100,0,103,98,114,112,0,103,98,114,112,57,98,101,0,103,98,114,112,57,108,101,0,103,98,114,112,49,48,98,101,0,103,98,114,112,49,48,108,101,0,103,98,114,112,49,54,98,101,0,103,98,114,112,49,54,108,101,0,121,117,118,97,52,50,50,112,0,121,117,118,97,52,52,52,112,0,121,117,118,97,52,50,48,112,57,98,101,0,121,117,118,97,52,50,48,112,57,108,101,0,121,117,118,97,52,50,50,112,57,98,101,0,121,117,118,97,52,50,50,112,57,108,101,0,121,117,118,97,52,52,52,112,57,98,101,0,121,117,118,97,52,52,52,112,57,108,101,0,121,117,118,97,52,50,48,112,49,48,98,101,0,121,117,118,97,52,50,48,112,49,48,108,101,0,121,117,118,97,52,50,50,112,49,48,98,101,0,121,117,118,97,52,50,50,112,49,48,108,101,0,121,117,118,97,52,52,52,112,49,48,98,101,0,121,117,118,97,52,52,52,112,49,48,108,101,0,121,117,118,97,52,50,48,112,49,54,98,101,0,121,117,118,97,52,50,48,112,49,54,108,101,0,121,117,118,97,52,50,50,112,49,54,98,101,0,121,117,118,97,52,50,50,112,49,54,108,101,0,121,117,118,97,52,52,52,112,49,54,98,101,0,121,117,118,97,52,52,52,112,49,54,108,101,0,118,100,112,97,117,0,120,121,122,49,50,108,101,0,120,121,122,49,50,98,101,0,110,118,49,54,0,110,118,50,48,108,101,0,110,118,50,48,98,101,0,114,103,98,97,54,52,98,101,0,114,103,98,97,54,52,108,101,0,98,103,114,97,54,52,98,101,0,98,103,114,97,54,52,108,101,0,121,118,121,117,52,50,50,0,118,100,97,0,121,97,49,54,98,101,0,121,97,49,54,108,101,0,103,98,114,97,112,0,103,98,114,97,112,49,54,98,101,0,103,98,114,97,112,49,54,108,101,0,113,115,118,0,109,109,97,108,0,100,51,100,49,49,118,97,95,118,108,100,0,48,114,103,98,0,114,103,98,48,0,48,98,103,114,0,98,103,114,48,0,121,117,118,52,50,48,112,49,50,98,101,0,121,117,118,52,50,48,112,49,50,108,101,0,121,117,118,52,50,48,112,49,52,98,101,0,121,117,118,52,50,48,112,49,52,108,101,0,121,117,118,52,50,50,112,49,50,98,101,0,121,117,118,52,50,50,112,49,50,108,101,0,121,117,118,52,50,50,112,49,52,98,101,0,121,117,118,52,50,50,112,49,52,108,101,0,121,117,118,52,52,52,112,49,50,98,101,0,121,117,118,52,52,52,112,49,50,108,101,0,121,117,118,52,52,52,112,49,52,98,101,0,121,117,118,52,52,52,112,49,52,108,101,0,103,98,114,112,49,50,98,101,0,103,98,114,112,49,50,108,101,0,103,98,114,112,49,52,98,101,0,103,98,114,112,49,52,108,101,0,121,117,118,106,52,49,49,112,0,98,97,121,101,114,95,98,103,103,114,56,0,98,97,121,101,114,95,114,103,103,98,56,0,98,97,121,101,114,95,103,98,114,103,56,0,98,97,121,101,114,95,103,114,98,103,56,0,98,97,121,101,114,95,98,103,103,114,49,54,108,101,0,98,97,121,101,114,95,98,103,103,114,49,54,98,101,0,98,97,121,101,114,95,114,103,103,98,49,54,108,101,0,98,97,121,101,114,95,114,103,103,98,49,54,98,101,0,98,97,121,101,114,95,103,98,114,103,49,54,108,101,0,98,97,121,101,114,95,103,98,114,103,49,54,98,101,0,98,97,121,101,114,95,103,114,98,103,49,54,108,101,0,98,97,121,101,114,95,103,114,98,103,49,54,98,101,0,121,117,118,52,52,48,112,49,48,108,101,0,121,117,118,52,52,48,112,49,48,98,101,0,121,117,118,52,52,48,112,49,50,108,101,0,121,117,118,52,52,48,112,49,50,98,101,0,97,121,117,118,54,52,108,101,0,97,121,117,118,54,52,98,101,0,118,105,100,101,111,116,111,111,108,98,111,120,95,118,108,100,0,112,48,49,48,108,101,0,112,48,49,48,98,101,0,73,77,71,85,84,73,76,83,0,80,105,99,116,117,114,101,32,115,105,122,101,32,37,117,120,37,117,32,105,115,32,105,110,118,97,108,105,100,10,0,97,98,115,40,115,114,99,95,108,105,110,101,115,105,122,101,41,32,62,61,32,98,121,116,101,119,105,100,116,104,0,108,105,98,97,118,117,116,105,108,47,105,109,103,117,116,105,108,115,46,99,0,97,98,115,40,100,115,116,95,108,105,110,101,115,105,122,101,41,32,62,61,32,98,121,116,101,119,105,100,116,104,0,97,118,95,105,109,97,103,101,95,103,101,116,95,108,105,110,101,115,105,122,101,32,102,97,105,108,101,100,10,0,7,12,17,22,5,9,14,20,4,11,16,23,6,10,15,21,128,0,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,46,32,85,112,100,97,116,101,32,121,111,117,114,32,70,70,109,112,101,103,32,118,101,114,115,105,111,110,32,116,111,32,116,104,101,32,110,101,119,101,115,116,32,111,110,101,32,102,114,111,109,32,71,105,116,46,32,73,102,32,116,104,101,32,112,114,111,98,108,101,109,32,115,116,105,108,108,32,111,99,99,117,114,115,44,32,105,116,32,109,101,97,110,115,32,116,104,97,116,32,121,111,117,114,32,102,105,108,101,32,104,97,115,32,97,32,102,101,97,116,117,114,101,32,119,104,105,99,104,32,104,97,115,32,110,111,116,32,98,101,101,110,32,105,109,112,108,101,109,101,110,116,101,100,46,10,0,73,102,32,121,111,117,32,119,97,110,116,32,116,111,32,104,101,108,112,44,32,117,112,108,111,97,100,32,97,32,115,97,109,112,108,101,32,111,102,32,116,104,105,115,32,102,105,108,101,32,116,111,32,102,116,112,58,47,47,117,112,108,111,97,100,46,102,102,109,112,101,103,46,111,114,103,47,105,110,99,111,109,105,110,103,47,32,97,110,100,32,99,111,110,116,97,99,116,32,116,104,101,32,102,102,109,112,101,103,45,100,101,118,101,108,32,109,97,105,108,105,110,103,32,108,105,115,116,46,32,40,102,102,109,112,101,103,45,100,101,118,101,108,64,102,102,109,112,101,103,46,111,114,103,41,10,0,65,115,115,101,114,116,105,111,110,32,37,115,32,102,97,105,108,101,100,32,97,116,32,37,115,58,37,100,10,0,118,97,108,32,124,124,32,33,109,105,110,95,115,105,122,101,0,108,105,98,97,118,117,116,105,108,47,109,101,109,95,105,110,116,101,114,110,97,108,46,104,0,97,117,116,111,0,116,114,117,101,44,121,44,121,101,115,44,101,110,97,98,108,101,44,101,110,97,98,108,101,100,44,111,110,0,102,97,108,115,101,44,110,44,110,111,44,100,105,115,97,98,108,101,44,100,105,115,97,98,108,101,100,44,111,102,102,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,98,111,111,108,101,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+140378),allocate([110,10,0,110,116,115,99,0,112,97,108,0,113,110,116,115,99,0,113,112,97,108,0,115,110,116,115,99,0,115,112,97,108,0,102,105,108,109,0,110,116,115,99,45,102,105,108,109,0,115,113,99,105,102,0,113,99,105,102,0,99,105,102,0,52,99,105,102,0,49,54,99,105,102,0,113,113,118,103,97,0,113,118,103,97,0,118,103,97,0,115,118,103,97,0,120,103,97,0,117,120,103,97,0,113,120,103,97,0,115,120,103,97,0,113,115,120,103,97,0,104,115,120,103,97,0,119,118,103,97,0,119,120,103,97,0,119,115,120,103,97,0,119,117,120,103,97,0,119,111,120,103,97,0,119,113,115,120,103,97,0,119,113,117,120,103,97,0,119,104,115,120,103,97,0,119,104,117,120,103,97,0,99,103,97,0,101,103,97,0,104,100,52,56,48,0,104,100,55,50,48,0,104,100,49,48,56,48,0,50,107,0,50,107,100,99,105,0,50,107,102,108,97,116,0,50,107,115,99,111,112,101,0,52,107,0,52,107,100,99,105,0,52,107,102,108,97,116,0,52,107,115,99,111,112,101,0,110,104,100,0,104,113,118,103,97,0,119,113,118,103,97,0,102,119,113,118,103,97,0,104,118,103,97,0,113,104,100,0,117,104,100,50,49,54,48,0,117,104,100,52,51,50,48,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,105,109,97,103,101,32,115,105,122,101,10,0,37,100,58,37,100,37,99,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,118,105,100,101,111,32,114,97,116,101,10,0,114,103,98,51,50,0,98,103,114,51,50,0,37,115,37,115,0,108,101,0,112,105,120,101,108,32,102,111,114,109,97,116,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,37,115,10,0,86,97,108,117,101,32,37,100,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,39,37,115,39,32,111,117,116,32,111,102,32,37,115,32,102,111,114,109,97,116,32,114,97,110,103,101,32,91,37,100,32,45,32,37,100,93,10,0,115,97,109,112,108,101,32,102,111,114,109,97,116,0,110,111,119,0,37,89,32,45,32,37,109,32,45,32,37,100,0,37,72,58,37,77,58,37,83,0,37,89,37,109,37,100,0,37,72,37,77,37,83,0,37,74,58,37,77,58,37,83,0,37,77,58,37,83,0,37,72,58,37,77,0,37,72,37,77,0,37,72,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,100,117,114,97,116,105,111,110,10,0,48,120,0,114,97,110,100,111,109,0,98,105,107,101,115,104,101,100,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,97,98,99,100,101,102,0,73,110,118,97,108,105,100,32,48,120,82,82,71,71,66,66,91,65,65,93,32,99,111,108,111,114,32,115,116,114,105,110,103,58,32,39,37,115,39,10,0,65,108,105,99,101,66,108,117,101,0,65,110,116,105,113,117,101,87,104,105,116,101,0,65,113,117,97,0,65,113,117,97,109,97,114,105,110,101,0,65,122,117,114,101,0,66,101,105,103,101,0,66,105,115,113,117,101,0,66,108,97,99,107,0,66,108,97,110,99,104,101,100,65,108,109,111,110,100,0,66,108,117,101,0,66,108,117,101,86,105,111,108,101,116,0,66,114,111,119,110,0,66,117,114,108,121,87,111,111,100,0,67,97,100,101,116,66,108,117,101,0,67,104,97,114,116,114,101,117,115,101,0,67,104,111,99,111,108,97,116,101,0,67,111,114,97,108,0,67,111,114,110,102,108,111,119,101,114,66,108,117,101,0,67,111,114,110,115,105,108,107,0,67,114,105,109,115,111,110,0,67,121,97,110,0,68,97,114,107,66,108,117,101,0,68,97,114,107,67,121,97,110,0,68,97,114,107,71,111,108,100,101,110,82,111,100,0,68,97,114,107,71,114,97,121,0,68,97,114,107,71,114,101,101,110,0,68,97,114,107,75,104,97,107,105,0,68,97,114,107,77,97,103,101,110,116,97,0,68,97,114,107,79,108,105,118,101,71,114,101,101,110,0,68,97,114,107,111,114,97,110,103,101,0,68,97,114,107,79,114,99,104,105,100,0,68,97,114,107,82,101,100,0,68,97,114,107,83,97,108,109,111,110,0,68,97,114,107,83,101,97,71,114,101,101,110,0,68,97,114,107,83,108,97,116,101,66,108,117,101,0,68,97,114,107,83,108,97,116,101,71,114,97,121,0,68,97,114,107,84,117,114,113,117,111,105,115,101,0,68,97,114,107,86,105,111,108,101,116,0,68,101,101,112,80,105,110,107,0,68,101,101,112,83,107,121,66,108,117,101,0,68,105,109,71,114,97,121,0,68,111,100,103,101,114,66,108,117,101,0,70,105,114,101,66,114,105,99,107,0,70,108,111,114,97,108,87,104,105,116,101,0,70,111,114,101,115,116,71,114,101,101,110,0,70,117,99,104,115,105,97,0,71,97,105,110,115,98,111,114,111,0,71,104,111,115,116,87,104,105,116,101,0,71,111,108,100,0,71,111,108,100,101,110,82,111,100,0,71,114,97,121,0,71,114,101,101,110,0,71,114,101,101,110,89,101,108,108,111,119,0,72,111,110,101,121,68,101,119,0,72,111,116,80,105,110,107,0,73,110,100,105,97,110,82,101,100,0,73,110,100,105,103,111,0,73,118,111,114,121,0,75,104,97,107,105,0,76,97,118,101,110,100,101,114,0,76,97,118,101,110,100,101,114,66,108,117,115,104,0,76,97,119,110,71,114,101,101,110,0,76,101,109,111,110,67,104,105,102,102,111,110,0,76,105,103,104,116,66,108,117,101,0,76,105,103,104,116,67,111,114,97,108,0,76,105,103,104,116,67,121,97,110,0,76,105,103,104,116,71,111,108,100,101,110,82,111,100,89,101,108,108,111,119,0,76,105,103,104,116,71,114,101,101,110,0,76,105,103,104,116,71,114,101,121,0,76,105,103,104,116,80,105,110,107,0,76,105,103,104,116,83,97,108,109,111,110,0,76,105,103,104,116,83,101,97,71,114,101,101,110,0,76,105,103,104,116,83,107,121,66,108,117,101,0,76,105,103,104,116,83,108,97,116,101,71,114,97,121,0,76,105,103,104,116,83,116,101,101,108,66,108,117,101,0,76,105,103,104,116,89,101,108,108,111,119,0,76,105,109,101,0,76,105,109,101,71,114,101,101,110,0,76,105,110,101,110,0,77,97,103,101,110,116,97,0,77,97,114,111,111,110,0,77,101,100,105,117,109,65,113,117,97,77,97,114,105,110,101,0,77,101,100,105,117,109,66,108,117,101,0,77,101,100,105,117,109,79,114,99,104,105,100,0,77,101,100,105,117,109,80,117,114,112,108,101,0,77,101,100,105,117,109,83,101,97,71,114,101,101,110,0,77,101,100,105,117,109,83,108,97,116,101,66,108,117,101,0,77,101,100,105,117,109,83,112,114,105,110,103,71,114,101,101,110,0,77,101,100,105,117,109,84,117,114,113,117,111,105,115,101,0,77,101,100,105,117,109,86,105,111,108,101,116,82,101,100,0,77,105,100,110,105,103,104,116,66,108,117,101,0,77,105,110,116,67,114,101,97,109,0,77,105,115,116,121,82,111,115,101,0,77,111,99,99,97,115,105,110,0,78,97,118,97,106,111,87,104,105,116,101,0,78,97,118,121,0,79,108,100,76,97,99,101,0,79,108,105,118,101,0,79,108,105,118,101,68,114,97,98,0,79,114,97,110,103,101,0,79,114,97,110,103,101,82,101,100,0,79,114,99,104,105,100,0,80,97,108,101,71,111,108,100,101,110,82,111,100,0,80,97,108,101,71,114,101,101,110,0,80,97,108,101,84,117,114,113,117,111,105,115,101,0,80,97,108,101,86,105,111,108,101,116,82,101,100,0,80,97,112,97,121,97,87,104,105,112,0,80,101,97,99,104,80,117,102,102,0,80,101,114,117,0,80,105,110,107,0,80,108,117,109,0,80,111,119,100,101,114,66,108,117,101,0,80,117,114,112,108,101,0,82,101,100,0,82,111,115,121,66,114,111,119,110,0,82,111,121,97,108,66,108,117,101,0,83,97,100,100,108,101,66,114,111,119,110,0,83,97,108,109,111,110,0,83,97,110,100,121,66,114,111,119,110,0,83,101,97,71,114,101,101,110,0,83,101,97,83,104,101,108,108,0,83,105,101,110,110,97,0,83,105,108,118,101,114,0,83,107,121,66,108,117,101,0,83,108,97,116,101,66,108,117,101,0,83,108,97,116,101,71,114,97,121,0,83,110,111,119,0,83,112,114,105,110,103,71,114,101,101,110,0,83,116,101,101,108,66,108,117,101,0,84,97,110,0,84,101,97,108,0,84,104,105,115,116,108,101,0,84,111,109,97,116,111,0,84,117,114,113,117,111,105,115,101,0,86,105,111,108,101,116,0,87,104,101,97,116,0,87,104,105,116,101,0,87,104,105,116,101,83,109,111,107,101,0,89,101,108,108,111,119,0,89,101,108,108,111,119,71,114,101,101,110,0,67,97,110,110,111,116,32,102,105,110,100,32,99,111,108,111,114,32,39,37,115,39,10,0,73,110,118,97,108,105,100,32,97,108,112,104,97,32,118,97,108,117,101,32,115,112,101,99,105,102,105,101,114,32,39,37,115,39,32,105,110,32,39,37,115,39,10,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,99,111,108,111,114,10,0,85,110,97,98,108,101,32,116,111,32,112,97,114,115,101,32,111,112,116,105,111,110,32,118,97,108,117,101,32,34,37,115,34,32,97,115,32,99,104,97,110,110,101,108,32,108,97,121,111,117,116,10,0,73,110,118,97,108,105,100,32,111,112,116,105,111,110,32,116,121,112,101,46,10,0,65,86,79,112,116,105,111,110,32,116,121,112,101,32,37,100,32,111,102,32,111,112,116,105,111,110,32,37,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,32,121,101,116,10,0,69,114,114,111,114,32,115,101,116,116,105,110,103,32,111,112,116,105,111,110,32,37,115,32,116,111,32,118,97,108,117,101,32,37,115,46,10,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,78,65,78,0,46,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,105,110,102,105,110,105,116,121,0,110,97,110,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+150618);var tempDoublePtr=STATICTOP;STATICTOP+=16;var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(e,i){var r=new Date(1e3*HEAP32[e>>2]);HEAP32[i>>2]=r.getUTCSeconds(),HEAP32[i+4>>2]=r.getUTCMinutes(),HEAP32[i+8>>2]=r.getUTCHours(),HEAP32[i+12>>2]=r.getUTCDate(),HEAP32[i+16>>2]=r.getUTCMonth(),HEAP32[i+20>>2]=r.getUTCFullYear()-1900,HEAP32[i+24>>2]=r.getUTCDay(),HEAP32[i+36>>2]=0,HEAP32[i+32>>2]=0;var f=Date.UTC(r.getUTCFullYear(),0,1,0,0,0,0),l=(r.getTime()-f)/864e5|0;return HEAP32[i+28>>2]=l,HEAP32[i+40>>2]=___tm_timezone,i}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}Module._i64Subtract=_i64Subtract;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}var _acos=Math_acos;function _abort(){Module.abort()}Module._memset=_memset,Module._bitshift64Shl=_bitshift64Shl;var _tan=Math_tan;function ___lock(){}function ___unlock(){}var _asin=Math_asin,_llvm_fabs_f64=Math_abs;Module._i64Add=_i64Add;var _fabs=Math_abs;function _clock(){return void 0===_clock.start&&(_clock.start=Date.now()),1e3*(Date.now()-_clock.start)|0}var _tzname=STATICTOP;STATICTOP+=16;var _daylight=STATICTOP;STATICTOP+=16;var _timezone=STATICTOP;function _tzset(){if(!_tzset.called){_tzset.called=!0,HEAP32[_timezone>>2]=60*-(new Date).getTimezoneOffset();var e=new Date(2e3,0,1),i=new Date(2e3,6,1);HEAP32[_daylight>>2]=Number(e.getTimezoneOffset()!=i.getTimezoneOffset());var r=n(e),f=n(i),l=allocate(intArrayFromString(r),"i8",ALLOC_NORMAL),a=allocate(intArrayFromString(f),"i8",ALLOC_NORMAL);i.getTimezoneOffset()<e.getTimezoneOffset()?(HEAP32[_tzname>>2]=l,HEAP32[_tzname+4>>2]=a):(HEAP32[_tzname>>2]=a,HEAP32[_tzname+4>>2]=l)}function n(e){var i=e.toTimeString().match(/\(([A-Za-z ]+)\)$/);return i?i[1]:"GMT"}}function _mktime(e){_tzset();var i=new Date(HEAP32[e+20>>2]+1900,HEAP32[e+16>>2],HEAP32[e+12>>2],HEAP32[e+8>>2],HEAP32[e+4>>2],HEAP32[e>>2],0),r=HEAP32[e+32>>2],f=i.getTimezoneOffset(),l=new Date(i.getFullYear(),0,1),a=new Date(2e3,6,1).getTimezoneOffset(),n=l.getTimezoneOffset(),t=Math.min(n,a);if(r<0)HEAP32[e+32>>2]=Number(t==f);else if(0<r!=(t==f)){var o=Math.max(n,a),s=0<r?t:o;i.setTime(i.getTime()+6e4*(s-f))}HEAP32[e+24>>2]=i.getDay();var u=(i.getTime()-l.getTime())/864e5|0;return HEAP32[e+28>>2]=u,i.getTime()/1e3|0}STATICTOP+=16;var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},PATH={splitPath:function(e){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1)},normalizeArray:function(e,i){for(var r=0,f=e.length-1;0<=f;f--){var l=e[f];"."===l?e.splice(f,1):".."===l?(e.splice(f,1),r++):r&&(e.splice(f,1),r--)}if(i)for(;r--;r)e.unshift("..");return e},normalize:function(e){var i="/"===e.charAt(0),r="/"===e.substr(-1);return(e=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!i).join("/"))||i||(e="."),e&&r&&(e+="/"),(i?"/":"")+e},dirname:function(e){var i=PATH.splitPath(e),r=i[0],f=i[1];return r||f?(f&&(f=f.substr(0,f.length-1)),r+f):"."},basename:function(e){if("/"===e)return"/";var i=e.lastIndexOf("/");return-1===i?e:e.substr(i+1)},extname:function(e){return PATH.splitPath(e)[3]},join:function(){var e=Array.prototype.slice.call(arguments,0);return PATH.normalize(e.join("/"))},join2:function(e,i){return PATH.normalize(e+"/"+i)},resolve:function(){for(var e="",i=!1,r=arguments.length-1;-1<=r&&!i;r--){var f=0<=r?arguments[r]:FS.cwd();if("string"!=typeof f)throw new TypeError("Arguments to path.resolve must be strings");if(!f)return"";e=f+"/"+e,i="/"===f.charAt(0)}return(i?"/":"")+(e=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!i).join("/"))||"."},relative:function(e,i){function r(e){for(var i=0;i<e.length&&""===e[i];i++);for(var r=e.length-1;0<=r&&""===e[r];r--);return r<i?[]:e.slice(i,r-i+1)}e=PATH.resolve(e).substr(1),i=PATH.resolve(i).substr(1);for(var f=r(e.split("/")),l=r(i.split("/")),a=Math.min(f.length,l.length),n=a,t=0;t<a;t++)if(f[t]!==l[t]){n=t;break}var o=[];for(t=n;t<f.length;t++)o.push("..");return(o=o.concat(l.slice(n))).join("/")}},TTY={ttys:[],init:function(){},shutdown:function(){},register:function(e,i){TTY.ttys[e]={input:[],output:[],ops:i},FS.registerDevice(e,TTY.stream_ops)},stream_ops:{open:function(e){var i=TTY.ttys[e.node.rdev];if(!i)throw new FS.ErrnoError(ERRNO_CODES.ENODEV);e.tty=i,e.seekable=!1},close:function(e){e.tty.ops.flush(e.tty)},flush:function(e){e.tty.ops.flush(e.tty)},read:function(e,i,r,f,l){if(!e.tty||!e.tty.ops.get_char)throw new FS.ErrnoError(ERRNO_CODES.ENXIO);for(var a=0,n=0;n<f;n++){var t;try{t=e.tty.ops.get_char(e.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(void 0===t&&0===a)throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);if(null==t)break;a++,i[r+n]=t}return a&&(e.node.timestamp=Date.now()),a},write:function(e,i,r,f,l){if(!e.tty||!e.tty.ops.put_char)throw new FS.ErrnoError(ERRNO_CODES.ENXIO);for(var a=0;a<f;a++)try{e.tty.ops.put_char(e.tty,i[r+a])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return f&&(e.node.timestamp=Date.now()),a}},default_tty_ops:{get_char:function(e){if(!e.input.length){var i=null;if(ENVIRONMENT_IS_NODE){var r,f=new Buffer(256),l=process.stdin.fd,a=!1;try{l=fs.openSync("/dev/stdin","r"),a=!0}catch(e){}r=fs.readSync(l,f,0,256,null),a&&fs.closeSync(l),i=0<r?f.slice(0,r).toString("utf-8"):null}else"undefined"!=typeof window&&"function"==typeof window.prompt?null!==(i=window.prompt("Input: "))&&(i+="\n"):"function"==typeof readline&&null!==(i=readline())&&(i+="\n");if(!i)return null;e.input=intArrayFromString(i,!0)}return e.input.shift()},put_char:function(e,i){null===i||10===i?(Module.print(UTF8ArrayToString(e.output,0)),e.output=[]):0!=i&&e.output.push(i)},flush:function(e){e.output&&0<e.output.length&&(Module.print(UTF8ArrayToString(e.output,0)),e.output=[])}},default_tty1_ops:{put_char:function(e,i){null===i||10===i?(Module.printErr(UTF8ArrayToString(e.output,0)),e.output=[]):0!=i&&e.output.push(i)},flush:function(e){e.output&&0<e.output.length&&(Module.printErr(UTF8ArrayToString(e.output,0)),e.output=[])}}},MEMFS={ops_table:null,mount:function(e){return MEMFS.createNode(null,"/",16895,0)},createNode:function(e,i,r,f){if(FS.isBlkdev(r)||FS.isFIFO(r))throw new FS.ErrnoError(ERRNO_CODES.EPERM);MEMFS.ops_table||(MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}});var l=FS.createNode(e,i,r,f);return FS.isDir(l.mode)?(l.node_ops=MEMFS.ops_table.dir.node,l.stream_ops=MEMFS.ops_table.dir.stream,l.contents={}):FS.isFile(l.mode)?(l.node_ops=MEMFS.ops_table.file.node,l.stream_ops=MEMFS.ops_table.file.stream,l.usedBytes=0,l.contents=null):FS.isLink(l.mode)?(l.node_ops=MEMFS.ops_table.link.node,l.stream_ops=MEMFS.ops_table.link.stream):FS.isChrdev(l.mode)&&(l.node_ops=MEMFS.ops_table.chrdev.node,l.stream_ops=MEMFS.ops_table.chrdev.stream),l.timestamp=Date.now(),e&&(e.contents[i]=l),l},getFileDataAsRegularArray:function(e){if(e.contents&&e.contents.subarray){for(var i=[],r=0;r<e.usedBytes;++r)i.push(e.contents[r]);return i}return e.contents},getFileDataAsTypedArray:function(e){return e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array},expandFileStorage:function(e,i){if(e.contents&&e.contents.subarray&&i>e.contents.length&&(e.contents=MEMFS.getFileDataAsRegularArray(e),e.usedBytes=e.contents.length),!e.contents||e.contents.subarray){var r=e.contents?e.contents.buffer.byteLength:0;if(i<=r)return;i=Math.max(i,r*(r<1048576?2:1.125)|0),0!=r&&(i=Math.max(i,256));var f=e.contents;return e.contents=new Uint8Array(i),void(0<e.usedBytes&&e.contents.set(f.subarray(0,e.usedBytes),0))}for(!e.contents&&0<i&&(e.contents=[]);e.contents.length<i;)e.contents.push(0)},resizeFileStorage:function(e,i){if(e.usedBytes!=i){if(0==i)return e.contents=null,void(e.usedBytes=0);if(!e.contents||e.contents.subarray){var r=e.contents;return e.contents=new Uint8Array(new ArrayBuffer(i)),r&&e.contents.set(r.subarray(0,Math.min(i,e.usedBytes))),void(e.usedBytes=i)}if(e.contents||(e.contents=[]),e.contents.length>i)e.contents.length=i;else for(;e.contents.length<i;)e.contents.push(0);e.usedBytes=i}},node_ops:{getattr:function(e){var i={};return i.dev=FS.isChrdev(e.mode)?e.id:1,i.ino=e.id,i.mode=e.mode,i.nlink=1,i.uid=0,i.gid=0,i.rdev=e.rdev,FS.isDir(e.mode)?i.size=4096:FS.isFile(e.mode)?i.size=e.usedBytes:FS.isLink(e.mode)?i.size=e.link.length:i.size=0,i.atime=new Date(e.timestamp),i.mtime=new Date(e.timestamp),i.ctime=new Date(e.timestamp),i.blksize=4096,i.blocks=Math.ceil(i.size/i.blksize),i},setattr:function(e,i){void 0!==i.mode&&(e.mode=i.mode),void 0!==i.timestamp&&(e.timestamp=i.timestamp),void 0!==i.size&&MEMFS.resizeFileStorage(e,i.size)},lookup:function(e,i){throw FS.genericErrors[ERRNO_CODES.ENOENT]},mknod:function(e,i,r,f){return MEMFS.createNode(e,i,r,f)},rename:function(e,i,r){if(FS.isDir(e.mode)){var f;try{f=FS.lookupNode(i,r)}catch(e){}if(f)for(var l in f.contents)throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete e.parent.contents[e.name],e.name=r,(i.contents[r]=e).parent=i},unlink:function(e,i){delete e.contents[i]},rmdir:function(e,i){var r=FS.lookupNode(e,i);for(var f in r.contents)throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);delete e.contents[i]},readdir:function(e){var i=[".",".."];for(var r in e.contents)e.contents.hasOwnProperty(r)&&i.push(r);return i},symlink:function(e,i,r){var f=MEMFS.createNode(e,i,41471,0);return f.link=r,f},readlink:function(e){if(!FS.isLink(e.mode))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return e.link}},stream_ops:{read:function(e,i,r,f,l){var a=e.node.contents;if(l>=e.node.usedBytes)return 0;var n=Math.min(e.node.usedBytes-l,f);if(assert(0<=n),8<n&&a.subarray)i.set(a.subarray(l,l+n),r);else for(var t=0;t<n;t++)i[r+t]=a[l+t];return n},write:function(e,i,r,f,l,a){if(!f)return 0;var n=e.node;if(n.timestamp=Date.now(),i.subarray&&(!n.contents||n.contents.subarray)){if(a)return n.contents=i.subarray(r,r+f),n.usedBytes=f;if(0===n.usedBytes&&0===l)return n.contents=new Uint8Array(i.subarray(r,r+f)),n.usedBytes=f;if(l+f<=n.usedBytes)return n.contents.set(i.subarray(r,r+f),l),f}if(MEMFS.expandFileStorage(n,l+f),n.contents.subarray&&i.subarray)n.contents.set(i.subarray(r,r+f),l);else for(var t=0;t<f;t++)n.contents[l+t]=i[r+t];return n.usedBytes=Math.max(n.usedBytes,l+f),f},llseek:function(e,i,r){var f=i;if(1===r?f+=e.position:2===r&&FS.isFile(e.node.mode)&&(f+=e.node.usedBytes),f<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return f},allocate:function(e,i,r){MEMFS.expandFileStorage(e.node,i+r),e.node.usedBytes=Math.max(e.node.usedBytes,i+r)},mmap:function(e,i,r,f,l,a,n){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);var t,o,s=e.node.contents;if(2&n||s.buffer!==i&&s.buffer!==i.buffer){if((0<l||l+f<e.node.usedBytes)&&(s=s.subarray?s.subarray(l,l+f):Array.prototype.slice.call(s,l,l+f)),o=!0,!(t=_malloc(f)))throw new FS.ErrnoError(ERRNO_CODES.ENOMEM);i.set(s,t)}else o=!1,t=s.byteOffset;return{ptr:t,allocated:o}},msync:function(e,i,r,f,l){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);if(2&l)return 0;MEMFS.stream_ops.write(e,i,0,f,r,!1);return 0}}},IDBFS={dbs:{},indexedDB:function(){if("undefined"!=typeof indexedDB)return indexedDB;var e=null;return"object"==typeof window&&(e=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB),assert(e,"IDBFS used, but indexedDB not supported"),e},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function(e){return MEMFS.mount.apply(null,arguments)},syncfs:function(i,a,n){IDBFS.getLocalSet(i,function(e,l){if(e)return n(e);IDBFS.getRemoteSet(i,function(e,i){if(e)return n(e);var r=a?i:l,f=a?l:i;IDBFS.reconcile(r,f,n)})})},getDB:function(e,i){var r,f=IDBFS.dbs[e];if(f)return i(null,f);try{r=IDBFS.indexedDB().open(e,IDBFS.DB_VERSION)}catch(e){return i(e)}r.onupgradeneeded=function(e){var i,r=e.target.result,f=e.target.transaction;(i=r.objectStoreNames.contains(IDBFS.DB_STORE_NAME)?f.objectStore(IDBFS.DB_STORE_NAME):r.createObjectStore(IDBFS.DB_STORE_NAME)).indexNames.contains("timestamp")||i.createIndex("timestamp","timestamp",{unique:!1})},r.onsuccess=function(){f=r.result,IDBFS.dbs[e]=f,i(null,f)},r.onerror=function(e){i(this.error),e.preventDefault()}},getLocalSet:function(e,i){var r={};function f(e){return"."!==e&&".."!==e}function l(i){return function(e){return PATH.join2(i,e)}}for(var a=FS.readdir(e.mountpoint).filter(f).map(l(e.mountpoint));a.length;){var n,t=a.pop();try{n=FS.stat(t)}catch(e){return i(e)}FS.isDir(n.mode)&&a.push.apply(a,FS.readdir(t).filter(f).map(l(t))),r[t]={timestamp:n.mtime}}return i(null,{type:"local",entries:r})},getRemoteSet:function(e,f){var l={};IDBFS.getDB(e.mountpoint,function(e,r){if(e)return f(e);var i=r.transaction([IDBFS.DB_STORE_NAME],"readonly");i.onerror=function(e){f(this.error),e.preventDefault()},i.objectStore(IDBFS.DB_STORE_NAME).index("timestamp").openKeyCursor().onsuccess=function(e){var i=e.target.result;if(!i)return f(null,{type:"remote",db:r,entries:l});l[i.primaryKey]={timestamp:i.key},i.continue()}})},loadLocalEntry:function(e,i){var r,f;try{f=FS.lookupPath(e).node,r=FS.stat(e)}catch(e){return i(e)}return FS.isDir(r.mode)?i(null,{timestamp:r.mtime,mode:r.mode}):FS.isFile(r.mode)?(f.contents=MEMFS.getFileDataAsTypedArray(f),i(null,{timestamp:r.mtime,mode:r.mode,contents:f.contents})):i(new Error("node type not supported"))},storeLocalEntry:function(e,i,r){try{if(FS.isDir(i.mode))FS.mkdir(e,i.mode);else{if(!FS.isFile(i.mode))return r(new Error("node type not supported"));FS.writeFile(e,i.contents,{encoding:"binary",canOwn:!0})}FS.chmod(e,i.mode),FS.utime(e,i.timestamp,i.timestamp)}catch(e){return r(e)}r(null)},removeLocalEntry:function(e,i){try{FS.lookupPath(e);var r=FS.stat(e);FS.isDir(r.mode)?FS.rmdir(e):FS.isFile(r.mode)&&FS.unlink(e)}catch(e){return i(e)}i(null)},loadRemoteEntry:function(e,i,r){var f=e.get(i);f.onsuccess=function(e){r(null,e.target.result)},f.onerror=function(e){r(this.error),e.preventDefault()}},storeRemoteEntry:function(e,i,r,f){var l=e.put(r,i);l.onsuccess=function(){f(null)},l.onerror=function(e){f(this.error),e.preventDefault()}},removeRemoteEntry:function(e,i,r){var f=e.delete(i);f.onsuccess=function(){r(null)},f.onerror=function(e){r(this.error),e.preventDefault()}},reconcile:function(f,l,i){var a=0,n=[];Object.keys(f.entries).forEach(function(e){var i=f.entries[e],r=l.entries[e];(!r||i.timestamp>r.timestamp)&&(n.push(e),a++)});var r=[];if(Object.keys(l.entries).forEach(function(e){l.entries[e];f.entries[e]||(r.push(e),a++)}),!a)return i(null);var t=0,e=("remote"===f.type?f.db:l.db).transaction([IDBFS.DB_STORE_NAME],"readwrite"),o=e.objectStore(IDBFS.DB_STORE_NAME);function s(e){return e?s.errored?void 0:(s.errored=!0,i(e)):++t>=a?i(null):void 0}e.onerror=function(e){s(this.error),e.preventDefault()},n.sort().forEach(function(r){"local"===l.type?IDBFS.loadRemoteEntry(o,r,function(e,i){if(e)return s(e);IDBFS.storeLocalEntry(r,i,s)}):IDBFS.loadLocalEntry(r,function(e,i){if(e)return s(e);IDBFS.storeRemoteEntry(o,r,i,s)})}),r.sort().reverse().forEach(function(e){"local"===l.type?IDBFS.removeLocalEntry(e,s):IDBFS.removeRemoteEntry(o,e,s)})}},NODEFS={isWindows:!1,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/)},mount:function(e){return assert(ENVIRONMENT_IS_NODE),NODEFS.createNode(null,"/",NODEFS.getMode(e.opts.root),0)},createNode:function(e,i,r,f){if(!FS.isDir(r)&&!FS.isFile(r)&&!FS.isLink(r))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var l=FS.createNode(e,i,r);return l.node_ops=NODEFS.node_ops,l.stream_ops=NODEFS.stream_ops,l},getMode:function(e){var i;try{i=fs.lstatSync(e),NODEFS.isWindows&&(i.mode=i.mode|(146&i.mode)>>1)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return i.mode},realPath:function(e){for(var i=[];e.parent!==e;)i.push(e.name),e=e.parent;return i.push(e.mount.opts.root),i.reverse(),PATH.join.apply(null,i)},flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:function(e){if(e&=-32769,(e&=-524289)in NODEFS.flagsToPermissionStringMap)return NODEFS.flagsToPermissionStringMap[e];throw new FS.ErrnoError(ERRNO_CODES.EINVAL)},node_ops:{getattr:function(e){var i,r=NODEFS.realPath(e);try{i=fs.lstatSync(r)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return NODEFS.isWindows&&!i.blksize&&(i.blksize=4096),NODEFS.isWindows&&!i.blocks&&(i.blocks=(i.size+i.blksize-1)/i.blksize|0),{dev:i.dev,ino:i.ino,mode:i.mode,nlink:i.nlink,uid:i.uid,gid:i.gid,rdev:i.rdev,size:i.size,atime:i.atime,mtime:i.mtime,ctime:i.ctime,blksize:i.blksize,blocks:i.blocks}},setattr:function(e,i){var r=NODEFS.realPath(e);try{if(void 0!==i.mode&&(fs.chmodSync(r,i.mode),e.mode=i.mode),void 0!==i.timestamp){var f=new Date(i.timestamp);fs.utimesSync(r,f,f)}void 0!==i.size&&fs.truncateSync(r,i.size)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},lookup:function(e,i){var r=PATH.join2(NODEFS.realPath(e),i),f=NODEFS.getMode(r);return NODEFS.createNode(e,i,f)},mknod:function(e,i,r,f){var l=NODEFS.createNode(e,i,r,f),a=NODEFS.realPath(l);try{FS.isDir(l.mode)?fs.mkdirSync(a,l.mode):fs.writeFileSync(a,"",{mode:l.mode})}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return l},rename:function(e,i,r){var f=NODEFS.realPath(e),l=PATH.join2(NODEFS.realPath(i),r);try{fs.renameSync(f,l)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},unlink:function(e,i){var r=PATH.join2(NODEFS.realPath(e),i);try{fs.unlinkSync(r)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},rmdir:function(e,i){var r=PATH.join2(NODEFS.realPath(e),i);try{fs.rmdirSync(r)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},readdir:function(e){var i=NODEFS.realPath(e);try{return fs.readdirSync(i)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},symlink:function(e,i,r){var f=PATH.join2(NODEFS.realPath(e),i);try{fs.symlinkSync(r,f)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},readlink:function(e){var i=NODEFS.realPath(e);try{return i=fs.readlinkSync(i),i=NODEJS_PATH.relative(NODEJS_PATH.resolve(e.mount.opts.root),i)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}},stream_ops:{open:function(e){var i=NODEFS.realPath(e.node);try{FS.isFile(e.node.mode)&&(e.nfd=fs.openSync(i,NODEFS.flagsToPermissionString(e.flags)))}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},close:function(e){try{FS.isFile(e.node.mode)&&e.nfd&&fs.closeSync(e.nfd)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}},read:function(e,i,r,f,l){if(0===f)return 0;var a,n=new Buffer(f);try{a=fs.readSync(e.nfd,n,0,f,l)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(0<a)for(var t=0;t<a;t++)i[r+t]=n[t];return a},write:function(e,i,r,f,l){var a,n=new Buffer(i.subarray(r,r+f));try{a=fs.writeSync(e.nfd,n,0,f,l)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return a},llseek:function(e,i,r){var f=i;if(1===r)f+=e.position;else if(2===r&&FS.isFile(e.node.mode))try{f+=fs.fstatSync(e.nfd).size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(f<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return f}}},WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(e){assert(ENVIRONMENT_IS_WORKER),WORKERFS.reader||(WORKERFS.reader=new FileReaderSync);var a=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0),n={};function f(e){for(var i=e.split("/"),r=a,f=0;f<i.length-1;f++){var l=i.slice(0,f+1).join("/");n[l]||(n[l]=WORKERFS.createNode(r,l,WORKERFS.DIR_MODE,0)),r=n[l]}return r}function l(e){var i=e.split("/");return i[i.length-1]}return Array.prototype.forEach.call(e.opts.files||[],function(e){WORKERFS.createNode(f(e.name),l(e.name),WORKERFS.FILE_MODE,0,e,e.lastModifiedDate)}),(e.opts.blobs||[]).forEach(function(e){WORKERFS.createNode(f(e.name),l(e.name),WORKERFS.FILE_MODE,0,e.data)}),(e.opts.packages||[]).forEach(function(r){r.metadata.files.forEach(function(e){var i=e.filename.substr(1);WORKERFS.createNode(f(i),l(i),WORKERFS.FILE_MODE,0,r.blob.slice(e.start,e.end))})}),a},createNode:function(e,i,r,f,l,a){var n=FS.createNode(e,i,r);return n.mode=r,n.node_ops=WORKERFS.node_ops,n.stream_ops=WORKERFS.stream_ops,n.timestamp=(a||new Date).getTime(),assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE),r===WORKERFS.FILE_MODE?(n.size=l.size,n.contents=l):(n.size=4096,n.contents={}),e&&(e.contents[i]=n),n},node_ops:{getattr:function(e){return{dev:1,ino:void 0,mode:e.mode,nlink:1,uid:0,gid:0,rdev:void 0,size:e.size,atime:new Date(e.timestamp),mtime:new Date(e.timestamp),ctime:new Date(e.timestamp),blksize:4096,blocks:Math.ceil(e.size/4096)}},setattr:function(e,i){void 0!==i.mode&&(e.mode=i.mode),void 0!==i.timestamp&&(e.timestamp=i.timestamp)},lookup:function(e,i){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)},mknod:function(e,i,r,f){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},rename:function(e,i,r){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},unlink:function(e,i){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},rmdir:function(e,i){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},readdir:function(e){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},symlink:function(e,i,r){throw new FS.ErrnoError(ERRNO_CODES.EPERM)},readlink:function(e){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}},stream_ops:{read:function(e,i,r,f,l){if(l>=e.node.size)return 0;var a=e.node.contents.slice(l,l+f),n=WORKERFS.reader.readAsArrayBuffer(a);return i.set(new Uint8Array(n),r),a.size},write:function(e,i,r,f,l){throw new FS.ErrnoError(ERRNO_CODES.EIO)},llseek:function(e,i,r){var f=i;if(1===r?f+=e.position:2===r&&FS.isFile(e.node.mode)&&(f+=e.node.size),f<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return f}}};STATICTOP+=16,STATICTOP+=16,STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(e,i){if(i=i||{},!(e=PATH.resolve(FS.cwd(),e)))return{path:"",node:null};var r={follow_mount:!0,recurse_count:0};for(var f in r)void 0===i[f]&&(i[f]=r[f]);if(8<i.recurse_count)throw new FS.ErrnoError(ERRNO_CODES.ELOOP);for(var l=PATH.normalizeArray(e.split("/").filter(function(e){return!!e}),!1),a=FS.root,n="/",t=0;t<l.length;t++){var o=t===l.length-1;if(o&&i.parent)break;if(a=FS.lookupNode(a,l[t]),n=PATH.join2(n,l[t]),FS.isMountpoint(a)&&(!o||o&&i.follow_mount)&&(a=a.mounted.root),!o||i.follow)for(var s=0;FS.isLink(a.mode);){var u=FS.readlink(n);if(n=PATH.resolve(PATH.dirname(n),u),a=FS.lookupPath(n,{recurse_count:i.recurse_count}).node,40<s++)throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}return{path:n,node:a}},getPath:function(e){for(var i;;){if(FS.isRoot(e)){var r=e.mount.mountpoint;return i?"/"!==r[r.length-1]?r+"/"+i:r+i:r}i=i?e.name+"/"+i:e.name,e=e.parent}},hashName:function(e,i){for(var r=0,f=0;f<i.length;f++)r=(r<<5)-r+i.charCodeAt(f)|0;return(e+r>>>0)%FS.nameTable.length},hashAddNode:function(e){var i=FS.hashName(e.parent.id,e.name);e.name_next=FS.nameTable[i],FS.nameTable[i]=e},hashRemoveNode:function(e){var i=FS.hashName(e.parent.id,e.name);if(FS.nameTable[i]===e)FS.nameTable[i]=e.name_next;else for(var r=FS.nameTable[i];r;){if(r.name_next===e){r.name_next=e.name_next;break}r=r.name_next}},lookupNode:function(e,i){var r=FS.mayLookup(e);if(r)throw new FS.ErrnoError(r,e);for(var f=FS.hashName(e.id,i),l=FS.nameTable[f];l;l=l.name_next){var a=l.name;if(l.parent.id===e.id&&a===i)return l}return FS.lookup(e,i)},createNode:function(e,i,r,f){if(!FS.FSNode){FS.FSNode=function(e,i,r,f){e||(e=this),this.parent=e,this.mount=e.mount,this.mounted=null,this.id=FS.nextInode++,this.name=i,this.mode=r,this.node_ops={},this.stream_ops={},this.rdev=f},FS.FSNode.prototype={};Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var l=new FS.FSNode(e,i,r,f);return FS.hashAddNode(l),l},destroyNode:function(e){FS.hashRemoveNode(e)},isRoot:function(e){return e===e.parent},isMountpoint:function(e){return!!e.mounted},isFile:function(e){return 32768==(61440&e)},isDir:function(e){return 16384==(61440&e)},isLink:function(e){return 40960==(61440&e)},isChrdev:function(e){return 8192==(61440&e)},isBlkdev:function(e){return 24576==(61440&e)},isFIFO:function(e){return 4096==(61440&e)},isSocket:function(e){return 49152==(49152&e)},flagModes:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(e){var i=FS.flagModes[e];if(void 0===i)throw new Error("Unknown file open mode: "+e);return i},flagsToPermissionString:function(e){var i=["r","w","rw"][3&e];return 512&e&&(i+="w"),i},nodePermissions:function(e,i){return FS.ignorePermissions?0:(-1===i.indexOf("r")||292&e.mode)&&(-1===i.indexOf("w")||146&e.mode)&&(-1===i.indexOf("x")||73&e.mode)?0:ERRNO_CODES.EACCES},mayLookup:function(e){var i=FS.nodePermissions(e,"x");return i||(e.node_ops.lookup?0:ERRNO_CODES.EACCES)},mayCreate:function(e,i){try{FS.lookupNode(e,i);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(e,"wx")},mayDelete:function(e,i,r){var f;try{f=FS.lookupNode(e,i)}catch(e){return e.errno}var l=FS.nodePermissions(e,"wx");if(l)return l;if(r){if(!FS.isDir(f.mode))return ERRNO_CODES.ENOTDIR;if(FS.isRoot(f)||FS.getPath(f)===FS.cwd())return ERRNO_CODES.EBUSY}else if(FS.isDir(f.mode))return ERRNO_CODES.EISDIR;return 0},mayOpen:function(e,i){return e?FS.isLink(e.mode)?ERRNO_CODES.ELOOP:FS.isDir(e.mode)&&("r"!==FS.flagsToPermissionString(i)||512&i)?ERRNO_CODES.EISDIR:FS.nodePermissions(e,FS.flagsToPermissionString(i)):ERRNO_CODES.ENOENT},MAX_OPEN_FDS:4096,nextfd:function(e,i){e=e||0,i=i||FS.MAX_OPEN_FDS;for(var r=e;r<=i;r++)if(!FS.streams[r])return r;throw new FS.ErrnoError(ERRNO_CODES.EMFILE)},getStream:function(e){return FS.streams[e]},createStream:function(e,i,r){FS.FSStream||(FS.FSStream=function(){},FS.FSStream.prototype={},Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(e){this.node=e}},isRead:{get:function(){return 1!=(2097155&this.flags)}},isWrite:{get:function(){return 0!=(2097155&this.flags)}},isAppend:{get:function(){return 1024&this.flags}}}));var f=new FS.FSStream;for(var l in e)f[l]=e[l];e=f;var a=FS.nextfd(i,r);return e.fd=a,FS.streams[a]=e},closeStream:function(e){FS.streams[e]=null},chrdev_stream_ops:{open:function(e){var i=FS.getDevice(e.node.rdev);e.stream_ops=i.stream_ops,e.stream_ops.open&&e.stream_ops.open(e)},llseek:function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}},major:function(e){return e>>8},minor:function(e){return 255&e},makedev:function(e,i){return e<<8|i},registerDevice:function(e,i){FS.devices[e]={stream_ops:i}},getDevice:function(e){return FS.devices[e]},getMounts:function(e){for(var i=[],r=[e];r.length;){var f=r.pop();i.push(f),r.push.apply(r,f.mounts)}return i},syncfs:function(i,r){"function"==typeof i&&(r=i,i=!1),FS.syncFSRequests++,1<FS.syncFSRequests&&console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work");var f=FS.getMounts(FS.root.mount),l=0;function a(e){return assert(0<FS.syncFSRequests),FS.syncFSRequests--,r(e)}function n(e){if(e)return n.errored?void 0:(n.errored=!0,a(e));++l>=f.length&&a(null)}f.forEach(function(e){if(!e.type.syncfs)return n(null);e.type.syncfs(e,i,n)})},mount:function(e,i,r){var f,l="/"===r,a=!r;if(l&&FS.root)throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(!l&&!a){var n=FS.lookupPath(r,{follow_mount:!1});if(r=n.path,f=n.node,FS.isMountpoint(f))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(!FS.isDir(f.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var t={type:e,opts:i,mountpoint:r,mounts:[]},o=e.mount(t);return(o.mount=t).root=o,l?FS.root=o:f&&(f.mounted=t,f.mount&&f.mount.mounts.push(t)),o},unmount:function(e){var i=FS.lookupPath(e,{follow_mount:!1});if(!FS.isMountpoint(i.node))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var r=i.node,f=r.mounted,l=FS.getMounts(f);Object.keys(FS.nameTable).forEach(function(e){for(var i=FS.nameTable[e];i;){var r=i.name_next;-1!==l.indexOf(i.mount)&&FS.destroyNode(i),i=r}}),r.mounted=null;var a=r.mount.mounts.indexOf(f);assert(-1!==a),r.mount.mounts.splice(a,1)},lookup:function(e,i){return e.node_ops.lookup(e,i)},mknod:function(e,i,r){var f=FS.lookupPath(e,{parent:!0}).node,l=PATH.basename(e);if(!l||"."===l||".."===l)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var a=FS.mayCreate(f,l);if(a)throw new FS.ErrnoError(a);if(!f.node_ops.mknod)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return f.node_ops.mknod(f,l,i,r)},create:function(e,i){return i=void 0!==i?i:438,i&=4095,i|=32768,FS.mknod(e,i,0)},mkdir:function(e,i){return i=void 0!==i?i:511,i&=1023,i|=16384,FS.mknod(e,i,0)},mkdev:function(e,i,r){return void 0===r&&(r=i,i=438),i|=8192,FS.mknod(e,i,r)},symlink:function(e,i){if(!PATH.resolve(e))throw new FS.ErrnoError(ERRNO_CODES.ENOENT);var r=FS.lookupPath(i,{parent:!0}).node;if(!r)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);var f=PATH.basename(i),l=FS.mayCreate(r,f);if(l)throw new FS.ErrnoError(l);if(!r.node_ops.symlink)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return r.node_ops.symlink(r,f,e)},rename:function(i,r){var e,f,l=PATH.dirname(i),a=PATH.dirname(r),n=PATH.basename(i),t=PATH.basename(r);try{e=FS.lookupPath(i,{parent:!0}).node,f=FS.lookupPath(r,{parent:!0}).node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!e||!f)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(e.mount!==f.mount)throw new FS.ErrnoError(ERRNO_CODES.EXDEV);var o,s=FS.lookupNode(e,n),u=PATH.relative(i,a);if("."!==u.charAt(0))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if("."!==(u=PATH.relative(r,l)).charAt(0))throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY);try{o=FS.lookupNode(f,t)}catch(e){}if(s!==o){var h=FS.isDir(s.mode),w=FS.mayDelete(e,n,h);if(w)throw new FS.ErrnoError(w);if(w=o?FS.mayDelete(f,t,h):FS.mayCreate(f,t))throw new FS.ErrnoError(w);if(!e.node_ops.rename)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(s)||o&&FS.isMountpoint(o))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);if(f!==e&&(w=FS.nodePermissions(e,"w")))throw new FS.ErrnoError(w);try{FS.trackingDelegate.willMovePath&&FS.trackingDelegate.willMovePath(i,r)}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+i+"', '"+r+"') threw an exception: "+e.message)}FS.hashRemoveNode(s);try{e.node_ops.rename(s,f,t)}catch(e){throw e}finally{FS.hashAddNode(s)}try{FS.trackingDelegate.onMovePath&&FS.trackingDelegate.onMovePath(i,r)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+i+"', '"+r+"') threw an exception: "+e.message)}}},rmdir:function(i){var e=FS.lookupPath(i,{parent:!0}).node,r=PATH.basename(i),f=FS.lookupNode(e,r),l=FS.mayDelete(e,r,!0);if(l)throw new FS.ErrnoError(l);if(!e.node_ops.rmdir)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(f))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);try{FS.trackingDelegate.willDeletePath&&FS.trackingDelegate.willDeletePath(i)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+e.message)}e.node_ops.rmdir(e,r),FS.destroyNode(f);try{FS.trackingDelegate.onDeletePath&&FS.trackingDelegate.onDeletePath(i)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+e.message)}},readdir:function(e){var i=FS.lookupPath(e,{follow:!0}).node;if(!i.node_ops.readdir)throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);return i.node_ops.readdir(i)},unlink:function(i){var e=FS.lookupPath(i,{parent:!0}).node,r=PATH.basename(i),f=FS.lookupNode(e,r),l=FS.mayDelete(e,r,!1);if(l)throw l===ERRNO_CODES.EISDIR&&(l=ERRNO_CODES.EPERM),new FS.ErrnoError(l);if(!e.node_ops.unlink)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isMountpoint(f))throw new FS.ErrnoError(ERRNO_CODES.EBUSY);try{FS.trackingDelegate.willDeletePath&&FS.trackingDelegate.willDeletePath(i)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+i+"') threw an exception: "+e.message)}e.node_ops.unlink(e,r),FS.destroyNode(f);try{FS.trackingDelegate.onDeletePath&&FS.trackingDelegate.onDeletePath(i)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+i+"') threw an exception: "+e.message)}},readlink:function(e){var i=FS.lookupPath(e).node;if(!i)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(!i.node_ops.readlink)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return PATH.resolve(FS.getPath(i.parent),i.node_ops.readlink(i))},stat:function(e,i){var r=FS.lookupPath(e,{follow:!i}).node;if(!r)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(!r.node_ops.getattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);return r.node_ops.getattr(r)},lstat:function(e){return FS.stat(e,!0)},chmod:function(e,i,r){var f;"string"==typeof e?f=FS.lookupPath(e,{follow:!r}).node:f=e;if(!f.node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);f.node_ops.setattr(f,{mode:4095&i|-4096&f.mode,timestamp:Date.now()})},lchmod:function(e,i){FS.chmod(e,i,!0)},fchmod:function(e,i){var r=FS.getStream(e);if(!r)throw new FS.ErrnoError(ERRNO_CODES.EBADF);FS.chmod(r.node,i)},chown:function(e,i,r,f){var l;"string"==typeof e?l=FS.lookupPath(e,{follow:!f}).node:l=e;if(!l.node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);l.node_ops.setattr(l,{timestamp:Date.now()})},lchown:function(e,i,r){FS.chown(e,i,r,!0)},fchown:function(e,i,r){var f=FS.getStream(e);if(!f)throw new FS.ErrnoError(ERRNO_CODES.EBADF);FS.chown(f.node,i,r)},truncate:function(e,i){if(i<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var r;"string"==typeof e?r=FS.lookupPath(e,{follow:!0}).node:r=e;if(!r.node_ops.setattr)throw new FS.ErrnoError(ERRNO_CODES.EPERM);if(FS.isDir(r.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!FS.isFile(r.mode))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var f=FS.nodePermissions(r,"w");if(f)throw new FS.ErrnoError(f);r.node_ops.setattr(r,{size:i,timestamp:Date.now()})},ftruncate:function(e,i){var r=FS.getStream(e);if(!r)throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(0==(2097155&r.flags))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);FS.truncate(r.node,i)},utime:function(e,i,r){var f=FS.lookupPath(e,{follow:!0}).node;f.node_ops.setattr(f,{timestamp:Math.max(i,r)})},open:function(i,e,r,f,l){if(""===i)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);var a;if(r=void 0===r?438:r,r=64&(e="string"==typeof e?FS.modeStringToFlags(e):e)?4095&r|32768:0,"object"==typeof i)a=i;else{i=PATH.normalize(i);try{a=FS.lookupPath(i,{follow:!(131072&e)}).node}catch(e){}}var n=!1;if(64&e)if(a){if(128&e)throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}else a=FS.mknod(i,r,0),n=!0;if(!a)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(FS.isChrdev(a.mode)&&(e&=-513),65536&e&&!FS.isDir(a.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);if(!n){var t=FS.mayOpen(a,e);if(t)throw new FS.ErrnoError(t)}512&e&&FS.truncate(a,0),e&=-641;var o=FS.createStream({node:a,path:FS.getPath(a),flags:e,seekable:!0,position:0,stream_ops:a.stream_ops,ungotten:[],error:!1},f,l);o.stream_ops.open&&o.stream_ops.open(o),!Module.logReadFiles||1&e||(FS.readFiles||(FS.readFiles={}),i in FS.readFiles||(FS.readFiles[i]=1,Module.printErr("read file: "+i)));try{if(FS.trackingDelegate.onOpenFile){var s=0;1!=(2097155&e)&&(s|=FS.tracking.openFlags.READ),0!=(2097155&e)&&(s|=FS.tracking.openFlags.WRITE),FS.trackingDelegate.onOpenFile(i,s)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+i+"', flags) threw an exception: "+e.message)}return o},close:function(e){e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(e){throw e}finally{FS.closeStream(e.fd)}},llseek:function(e,i,r){if(!e.seekable||!e.stream_ops.llseek)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);return e.position=e.stream_ops.llseek(e,i,r),e.ungotten=[],e.position},read:function(e,i,r,f,l){if(f<0||l<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(1==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!e.stream_ops.read)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var a=!0;if(void 0===l)l=e.position,a=!1;else if(!e.seekable)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);var n=e.stream_ops.read(e,i,r,f,l);return a||(e.position+=n),n},write:function(e,i,r,f,l,a){if(f<0||l<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(0==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(ERRNO_CODES.EISDIR);if(!e.stream_ops.write)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);1024&e.flags&&FS.llseek(e,0,2);var n=!0;if(void 0===l)l=e.position,n=!1;else if(!e.seekable)throw new FS.ErrnoError(ERRNO_CODES.ESPIPE);var t=e.stream_ops.write(e,i,r,f,l,a);n||(e.position+=t);try{e.path&&FS.trackingDelegate.onWriteToFile&&FS.trackingDelegate.onWriteToFile(e.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return t},allocate:function(e,i,r){if(i<0||r<=0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);if(0==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EBADF);if(!FS.isFile(e.node.mode)&&!FS.isDir(node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENODEV);if(!e.stream_ops.allocate)throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP);e.stream_ops.allocate(e,i,r)},mmap:function(e,i,r,f,l,a,n){if(1==(2097155&e.flags))throw new FS.ErrnoError(ERRNO_CODES.EACCES);if(!e.stream_ops.mmap)throw new FS.ErrnoError(ERRNO_CODES.ENODEV);return e.stream_ops.mmap(e,i,r,f,l,a,n)},msync:function(e,i,r,f,l){return e&&e.stream_ops.msync?e.stream_ops.msync(e,i,r,f,l):0},munmap:function(e){return 0},ioctl:function(e,i,r){if(!e.stream_ops.ioctl)throw new FS.ErrnoError(ERRNO_CODES.ENOTTY);return e.stream_ops.ioctl(e,i,r)},readFile:function(e,i){if((i=i||{}).flags=i.flags||"r",i.encoding=i.encoding||"binary","utf8"!==i.encoding&&"binary"!==i.encoding)throw new Error('Invalid encoding type "'+i.encoding+'"');var r,f=FS.open(e,i.flags),l=FS.stat(e).size,a=new Uint8Array(l);return FS.read(f,a,0,l,0),"utf8"===i.encoding?r=UTF8ArrayToString(a,0):"binary"===i.encoding&&(r=a),FS.close(f),r},writeFile:function(e,i,r){if((r=r||{}).flags=r.flags||"w",r.encoding=r.encoding||"utf8","utf8"!==r.encoding&&"binary"!==r.encoding)throw new Error('Invalid encoding type "'+r.encoding+'"');var f=FS.open(e,r.flags,r.mode);if("utf8"===r.encoding){var l=new Uint8Array(lengthBytesUTF8(i)+1),a=stringToUTF8Array(i,l,0,l.length);FS.write(f,l,0,a,0,r.canOwn)}else"binary"===r.encoding&&FS.write(f,i,0,i.length,0,r.canOwn);FS.close(f)},cwd:function(){return FS.currentPath},chdir:function(e){var i=FS.lookupPath(e,{follow:!0});if(!FS.isDir(i.node.mode))throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR);var r=FS.nodePermissions(i.node,"x");if(r)throw new FS.ErrnoError(r);FS.currentPath=i.path},createDefaultDirectories:function(){FS.mkdir("/tmp"),FS.mkdir("/home"),FS.mkdir("/home/web_user")},createDefaultDevices:function(){var e;if(FS.mkdir("/dev"),FS.registerDevice(FS.makedev(1,3),{read:function(){return 0},write:function(e,i,r,f,l){return f}}),FS.mkdev("/dev/null",FS.makedev(1,3)),TTY.register(FS.makedev(5,0),TTY.default_tty_ops),TTY.register(FS.makedev(6,0),TTY.default_tty1_ops),FS.mkdev("/dev/tty",FS.makedev(5,0)),FS.mkdev("/dev/tty1",FS.makedev(6,0)),"undefined"!=typeof crypto){var i=new Uint8Array(1);e=function(){return crypto.getRandomValues(i),i[0]}}else e=ENVIRONMENT_IS_NODE?function(){return require("crypto").randomBytes(1)[0]}:function(){return 256*Math.random()|0};FS.createDevice("/dev","random",e),FS.createDevice("/dev","urandom",e),FS.mkdir("/dev/shm"),FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:function(){FS.mkdir("/proc"),FS.mkdir("/proc/self"),FS.mkdir("/proc/self/fd"),FS.mount({mount:function(){var e=FS.createNode("/proc/self","fd",16895,73);return e.node_ops={lookup:function(e,i){var r=+i,f=FS.getStream(r);if(!f)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var l={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:function(){return f.path}}};return l.parent=l}},e}},{},"/proc/self/fd")},createStandardStreams:function(){Module.stdin?FS.createDevice("/dev","stdin",Module.stdin):FS.symlink("/dev/tty","/dev/stdin"),Module.stdout?FS.createDevice("/dev","stdout",null,Module.stdout):FS.symlink("/dev/tty","/dev/stdout"),Module.stderr?FS.createDevice("/dev","stderr",null,Module.stderr):FS.symlink("/dev/tty1","/dev/stderr");var e=FS.open("/dev/stdin","r");assert(0===e.fd,"invalid handle for stdin ("+e.fd+")");var i=FS.open("/dev/stdout","w");assert(1===i.fd,"invalid handle for stdout ("+i.fd+")");var r=FS.open("/dev/stderr","w");assert(2===r.fd,"invalid handle for stderr ("+r.fd+")")},ensureErrnoError:function(){FS.ErrnoError||(FS.ErrnoError=function(e,i){this.node=i,this.setErrno=function(e){for(var i in this.errno=e,ERRNO_CODES)if(ERRNO_CODES[i]===e){this.code=i;break}},this.setErrno(e),this.message=ERRNO_MESSAGES[e]},FS.ErrnoError.prototype=new Error,FS.ErrnoError.prototype.constructor=FS.ErrnoError,[ERRNO_CODES.ENOENT].forEach(function(e){FS.genericErrors[e]=new FS.ErrnoError(e),FS.genericErrors[e].stack="<generic error, no stack>"}))},staticInit:function(){FS.ensureErrnoError(),FS.nameTable=new Array(4096),FS.mount(MEMFS,{},"/"),FS.createDefaultDirectories(),FS.createDefaultDevices(),FS.createSpecialDirectories(),FS.filesystems={MEMFS:MEMFS,IDBFS:IDBFS,NODEFS:NODEFS,WORKERFS:WORKERFS}},init:function(e,i,r){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)"),FS.init.initialized=!0,FS.ensureErrnoError(),Module.stdin=e||Module.stdin,Module.stdout=i||Module.stdout,Module.stderr=r||Module.stderr,FS.createStandardStreams()},quit:function(){FS.init.initialized=!1;var e=Module._fflush;e&&e(0);for(var i=0;i<FS.streams.length;i++){var r=FS.streams[i];r&&FS.close(r)}},getMode:function(e,i){var r=0;return e&&(r|=365),i&&(r|=146),r},joinPath:function(e,i){var r=PATH.join.apply(null,e);return i&&"/"==r[0]&&(r=r.substr(1)),r},absolutePath:function(e,i){return PATH.resolve(i,e)},standardizePath:function(e){return PATH.normalize(e)},findObject:function(e,i){var r=FS.analyzePath(e,i);return r.exists?r.object:(___setErrNo(r.error),null)},analyzePath:function(e,i){try{e=(f=FS.lookupPath(e,{follow:!i})).path}catch(e){}var r={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var f=FS.lookupPath(e,{parent:!0});r.parentExists=!0,r.parentPath=f.path,r.parentObject=f.node,r.name=PATH.basename(e),f=FS.lookupPath(e,{follow:!i}),r.exists=!0,r.path=f.path,r.object=f.node,r.name=f.node.name,r.isRoot="/"===f.path}catch(e){r.error=e.errno}return r},createFolder:function(e,i,r,f){var l=PATH.join2("string"==typeof e?e:FS.getPath(e),i),a=FS.getMode(r,f);return FS.mkdir(l,a)},createPath:function(e,i,r,f){e="string"==typeof e?e:FS.getPath(e);for(var l=i.split("/").reverse();l.length;){var a=l.pop();if(a){var n=PATH.join2(e,a);try{FS.mkdir(n)}catch(e){}e=n}}return n},createFile:function(e,i,r,f,l){var a=PATH.join2("string"==typeof e?e:FS.getPath(e),i),n=FS.getMode(f,l);return FS.create(a,n)},createDataFile:function(e,i,r,f,l,a){var n=i?PATH.join2("string"==typeof e?e:FS.getPath(e),i):e,t=FS.getMode(f,l),o=FS.create(n,t);if(r){if("string"==typeof r){for(var s=new Array(r.length),u=0,h=r.length;u<h;++u)s[u]=r.charCodeAt(u);r=s}FS.chmod(o,146|t);var w=FS.open(o,"w");FS.write(w,r,0,r.length,0,a),FS.close(w),FS.chmod(o,t)}return o},createDevice:function(e,i,o,n){var r=PATH.join2("string"==typeof e?e:FS.getPath(e),i),f=FS.getMode(!!o,!!n);FS.createDevice.major||(FS.createDevice.major=64);var l=FS.makedev(FS.createDevice.major++,0);return FS.registerDevice(l,{open:function(e){e.seekable=!1},close:function(e){n&&n.buffer&&n.buffer.length&&n(10)},read:function(e,i,r,f,l){for(var a=0,n=0;n<f;n++){var t;try{t=o()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(void 0===t&&0===a)throw new FS.ErrnoError(ERRNO_CODES.EAGAIN);if(null==t)break;a++,i[r+n]=t}return a&&(e.node.timestamp=Date.now()),a},write:function(e,i,r,f,l){for(var a=0;a<f;a++)try{n(i[r+a])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return f&&(e.node.timestamp=Date.now()),a}}),FS.mkdev(r,f,l)},createLink:function(e,i,r,f,l){var a=PATH.join2("string"==typeof e?e:FS.getPath(e),i);return FS.symlink(r,a)},forceLoadFile:function(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;var i=!0;if("undefined"!=typeof XMLHttpRequest)throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(!Module.read)throw new Error("Cannot load without read() or XMLHttpRequest.");try{e.contents=intArrayFromString(Module.read(e.url),!0),e.usedBytes=e.contents.length}catch(e){i=!1}return i||___setErrNo(ERRNO_CODES.EIO),i},createLazyFile:function(e,i,t,r,f){function l(){this.lengthKnown=!1,this.chunks=[]}if(l.prototype.get=function(e){if(!(e>this.length-1||e<0)){var i=e%this.chunkSize,r=e/this.chunkSize|0;return this.getter(r)[i]}},l.prototype.setDataGetter=function(e){this.getter=e},l.prototype.cacheLength=function(){var e=new XMLHttpRequest;if(e.open("HEAD",t,!1),e.send(null),!(200<=e.status&&e.status<300||304===e.status))throw new Error("Couldn't load "+t+". Status: "+e.status);var i,f=Number(e.getResponseHeader("Content-length")),r=(i=e.getResponseHeader("Accept-Ranges"))&&"bytes"===i,l=(i=e.getResponseHeader("Content-Encoding"))&&"gzip"===i,a=1048576;r||(a=f);var n=this;n.setDataGetter(function(e){var i=e*a,r=(e+1)*a-1;if(r=Math.min(r,f-1),void 0===n.chunks[e]&&(n.chunks[e]=function(e,i){if(i<e)throw new Error("invalid range ("+e+", "+i+") or no bytes requested!");if(f-1<i)throw new Error("only "+f+" bytes available! programmer error!");var r=new XMLHttpRequest;if(r.open("GET",t,!1),f!==a&&r.setRequestHeader("Range","bytes="+e+"-"+i),"undefined"!=typeof Uint8Array&&(r.responseType="arraybuffer"),r.overrideMimeType&&r.overrideMimeType("text/plain; charset=x-user-defined"),r.send(null),!(200<=r.status&&r.status<300||304===r.status))throw new Error("Couldn't load "+t+". Status: "+r.status);return void 0!==r.response?new Uint8Array(r.response||[]):intArrayFromString(r.responseText||"",!0)}(i,r)),void 0===n.chunks[e])throw new Error("doXHR failed!");return n.chunks[e]}),!l&&f||(a=f=1,f=this.getter(0).length,a=f,console.log("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=f,this._chunkSize=a,this.lengthKnown=!0},"undefined"!=typeof XMLHttpRequest){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var a=new l;Object.defineProperties(a,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var n={isDevice:!1,contents:a}}else n={isDevice:!1,url:t};var o=FS.createFile(e,i,n,r,f);n.contents?o.contents=n.contents:n.url&&(o.contents=null,o.url=n.url),Object.defineProperties(o,{usedBytes:{get:function(){return this.contents.length}}});var s={};return Object.keys(o.stream_ops).forEach(function(e){var i=o.stream_ops[e];s[e]=function(){if(!FS.forceLoadFile(o))throw new FS.ErrnoError(ERRNO_CODES.EIO);return i.apply(null,arguments)}}),s.read=function(e,i,r,f,l){if(!FS.forceLoadFile(o))throw new FS.ErrnoError(ERRNO_CODES.EIO);var a=e.node.contents;if(l>=a.length)return 0;var n=Math.min(a.length-l,f);if(assert(0<=n),a.slice)for(var t=0;t<n;t++)i[r+t]=a[l+t];else for(t=0;t<n;t++)i[r+t]=a.get(l+t);return n},o.stream_ops=s,o},createPreloadedFile:function(l,a,e,n,t,o,s,u,h,w){Browser.init();var k=a?PATH.resolve(PATH.join2(l,a)):l,b=getUniqueRunDependency("cp "+k);function i(i){function r(e){w&&w(),u||FS.createDataFile(l,a,e,n,t,h),o&&o(),removeRunDependency(b)}var f=!1;Module.preloadPlugins.forEach(function(e){f||e.canHandle(k)&&(e.handle(i,k,r,function(){s&&s(),removeRunDependency(b)}),f=!0)}),f||r(i)}addRunDependency(b),"string"==typeof e?Browser.asyncLoad(e,function(e){i(e)},s):i(e)},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:function(){return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(i,t,o){t=t||function(){},o=o||function(){};var e=FS.indexedDB();try{var s=e.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return o(e)}s.onupgradeneeded=function(){console.log("creating db"),s.result.createObjectStore(FS.DB_STORE_NAME)},s.onsuccess=function(){var e=s.result.transaction([FS.DB_STORE_NAME],"readwrite"),r=e.objectStore(FS.DB_STORE_NAME),f=0,l=0,a=i.length;function n(){0==l?t():o()}i.forEach(function(e){var i=r.put(FS.analyzePath(e).object.contents,e);i.onsuccess=function(){++f+l==a&&n()},i.onerror=function(){f+ ++l==a&&n()}}),e.onerror=o},s.onerror=o},loadFilesFromDB:function(t,o,s){o=o||function(){},s=s||function(){};var e=FS.indexedDB();try{var u=e.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return s(e)}u.onupgradeneeded=s,u.onsuccess=function(){var e=u.result;try{var i=e.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){return void s(e)}var r=i.objectStore(FS.DB_STORE_NAME),f=0,l=0,a=t.length;function n(){0==l?o():s()}t.forEach(function(e){var i=r.get(e);i.onsuccess=function(){FS.analyzePath(e).exists&&FS.unlink(e),FS.createDataFile(PATH.dirname(e),PATH.basename(e),i.result,!0,!0,!0),++f+l==a&&n()},i.onerror=function(){f+ ++l==a&&n()}}),i.onerror=s},u.onerror=s}},SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(e,i){if("/"!==i[0]){var r;if(-100===e)r=FS.cwd();else{var f=FS.getStream(e);if(!f)throw new FS.ErrnoError(ERRNO_CODES.EBADF);r=f.path}i=PATH.join2(r,i)}return i},doStat:function(e,i,r){try{var f=e(i)}catch(e){if(e&&e.node&&PATH.normalize(i)!==PATH.normalize(FS.getPath(e.node)))return-ERRNO_CODES.ENOTDIR;throw e}return HEAP32[r>>2]=f.dev,HEAP32[r+4>>2]=0,HEAP32[r+8>>2]=f.ino,HEAP32[r+12>>2]=f.mode,HEAP32[r+16>>2]=f.nlink,HEAP32[r+20>>2]=f.uid,HEAP32[r+24>>2]=f.gid,HEAP32[r+28>>2]=f.rdev,HEAP32[r+32>>2]=0,HEAP32[r+36>>2]=f.size,HEAP32[r+40>>2]=4096,HEAP32[r+44>>2]=f.blocks,HEAP32[r+48>>2]=f.atime.getTime()/1e3|0,HEAP32[r+52>>2]=0,HEAP32[r+56>>2]=f.mtime.getTime()/1e3|0,HEAP32[r+60>>2]=0,HEAP32[r+64>>2]=f.ctime.getTime()/1e3|0,HEAP32[r+68>>2]=0,HEAP32[r+72>>2]=f.ino,0},doMsync:function(e,i,r,f){var l=new Uint8Array(HEAPU8.subarray(e,e+r));FS.msync(i,l,0,r,f)},doMkdir:function(e,i){return"/"===(e=PATH.normalize(e))[e.length-1]&&(e=e.substr(0,e.length-1)),FS.mkdir(e,i,0),0},doMknod:function(e,i,r){switch(61440&i){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}return FS.mknod(e,i,r),0},doReadlink:function(e,i,r){if(r<=0)return-ERRNO_CODES.EINVAL;var f=FS.readlink(e);return writeStringToMemory(f=f.slice(0,Math.max(0,r)),i,!0),f.length},doAccess:function(e,i){if(-8&i)return-ERRNO_CODES.EINVAL;var r;r=FS.lookupPath(e,{follow:!0}).node;var f="";return 4&i&&(f+="r"),2&i&&(f+="w"),1&i&&(f+="x"),f&&FS.nodePermissions(r,f)?-ERRNO_CODES.EACCES:0},doDup:function(e,i,r){var f=FS.getStream(r);return f&&FS.close(f),FS.open(e,i,0,r,r).fd},doReadv:function(e,i,r,f){for(var l=0,a=0;a<r;a++){var n=HEAP32[i+8*a>>2],t=HEAP32[i+(8*a+4)>>2],o=FS.read(e,HEAP8,n,t,f);if(o<0)return-1;if(l+=o,o<t)break}return l},doWritev:function(e,i,r,f){for(var l=0,a=0;a<r;a++){var n=HEAP32[i+8*a>>2],t=HEAP32[i+(8*a+4)>>2],o=FS.write(e,HEAP8,n,t,f);if(o<0)return-1;l+=o}return l},varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},getStreamFromFD:function(){var e=FS.getStream(SYSCALLS.get());if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return e},getSocketFromFD:function(){var e=SOCKFS.getSocket(SYSCALLS.get());if(!e)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return e},getSocketAddress:function(e){var i=SYSCALLS.get(),r=SYSCALLS.get();if(e&&0===i)return null;var f=__read_sockaddr(i,r);if(f.errno)throw new FS.ErrnoError(f.errno);return f.addr=DNS.lookup_addr(f.addr)||f.addr,f},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(0<=e?0===i:-1===i),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall6(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}var _sin=Math_sin;Module._bitshift64Ashr=_bitshift64Ashr,Module._bitshift64Lshr=_bitshift64Lshr;var _atan=Math_atan;function _pthread_cleanup_push(e,i){__ATEXIT__.push(function(){Runtime.dynCall("vi",e,[i])}),_pthread_cleanup_push.level=__ATEXIT__.length}var _environ=STATICTOP;function ___buildEnvironment(e){var i,r;___buildEnvironment.called?(r=HEAP32[_environ>>2],i=HEAP32[r>>2]):(___buildEnvironment.called=!0,ENV.USER=ENV.LOGNAME="web_user",ENV.PATH="/",ENV.PWD="/",ENV.HOME="/home/web_user",ENV.LANG="C",ENV._=Module.thisProgram,i=allocate(1024,"i8",ALLOC_STATIC),r=allocate(256,"i8*",ALLOC_STATIC),HEAP32[r>>2]=i,HEAP32[_environ>>2]=r);var f=[],l=0;for(var a in e)if("string"==typeof e[a]){var n=a+"="+e[a];f.push(n),l+=n.length}if(1024<l)throw new Error("Environment size exceeded TOTAL_ENV_SIZE!");for(var t=0;t<f.length;t++){writeAsciiToMemory(n=f[t],i),HEAP32[r+4*t>>2]=i,i+=n.length+1}HEAP32[r+4*f.length>>2]=0}STATICTOP+=16;var ENV={};function _getenv(e){return 0===e?0:(e=Pointer_stringify(e),ENV.hasOwnProperty(e)?(_getenv.ret&&_free(_getenv.ret),_getenv.ret=allocate(intArrayFromString(ENV[e]),"i8",ALLOC_NORMAL),_getenv.ret):0)}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function _localtime_r(e,i){_tzset();var r=new Date(1e3*HEAP32[e>>2]);HEAP32[i>>2]=r.getSeconds(),HEAP32[i+4>>2]=r.getMinutes(),HEAP32[i+8>>2]=r.getHours(),HEAP32[i+12>>2]=r.getDate(),HEAP32[i+16>>2]=r.getMonth(),HEAP32[i+20>>2]=r.getFullYear()-1900,HEAP32[i+24>>2]=r.getDay();var f=new Date(r.getFullYear(),0,1),l=(r.getTime()-f.getTime())/864e5|0;HEAP32[i+28>>2]=l,HEAP32[i+36>>2]=-60*r.getTimezoneOffset();var a=new Date(2e3,6,1).getTimezoneOffset(),n=f.getTimezoneOffset(),t=r.getTimezoneOffset()==Math.min(n,a)|0;HEAP32[i+32>>2]=t;var o=HEAP32[_tzname+(t?Runtime.QUANTUM_SIZE:0)>>2];return HEAP32[i+40>>2]=o,i}function ___syscall3(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),l=SYSCALLS.get();return FS.read(r,HEAP8,f,l)}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall5(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStr(),f=SYSCALLS.get(),l=SYSCALLS.get();return FS.open(r,f,l).fd}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _emscripten_memcpy_big(e,i,r){return HEAPU8.set(HEAPU8.subarray(i,i+r),e),e}Module._memcpy=_memcpy;var _log=Math_log,_cos=Math_cos,_llvm_pow_f64=Math_pow;function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var r=DYNAMICTOP;if(0!=e&&!i.alloc(e))return-1>>>0;return r}function ___syscall54(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get();switch(f){case 21505:case 21506:return r.tty?0:-ERRNO_CODES.ENOTTY;case 21519:if(!r.tty)return-ERRNO_CODES.ENOTTY;var l=SYSCALLS.get();return HEAP32[l>>2]=0;case 21520:return r.tty?-ERRNO_CODES.EINVAL:-ERRNO_CODES.ENOTTY;case 21531:l=SYSCALLS.get();return FS.ioctl(r,f,l);default:abort("bad ioctl syscall "+f)}}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall221(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();switch(SYSCALLS.get()){case 0:return(f=SYSCALLS.get())<0?-ERRNO_CODES.EINVAL:FS.open(r.path,r.flags,0,f).fd;case 1:case 2:return 0;case 3:return r.flags;case 4:var f=SYSCALLS.get();return r.flags|=f,0;case 12:case 12:f=SYSCALLS.get();return HEAP16[f+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:return ___setErrNo(ERRNO_CODES.EINVAL),-1;default:return-ERRNO_CODES.EINVAL}}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}Module._memmove=_memmove,Module._llvm_bswap_i32=_llvm_bswap_i32;var _exp=Math_exp;function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),l=SYSCALLS.get(),a=SYSCALLS.get(),n=SYSCALLS.get(),t=l;return assert(0===f),FS.llseek(r,t,n),HEAP32[a>>2]=r.position,r.getdents&&0===t&&0===n&&(r.getdents=null),0}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),l=SYSCALLS.get();return SYSCALLS.doWritev(r,f,l)}catch(e){return void 0!==FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}if(FS.staticInit(),__ATINIT__.unshift(function(){Module.noFSInit||FS.init.initialized||FS.init()}),__ATMAIN__.push(function(){FS.ignorePermissions=!1}),__ATEXIT__.push(function(){FS.quit()}),Module.FS_createFolder=FS.createFolder,Module.FS_createPath=FS.createPath,Module.FS_createDataFile=FS.createDataFile,Module.FS_createPreloadedFile=FS.createPreloadedFile,Module.FS_createLazyFile=FS.createLazyFile,Module.FS_createLink=FS.createLink,Module.FS_createDevice=FS.createDevice,Module.FS_unlink=FS.unlink,__ATINIT__.unshift(function(){TTY.init()}),__ATEXIT__.push(function(){TTY.shutdown()}),ENVIRONMENT_IS_NODE){var fs=require("fs"),NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV),STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_viiiii(e,i,r,f,l,a){try{Module.dynCall_viiiii(e,i,r,f,l,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,r){try{Module.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,r,f,l,a,n){try{return Module.dynCall_iiiiiii(e,i,r,f,l,a,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h){try{Module.dynCall_viiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,r,f,l,a){try{return Module.dynCall_iiiiii(e,i,r,f,l,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,r,f){try{return Module.dynCall_iiii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiii(e,i,r,f,l,a,n,t,o){try{Module.dynCall_viiiiiiii(e,i,r,f,l,a,n,t,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiii(e,i,r,f,l,a,n){try{Module.dynCall_viiiiii(e,i,r,f,l,a,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_dd(e,i){try{return Module.dynCall_dd(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b){try{Module.dynCall_viiiiiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiii(e,i,r,f,l,a,n,t){try{Module.dynCall_viiiiiii(e,i,r,f,l,a,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiii(e,i,r,f,l,a,n,t,o,s){try{Module.dynCall_viiiiiiiii(e,i,r,f,l,a,n,t,o,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u){try{Module.dynCall_viiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,r){try{return Module.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_didd(e,i,r,f){try{return Module.dynCall_didd(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_did(e,i,r){try{return Module.dynCall_did(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h,w){try{Module.dynCall_viiiiiiiiiiii(e,i,r,f,l,a,n,t,o,s,u,h,w)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,r,f,l){try{return Module.dynCall_iiiii(e,i,r,f,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,r,f){try{Module.dynCall_viii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,r,f,l){try{Module.dynCall_viiii(e,i,r,f,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort:abort,assert:assert,invoke_viiiii:invoke_viiiii,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_viiiiiiiiiii:invoke_viiiiiiiiiii,invoke_iiiiii:invoke_iiiiii,invoke_iiii:invoke_iiii,invoke_viiiiiiii:invoke_viiiiiiii,invoke_viiiiii:invoke_viiiiii,invoke_dd:invoke_dd,invoke_viiiiiiiiiiiiii:invoke_viiiiiiiiiiiiii,invoke_viiiiiii:invoke_viiiiiii,invoke_viiiiiiiii:invoke_viiiiiiiii,invoke_viiiiiiiiii:invoke_viiiiiiiiii,invoke_iii:invoke_iii,invoke_didd:invoke_didd,invoke_did:invoke_did,invoke_viiiiiiiiiiii:invoke_viiiiiiiiiiii,invoke_iiiii:invoke_iiiii,invoke_viii:invoke_viii,invoke_viiii:invoke_viiii,_fabs:_fabs,_pthread_cleanup_pop:_pthread_cleanup_pop,_sin:_sin,_exp:_exp,_llvm_pow_f64:_llvm_pow_f64,_acos:_acos,_log:_log,___syscall6:___syscall6,_llvm_fabs_f64:_llvm_fabs_f64,_pthread_cleanup_push:_pthread_cleanup_push,_asin:_asin,___buildEnvironment:___buildEnvironment,_localtime_r:_localtime_r,_tzset:_tzset,___setErrNo:___setErrNo,_sbrk:_sbrk,_atan:_atan,_emscripten_memcpy_big:_emscripten_memcpy_big,_sysconf:_sysconf,_mktime:_mktime,_clock:_clock,___syscall221:___syscall221,_cos:_cos,_pthread_self:_pthread_self,_getenv:_getenv,___syscall54:___syscall54,___unlock:___unlock,_tan:_tan,_gmtime_r:_gmtime_r,___syscall3:___syscall3,___lock:___lock,_abort:_abort,___syscall5:___syscall5,_time:_time,___syscall140:___syscall140,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8};var asm=function(e,i,r){"use asm";var Wi=new e.Int8Array(r);var Gi=new e.Int16Array(r);var Xi=new e.Int32Array(r);var qi=new e.Uint8Array(r);var Ji=new e.Uint16Array(r);var f=new e.Uint32Array(r);var P=new e.Float32Array(r);var Ae=new e.Float64Array(r);var Ue=i.STACKTOP|0;var l=i.STACK_MAX|0;var ee=i.tempDoublePtr|0;var a=i.ABORT|0;var n=i.cttz_i8|0;var t=0;var o=0;var s=0;var u=0;var D=e.NaN,C=e.Infinity;var h=0,w=0,k=0,b=0,c=0.0,d=0,v=0,E=0,S=0.0;var Ie=0;var _=0;var m=0;var p=0;var F=0;var y=0;var O=0;var A=0;var g=0;var M=0;var L=e.Math.floor;var I=e.Math.abs;var R=e.Math.sqrt;var T=e.Math.pow;var N=e.Math.cos;var H=e.Math.sin;var B=e.Math.tan;var U=e.Math.acos;var x=e.Math.asin;var z=e.Math.atan;var V=e.Math.atan2;var Y=e.Math.exp;var j=e.Math.log;var K=e.Math.ceil;var Zi=e.Math.imul;var W=e.Math.min;var G=e.Math.clz32;var X=i.abort;var q=i.assert;var J=i.invoke_viiiii;var Z=i.invoke_vi;var Q=i.invoke_vii;var $=i.invoke_iiiiiii;var ie=i.invoke_ii;var re=i.invoke_viiiiiiiiiii;var fe=i.invoke_iiiiii;var le=i.invoke_iiii;var ae=i.invoke_viiiiiiii;var ne=i.invoke_viiiiii;var te=i.invoke_dd;var oe=i.invoke_viiiiiiiiiiiiii;var se=i.invoke_viiiiiii;var ue=i.invoke_viiiiiiiii;var he=i.invoke_viiiiiiiiii;var we=i.invoke_iii;var ke=i.invoke_didd;var be=i.invoke_did;var ce=i.invoke_viiiiiiiiiiii;var de=i.invoke_iiiii;var ve=i.invoke_viii;var Ee=i.invoke_viiii;var Se=i._fabs;var _e=i._pthread_cleanup_pop;var me=i._sin;var pe=i._exp;var Fe=i._llvm_pow_f64;var ye=i._acos;var Oe=i._log;var ge=i.___syscall6;var Me=i._llvm_fabs_f64;var Re=i._pthread_cleanup_push;var Te=i._asin;var Ne=i.___buildEnvironment;var De=i._localtime_r;var Ce=i._tzset;var Pe=i.___setErrNo;var Le=i._sbrk;var He=i._atan;var Be=i._emscripten_memcpy_big;var xe=i._sysconf;var ze=i._mktime;var Ve=i._clock;var Ye=i.___syscall221;var je=i._cos;var Ke=i._pthread_self;var We=i._getenv;var Ge=i.___syscall54;var Xe=i.___unlock;var qe=i._tan;var Je=i._gmtime_r;var Ze=i.___syscall3;var Qe=i.___lock;var $e=i._abort;var ei=i.___syscall5;var ii=i._time;var ri=i.___syscall140;var fi=i.___syscall146;var li=0.0;function ai(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=f>>1;o=0-d|0;s=Ji[e+(o<<1)>>1]|0;u=Ji[e+(1-d<<1)>>1]|0;o=((Ji[e+(((i|0)==0?o:~d)<<1)>>1]|0)+2+(s<<1)+u|0)>>>2;h=Ji[e+(2-d<<1)>>1]|0;s=(s+2+(u<<1)+h|0)>>>2;w=Ji[e+(3-d<<1)>>1]|0;u=(u+2+(h<<1)+w|0)>>>2;b=Ji[e+(4-d<<1)>>1]|0;h=(h+2+(w<<1)+b|0)>>>2;c=Ji[e+(5-d<<1)>>1]|0;w=(w+2+(b<<1)+c|0)>>>2;k=Ji[e+(6-d<<1)>>1]|0;b=(b+2+(c<<1)+k|0)>>>2;f=Gi[e+(7-d<<1)>>1]|0;t=f&65535;c=(c+2+(k<<1)+t|0)>>>2;if(!r){i=(f&65535)+2+(t<<1)|0;r=t;l=t;a=t;n=t;f=t}else{E=Ji[e+(8-d<<1)>>1]|0;v=Ji[e+(9-d<<1)>>1]|0;f=Ji[e+(10-d<<1)>>1]|0;n=Ji[e+(11-d<<1)>>1]|0;a=Ji[e+(12-d<<1)>>1]|0;i=(Ji[e+(8-d<<1)>>1]|0)+2+(t<<1)|0;r=(v+2+(f<<1)+n|0)>>>2;l=(f+2+(n<<1)+a|0)>>>2;a=(n+2+(a<<1)+(Ji[e+(13-d<<1)>>1]|0)|0)>>>2;n=(t+2+(E<<1)+v|0)>>>2;f=(E+2+(v<<1)+f|0)>>>2}i=(i+k|0)>>>2;Gi[e>>1]=(o+1+s|0)>>>1;Gi[e+(d<<1)>>1]=(o+2+(s<<1)+u|0)>>>2;E=(s+1+u|0)>>>1&65535;Gi[e+2>>1]=E;t=d<<1;Gi[e+(t<<1)>>1]=E;E=(s+2+(u<<1)+h|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=E;o=d*3|0;Gi[e+(o<<1)>>1]=E;E=(u+1+h|0)>>>1&65535;Gi[e+4>>1]=E;Gi[e+((t|1)<<1)>>1]=E;s=d<<2;Gi[e+(s<<1)>>1]=E;E=(u+2+(h<<1)+w|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=E;Gi[e+(o+1<<1)>>1]=E;k=d*5|0;Gi[e+(k<<1)>>1]=E;E=(h+1+w|0)>>>1&65535;Gi[e+6>>1]=E;Gi[e+(t+2<<1)>>1]=E;Gi[e+((s|1)<<1)>>1]=E;v=d*6|0;Gi[e+(v<<1)>>1]=E;h=(h+2+(w<<1)+b|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=h;Gi[e+(o+2<<1)>>1]=h;Gi[e+(k+1<<1)>>1]=h;E=d*7|0;Gi[e+(E<<1)>>1]=h;h=(w+1+b|0)>>>1&65535;Gi[e+8>>1]=h;Gi[e+(t+3<<1)>>1]=h;Gi[e+((s|2)<<1)>>1]=h;Gi[e+((v|1)<<1)>>1]=h;w=(w+2+(b<<1)+c|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=w;Gi[e+(o+3<<1)>>1]=w;Gi[e+(k+2<<1)>>1]=w;Gi[e+(E+1<<1)>>1]=w;w=(b+1+c|0)>>>1&65535;Gi[e+10>>1]=w;Gi[e+(t+4<<1)>>1]=w;Gi[e+((s|3)<<1)>>1]=w;Gi[e+(v+2<<1)>>1]=w;b=(b+2+(c<<1)+i|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=b;Gi[e+(o+4<<1)>>1]=b;Gi[e+(k+3<<1)>>1]=b;Gi[e+(E+2<<1)>>1]=b;b=(c+1+i|0)>>>1&65535;Gi[e+12>>1]=b;Gi[e+(t+5<<1)>>1]=b;Gi[e+(s+4<<1)>>1]=b;Gi[e+(v+3<<1)>>1]=b;c=(c+2+(i<<1)+n|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=c;Gi[e+(o+5<<1)>>1]=c;Gi[e+(k+4<<1)>>1]=c;Gi[e+(E+3<<1)>>1]=c;c=(i+1+n|0)>>>1&65535;Gi[e+14>>1]=c;Gi[e+(t+6<<1)>>1]=c;Gi[e+(s+5<<1)>>1]=c;Gi[e+(v+4<<1)>>1]=c;c=(i+2+(n<<1)+f|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=c;Gi[e+(o+6<<1)>>1]=c;Gi[e+(k+5<<1)>>1]=c;Gi[e+(E+4<<1)>>1]=c;d=(n+1+f|0)>>>1&65535;Gi[e+(t+7<<1)>>1]=d;Gi[e+(s+6<<1)>>1]=d;Gi[e+(v+5<<1)>>1]=d;d=(n+2+(f<<1)+r|0)>>>2&65535;Gi[e+(o+7<<1)>>1]=d;Gi[e+(k+6<<1)>>1]=d;Gi[e+(E+5<<1)>>1]=d;d=(f+1+r|0)>>>1&65535;Gi[e+(s+7<<1)>>1]=d;Gi[e+(v+6<<1)>>1]=d;d=(f+2+(r<<1)+l|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=d;Gi[e+(E+6<<1)>>1]=d;Gi[e+(v+7<<1)>>1]=(r+1+l|0)>>>1;Gi[e+(E+7<<1)>>1]=(r+2+(l<<1)+a|0)>>>2;return}function ni(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;h=f>>1;c=e+-2|0;b=Ji[c>>1]|0;k=Ji[e+(h+-1<<1)>>1]|0;c=((Ji[((i|0)==0?c:e+(~h<<1)|0)>>1]|0)+2+(b<<1)+k|0)>>>2;s=h<<1;w=Ji[e+(s+-1<<1)>>1]|0;b=(b+2+(k<<1)+w|0)>>>2;t=h*3|0;u=Ji[e+(t+-1<<1)>>1]|0;k=(k+2+(w<<1)+u|0)>>>2;a=h<<2;o=Ji[e+(a+-1<<1)>>1]|0;w=(w+2+(u<<1)+o|0)>>>2;l=h*5|0;n=Ji[e+(l+-1<<1)>>1]|0;u=(u+2+(o<<1)+n|0)>>>2;f=h*6|0;d=Ji[e+(f+-1<<1)>>1]|0;o=(o+2+(n<<1)+d|0)>>>2;r=h*7|0;i=Ji[e+(r+-1<<1)>>1]|0;n=(n+2+(d<<1)+i|0)>>>2;i=(d+2+(i*3|0)|0)>>>2;Gi[e>>1]=(c+1+b|0)>>>1;Gi[e+2>>1]=(c+2+(b<<1)+k|0)>>>2;c=(b+1+k|0)>>>1&65535;Gi[e+4>>1]=c;Gi[e+(h<<1)>>1]=c;b=(b+2+(k<<1)+w|0)>>>2&65535;Gi[e+6>>1]=b;Gi[e+(h+1<<1)>>1]=b;b=(k+1+w|0)>>>1&65535;Gi[e+8>>1]=b;Gi[e+(h+2<<1)>>1]=b;Gi[e+(s<<1)>>1]=b;k=(k+2+(w<<1)+u|0)>>>2&65535;Gi[e+10>>1]=k;Gi[e+(h+3<<1)>>1]=k;Gi[e+((s|1)<<1)>>1]=k;k=(w+1+u|0)>>>1&65535;Gi[e+12>>1]=k;Gi[e+(h+4<<1)>>1]=k;Gi[e+(s+2<<1)>>1]=k;Gi[e+(t<<1)>>1]=k;w=(w+2+(u<<1)+o|0)>>>2&65535;Gi[e+14>>1]=w;Gi[e+(h+5<<1)>>1]=w;Gi[e+(s+3<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;w=(u+1+o|0)>>>1&65535;Gi[e+(h+6<<1)>>1]=w;Gi[e+(s+4<<1)>>1]=w;Gi[e+(t+2<<1)>>1]=w;Gi[e+(a<<1)>>1]=w;u=(u+2+(o<<1)+n|0)>>>2&65535;Gi[e+(h+7<<1)>>1]=u;Gi[e+(s+5<<1)>>1]=u;Gi[e+(t+3<<1)>>1]=u;Gi[e+((a|1)<<1)>>1]=u;u=(o+1+n|0)>>>1&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(t+4<<1)>>1]=u;Gi[e+((a|2)<<1)>>1]=u;Gi[e+(l<<1)>>1]=u;o=(o+2+i+(n<<1)|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(t+5<<1)>>1]=o;Gi[e+((a|3)<<1)>>1]=o;Gi[e+(l+1<<1)>>1]=o;o=(i+1+n|0)>>>1&65535;Gi[e+(t+6<<1)>>1]=o;Gi[e+(a+4<<1)>>1]=o;Gi[e+(l+2<<1)>>1]=o;Gi[e+(f<<1)>>1]=o;n=(n+2+(i*3|0)|0)>>>2&65535;Gi[e+(t+7<<1)>>1]=n;Gi[e+(a+5<<1)>>1]=n;Gi[e+(l+3<<1)>>1]=n;Gi[e+((f|1)<<1)>>1]=n;i=i&65535;Gi[e+(r+7<<1)>>1]=i;Gi[e+(f+7<<1)>>1]=i;Gi[e+(l+7<<1)>>1]=i;Gi[e+(a+7<<1)>>1]=i;Gi[e+(r+6<<1)>>1]=i;Gi[e+(f+6<<1)>>1]=i;Gi[e+(l+6<<1)>>1]=i;Gi[e+(a+6<<1)>>1]=i;Gi[e+(r+5<<1)>>1]=i;Gi[e+(f+5<<1)>>1]=i;Gi[e+(l+5<<1)>>1]=i;Gi[e+(r+4<<1)>>1]=i;Gi[e+(f+4<<1)>>1]=i;Gi[e+(l+4<<1)>>1]=i;Gi[e+(r+3<<1)>>1]=i;Gi[e+(f+3<<1)>>1]=i;Gi[e+(r+2<<1)>>1]=i;Gi[e+(f+2<<1)>>1]=i;Gi[e+(r+1<<1)>>1]=i;Gi[e+(r<<1)>>1]=i;return}function ti(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;r=f>>1;h=e+-2|0;u=Ji[h>>1]|0;s=Ji[e+(r+-1<<1)>>1]|0;o=Ji[e+((r<<1)+-1<<1)>>1]|0;t=Ji[e+((r*3|0)+-1<<1)>>1]|0;n=Ji[e+((r<<2)+-1<<1)>>1]|0;a=Ji[e+((r*5|0)+-1<<1)>>1]|0;l=Ji[e+((r*6|0)+-1<<1)>>1]|0;f=Ji[e+((r*7|0)+-1<<1)>>1]|0;f=(((Ji[((i|0)==0?h:e+(~r<<1)|0)>>1]|0)+2+(u<<1)+s|0)>>>2)+4+((u+2+(s<<1)+o|0)>>>2)+((s+2+(o<<1)+t|0)>>>2)+((o+2+(t<<1)+n|0)>>>2)+((t+2+(n<<1)+a|0)>>>2)+((n+2+(a<<1)+l|0)>>>2)+((a+2+(l<<1)+f|0)>>>2)+((l+2+(f*3|0)|0)>>>2)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;i=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<1;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*3|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<2;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*5|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*6|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=r*7|0;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function oi(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;l=f>>1;n=0-l|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-l<<1)>>1]|0;t=Ji[e+(2-l<<1)>>1]|0;o=Ji[e+(3-l<<1)>>1]|0;s=Ji[e+(4-l<<1)>>1]|0;u=Ji[e+(5-l<<1)>>1]|0;h=Ji[e+(6-l<<1)>>1]|0;f=Gi[e+(7-l<<1)>>1]|0;w=f&65535;if(r)f=Gi[e+(8-l<<1)>>1]|0;k=(((Ji[e+(((i|0)==0?n:~l)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2)+4+((k+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+((u+2+(h<<1)+w|0)>>>2)+(((f&65535)+2+(w<<1)+h|0)>>>2)>>3;k=rN(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;i=e;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+8|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<1;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*3|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<2;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*5|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*6|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*7|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;return}function si(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=f>>1;i=e;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=e+8|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=e+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=e+(r+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=r<<1;f=e+(i<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;i=e+(i+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=r*3|0;f=e+(i<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;i=e+(i+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=r<<2;f=e+(i<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;i=e+(i+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=r*5|0;f=e+(i<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;i=e+(i+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=r*6|0;f=e+(i<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;i=e+(i+4<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;r=r*7|0;i=e+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;r=e+(r+4<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;return}function ui(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=8);return}function hi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=16);return}function wi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=8);return}function ki(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function bi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=i>>1;f=e+6|0;l=0-b|0;t=(b<<2)+-1|0;n=e+(t<<1)|0;t=e+(t-(b<<1)<<1)|0;o=e+((b*14|0)+-2)|0;s=e+-2|0;i=(Ji[f+(1-b<<1)>>1]|0)-(Ji[f+(~b<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(b<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-b<<1)>>1]|0)-(Ji[f+(0-(b+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=5);k=(i*17|0)+16>>5;l=(r*17|0)+16>>5;a=k<<1;n=k*3|0;t=k<<2;u=k*5|0;h=k*6|0;w=k*7|0;r=((Ji[s+(8-b<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(l+k|0,-3)|0)|0;f=8;while(1){i=r>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e>>1]=i;i=r+k>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+2>>1]=i;i=r+a>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+4>>1]=i;i=r+n>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+8>>1]=i;i=r+u>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+10>>1]=i;i=r+h>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+12>>1]=i;i=r+w>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+14>>1]=i;if((f|0)>1){r=r+l|0;f=f+-1|0;e=e+(b<<1)|0}else break}return}function ci(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=i>>1;f=e+6|0;t=0-c|0;n=(c<<3)+-1|0;a=e+(n<<1)|0;n=e+(n-(c<<1)<<1)|0;h=e+((c*6|0)+-2)|0;s=(c*22|0)+-2|0;o=e+s|0;u=c<<3;r=(Ji[f+(1-c<<1)>>1]|0)-(Ji[f+(~c<<1)>>1]|0)|0;i=(Ji[a>>1]|0)-(Ji[n>>1]|0)|0;l=2;do{a=a+(c<<1)|0;n=n+(t<<1)|0;r=(Zi((Ji[f+(l-c<<1)>>1]|0)-(Ji[f+(0-(c+l)<<1)>>1]|0)|0,l)|0)+r|0;i=(Zi((Ji[a>>1]|0)-(Ji[n>>1]|0)|0,l)|0)+i|0;l=l+1|0}while((l|0)!=5);f=Zi(c,-3)|0;l=o+(c<<1)|0;b=h+(t<<1)|0;n=l+(c<<1)|0;a=b+(t<<1)|0;w=n+(c<<1)|0;o=a+(t<<1)|0;b=((((Ji[w+(c<<1)>>1]|0)-(Ji[o+(t<<1)>>1]|0)<<3)+((((Ji[w>>1]|0)-(Ji[o>>1]|0)|0)*7|0)+((((Ji[n>>1]|0)-(Ji[a>>1]|0)|0)*6|0)+((((Ji[l>>1]|0)-(Ji[b>>1]|0)|0)*5|0)+i)))|0)*5|0)+32>>6;l=(r*17|0)+16>>5;a=l*3|0;n=l<<1;t=l<<2;o=l*5|0;w=l*6|0;k=l*7|0;r=(Zi(b,-7)|0)+(16-a)+((Ji[h+(f+(8-c)<<1)>>1]|0)+(Ji[e+(s+u)>>1]|0)<<4)|0;f=16;while(1){i=r>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e>>1]=i;i=r+l>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+2>>1]=i;i=r+n>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+4>>1]=i;i=r+a>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+8>>1]=i;i=r+o>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+10>>1]=i;i=r+w>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+12>>1]=i;i=r+k>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[e+14>>1]=i;if((f|0)>1){r=r+b|0;f=f+-1|0;e=e+(c<<1)|0}else break}return}function di(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=i>>1;f=0;r=0;i=0;l=0;do{n=Ji[e+((Zi(l,a)|0)+-1<<1)>>1]|0;f=n+f+(Ji[e+(l-a<<1)>>1]|0)|0;n=l+4|0;r=(Ji[e+(n-a<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n,a)|0)+-1<<1)>>1]|0)+i|0;l=l+1|0}while((l|0)!=4);s=f+4>>3;s=rN(s|0,((s|0)<0)<<31>>31|0,65537,65537)|0;o=Ie;t=r+2>>2;t=rN(t|0,((t|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;l=i+2>>2;f=i+4+r>>3;i=e;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+8|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=e+(a<<1)|0;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+(a+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a<<1;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a*3|0;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;n=a<<2;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*5|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*6|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*7|0;a=e+(n<<1)|0;Xi[a>>2]=i;Xi[a+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;return}function vi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=i>>1;r=0;i=0;f=0;do{r=(Ji[e+((Zi(f,l)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(f+4|0,l)|0)+-1<<1)>>1]|0)+i|0;f=f+1|0}while((f|0)!=4);n=r+2>>2;n=rN(n|0,((n|0)<0)<<31>>31|0,65537,65537)|0;a=Ie;r=i+2>>2;f=e;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+8|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l<<1;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l*3|0;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;i=l<<2;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*5|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*6|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;l=l*7|0;i=e+(l<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;e=e+(l+4<<1)|0;Xi[e>>2]=r;Xi[e+4>>2]=f;return}function Ei(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;i=i>>1;f=4-i|0;f=(Ji[e+(f+3<<1)>>1]|0)+((Ji[e+(f+2<<1)>>1]|0)+((Ji[e+(f+1<<1)>>1]|0)+(Ji[e+(f<<1)>>1]|0)))|0;n=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;a=Ie;f=rN((f+2|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+(i+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<1;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*3|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<2;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*5|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*6|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=i*7|0;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;i=e+(i+4<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Si(e,i){e=e|0;i=i|0;Ei(e,i);_x(e,0,i);return}function _i(e,i){e=e|0;i=i|0;di(e,i);Mx(e,0,i);return}function mi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;vi(e,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=a+(f<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=134219776;Xi[a+4>>2]=134219776;e=e+(l+8)|0;l=e;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;f=e+(f<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;r=e+(r<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;i=e+(i<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;return}function pi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;vi(e,i);f=i>>1;r=e;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=e+(f<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;e=e+8|0;l=e;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;f=e+(f<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;r=e+(r<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;i=e+(i<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;return}function Fi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=i>>1;a=0;l=0;f=0;r=0;i=0;n=0;do{o=Ji[e+((Zi(n,t)|0)+-1<<1)>>1]|0;a=o+a+(Ji[e+(n-t<<1)>>1]|0)|0;o=n+4|0;l=(Ji[e+(o-t<<1)>>1]|0)+l|0;f=(Ji[e+((Zi(o,t)|0)+-1<<1)>>1]|0)+f|0;r=(Ji[e+((Zi(n+8|0,t)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n+12|0,t)|0)+-1<<1)>>1]|0)+i|0;n=n+1|0}while((n|0)!=4);o=a+4>>3;o=rN(o|0,((o|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;u=l+2>>2;u=rN(u|0,((u|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;c=f+2>>2;w=f+4+l>>3;h=r+2>>2;r=r+4+l>>3;f=i+2>>2;a=i+4+l>>3;b=e;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+8|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=e+(t<<1)|0;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+(t+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t<<1;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t*3|0;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;c=rN(c|0,((c|0)<0)<<31>>31|0,65537,65537)|0;b=Ie;w=rN(w|0,((w|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;h=rN(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;i=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;a=rN(a|0,((a|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;o=t<<2;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*5|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*6|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*7|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t<<3;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+((o|4)<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*9|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*10|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*11|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*12|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*13|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*14|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*15|0;t=e+(o<<1)|0;Xi[t>>2]=f;Xi[t+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;return}function yi(e,i){e=e|0;i=i|0;vi(e,i);vi(e+(i<<3)|0,i);return}function Oi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;l=4-i|0;l=(Ji[e+(l+3<<1)>>1]|0)+((Ji[e+(l+2<<1)>>1]|0)+((Ji[e+(l+1<<1)>>1]|0)+(Ji[e+(l<<1)>>1]|0)))|0;r=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;f=Ie;l=rN((l+2|0)>>>2|0,0,65537,65537)|0;a=Ie;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=r;Xi[o+4>>2]=f;t=e+(t+4<<1)|0;Xi[t>>2]=l;Xi[t+4>>2]=a;n=n+1|0}while((n|0)!=16);return}function Ai(e,i){e=e|0;i=i|0;Oi(e,i);_x(e,0,i);return}function gi(e,i){e=e|0;i=i|0;Fi(e,i);Mx(e,0,i);return}function Mi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;vi(e,i);vi(e+(i<<3)|0,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=a+(f<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=134219776;Xi[a+4>>2]=134219776;e=e+(l+8)|0;l=e;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;f=e+(f<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;r=e+(r<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;i=e+(i<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;return}function Ri(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;vi(e,i);vi(e+(i<<3)|0,i);f=i>>1;r=e;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=e+(f<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;e=e+8|0;l=e;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;f=e+(f<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;r=e+(r<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;i=e+(i<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;return}function Ti(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=134154239;Xi[l+4>>2]=134154239;f=e+(f+4<<1)|0;Xi[f>>2]=134154239;Xi[f+4>>2]=134154239;r=r+1|0}while((r|0)!=8);return}function Ni(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=134285313;Xi[l+4>>2]=134285313;f=e+(f+4<<1)|0;Xi[f>>2]=134285313;Xi[f+4>>2]=134285313;r=r+1|0}while((r|0)!=8);return}function Di(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;f=e+(f+4<<1)|0;Xi[f>>2]=134219776;Xi[f+4>>2]=134219776;r=r+1|0}while((r|0)!=8);return}function Ci(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=i>>1;r=0;do{l=Zi(r,f)|0;a=e+(l<<1)|0;Xi[a>>2]=134219776;Xi[a+4>>2]=134219776;l=e+(l+4<<1)|0;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;r=r+1|0}while((r|0)!=8);e=e+(i<<3)|0;r=0;do{a=Zi(r,f)|0;l=e+(a<<1)|0;Xi[l>>2]=134219776;Xi[l+4>>2]=134219776;a=e+(a+4<<1)|0;Xi[a>>2]=134219776;Xi[a+4>>2]=134219776;r=r+1|0}while((r|0)!=8);return}function Pi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+16>>5;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function Li(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=i>>1;s=e+(0-i<<1)|0;o=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;a=e+(8-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=e+(12-i<<1)|0;n=Xi[t>>2]|0;t=Xi[t+4>>2]|0;u=0;do{h=Zi(u,i)|0;w=e+(h<<1)|0;Xi[w>>2]=o;Xi[w+4>>2]=s;w=e+(h+4<<1)|0;Xi[w>>2]=r;Xi[w+4>>2]=f;w=e+(h+8<<1)|0;Xi[w>>2]=l;Xi[w+4>>2]=a;h=e+(h+12<<1)|0;Xi[h>>2]=n;Xi[h+4>>2]=t;u=u+1|0}while((u|0)!=16);return}function Ii(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+4<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+8<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+12<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function Hi(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=134154239;Xi[e+4>>2]=134154239;e=i+8|0;Xi[e>>2]=134154239;Xi[e+4>>2]=134154239;e=i+16|0;Xi[e>>2]=134154239;Xi[e+4>>2]=134154239;e=i+24|0;Xi[e>>2]=134154239;Xi[e+4>>2]=134154239;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function Bi(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=134285313;Xi[e+4>>2]=134285313;e=i+8|0;Xi[e>>2]=134285313;Xi[e+4>>2]=134285313;e=i+16|0;Xi[e>>2]=134285313;Xi[e+4>>2]=134285313;e=i+24|0;Xi[e>>2]=134285313;Xi[e+4>>2]=134285313;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function Ui(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=i>>1;f=e+14|0;l=0-k|0;t=(k<<3)+-1|0;n=e+(t<<1)|0;t=e+(t-(k<<1)<<1)|0;o=e+((k*30|0)+-2)|0;i=(Ji[f+(1-k<<1)>>1]|0)-(Ji[f+(~k<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(k<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-k<<1)>>1]|0)-(Ji[f+(0-(k+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=9);w=(i*5|0)+32>>6;t=(r*5|0)+32>>6;s=w<<1;u=w*3|0;h=w<<2;a=((Ji[e+-2+(16-k<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(t+w|0,-7)|0)|0;n=16;l=e;while(1){r=a;f=-16;while(1){i=r>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[l+(f+16<<1)>>1]=i;i=r+w>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[l+(f+17<<1)>>1]=i;i=r+s>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[l+(f+18<<1)>>1]=i;i=r+u>>5;if(i>>>0>=4096)i=0-i>>31&4095;Gi[l+(f+19<<1)>>1]=i;if((f|0)<-4){r=r+h|0;f=f+4|0}else break}if((n|0)>1){a=a+t|0;n=n+-1|0;l=l+(k<<1)|0}else break}return}function xi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function zi(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function Vi(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=134219776;Xi[e+4>>2]=134219776;e=i+8|0;Xi[e>>2]=134219776;Xi[e+4>>2]=134219776;e=i+16|0;Xi[e>>2]=134219776;Xi[e+4>>2]=134219776;e=i+24|0;Xi[e>>2]=134219776;Xi[e+4>>2]=134219776;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function Yi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=i;o=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[t>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[t+16>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[t+32>>2]|0)|0;Gi[r+(a<<1)>>1]=e;Gi[r+(n<<1)>>1]=e+(Xi[t+48>>2]|0);o=o+1|0;if((o|0)==4)break;else{t=t+4|0;r=r+2|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function ji(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;Gi[r+6>>1]=e+(Xi[l+12>>2]|0);a=a+1|0;if((a|0)==4)break;else{l=l+16|0;r=r+(f<<1)|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function Ki(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=f*5|0;o=f*6|0;s=f*7|0;u=f<<3;h=i;w=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[h>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[h+32>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[h+64>>2]|0)|0;Gi[r+(a<<1)>>1]=e;e=e+(Xi[h+96>>2]|0)|0;Gi[r+(n<<1)>>1]=e;e=e+(Xi[h+128>>2]|0)|0;Gi[r+(t<<1)>>1]=e;e=e+(Xi[h+160>>2]|0)|0;Gi[r+(o<<1)>>1]=e;e=e+(Xi[h+192>>2]|0)|0;Gi[r+(s<<1)>>1]=e;Gi[r+(u<<1)>>1]=e+(Xi[h+224>>2]|0);w=w+1|0;if((w|0)==8)break;else{h=h+4|0;r=r+2|0}}jT(i|0,0,256)|0;return}function Qi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;e=e+(Xi[l+12>>2]|0)|0;Gi[r+6>>1]=e;e=e+(Xi[l+16>>2]|0)|0;Gi[r+8>>1]=e;e=e+(Xi[l+20>>2]|0)|0;Gi[r+10>>1]=e;e=e+(Xi[l+24>>2]|0)|0;Gi[r+12>>1]=e;Gi[r+14>>1]=e+(Xi[l+28>>2]|0);a=a+1|0;if((a|0)==8)break;else{l=l+32|0;r=r+(f<<1)|0}}jT(i|0,0,256)|0;return}function $i(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;c=d;b=l>>1;n=0-b|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-b<<1)>>1]|0;t=Ji[e+(2-b<<1)>>1]|0;o=Ji[e+(3-b<<1)>>1]|0;s=Ji[e+(4-b<<1)>>1]|0;u=Ji[e+(5-b<<1)>>1]|0;h=Ji[e+(6-b<<1)>>1]|0;l=Gi[e+(7-b<<1)>>1]|0;w=l&65535;if(f)l=Gi[e+(8-b<<1)>>1]|0;r=((Ji[e+(((r|0)==0?n:~b)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2&65535;Gi[c>>1]=r;Gi[c+2>>1]=(k+2+(a<<1)+t|0)>>>2;Gi[c+4>>1]=(a+2+(t<<1)+o|0)>>>2;Gi[c+6>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[c+8>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[c+10>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[c+12>>1]=(u+2+(h<<1)+w|0)>>>2;Gi[c+14>>1]=((l&65535)+2+(w<<1)+h|0)>>>2;o=b<<1;s=b*3|0;u=b<<2;h=b*5|0;a=b*6|0;n=b*7|0;t=r;w=i;l=0;while(1){r=(t&65535)+(Xi[w>>2]|0)|0;Gi[e>>1]=r;r=r+(Xi[w+32>>2]|0)|0;Gi[e+(b<<1)>>1]=r;r=r+(Xi[w+64>>2]|0)|0;Gi[e+(o<<1)>>1]=r;r=r+(Xi[w+96>>2]|0)|0;Gi[e+(s<<1)>>1]=r;r=r+(Xi[w+128>>2]|0)|0;Gi[e+(u<<1)>>1]=r;r=r+(Xi[w+160>>2]|0)|0;Gi[e+(h<<1)>>1]=r;r=r+(Xi[w+192>>2]|0)|0;Gi[e+(a<<1)>>1]=r;Gi[e+(n<<1)>>1]=r+(Xi[w+224>>2]|0);l=l+1|0;if((l|0)==8)break;t=Gi[c+(l<<1)>>1]|0;w=w+4|0;e=e+2|0}jT(i|0,0,256)|0;Ue=d;return}function er(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=Ue;Ue=Ue+16|0;t=o;n=l>>1;b=e+-2|0;k=Ji[b>>1]|0;w=Ji[e+(n+-1<<1)>>1]|0;h=Ji[e+((n<<1)+-1<<1)>>1]|0;u=Ji[e+((n*3|0)+-1<<1)>>1]|0;s=Ji[e+((n<<2)+-1<<1)>>1]|0;l=Ji[e+((n*5|0)+-1<<1)>>1]|0;f=Ji[e+((n*6|0)+-1<<1)>>1]|0;a=Ji[e+((n*7|0)+-1<<1)>>1]|0;r=((Ji[((r|0)==0?b:e+(~n<<1)|0)>>1]|0)+2+(k<<1)+w|0)>>>2&65535;Gi[t>>1]=r;Gi[t+2>>1]=(k+2+(w<<1)+h|0)>>>2;Gi[t+4>>1]=(w+2+(h<<1)+u|0)>>>2;Gi[t+6>>1]=(h+2+(u<<1)+s|0)>>>2;Gi[t+8>>1]=(u+2+(s<<1)+l|0)>>>2;Gi[t+10>>1]=(s+2+(l<<1)+f|0)>>>2;Gi[t+12>>1]=(l+2+(f<<1)+a|0)>>>2;Gi[t+14>>1]=(f+2+(a*3|0)|0)>>>2;a=i;f=0;l=e;while(1){b=(r&65535)+(Xi[a>>2]|0)|0;Gi[l>>1]=b;b=b+(Xi[a+4>>2]|0)|0;Gi[l+2>>1]=b;b=b+(Xi[a+8>>2]|0)|0;Gi[l+4>>1]=b;b=b+(Xi[a+12>>2]|0)|0;Gi[l+6>>1]=b;b=b+(Xi[a+16>>2]|0)|0;Gi[l+8>>1]=b;b=b+(Xi[a+20>>2]|0)|0;Gi[l+10>>1]=b;b=b+(Xi[a+24>>2]|0)|0;Gi[l+12>>1]=b;Gi[l+14>>1]=b+(Xi[a+28>>2]|0);f=f+1|0;if((f|0)==8)break;r=Gi[t+(f<<1)>>1]|0;a=a+32|0;l=l+(n<<1)|0}jT(i|0,0,256)|0;Ue=o;return}function ir(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Yi(e+(Xi[i>>2]|0)|0,r,f);Yi(e+(Xi[i+4>>2]|0)|0,r+64|0,f);Yi(e+(Xi[i+8>>2]|0)|0,r+128|0,f);Yi(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function rr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Yi(e+(Xi[i>>2]|0)|0,r,f);Yi(e+(Xi[i+4>>2]|0)|0,r+64|0,f);Yi(e+(Xi[i+8>>2]|0)|0,r+128|0,f);Yi(e+(Xi[i+12>>2]|0)|0,r+192|0,f);Yi(e+(Xi[i+32>>2]|0)|0,r+256|0,f);Yi(e+(Xi[i+36>>2]|0)|0,r+320|0,f);Yi(e+(Xi[i+40>>2]|0)|0,r+384|0,f);Yi(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function fr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;ji(e+(Xi[i>>2]|0)|0,r,f);ji(e+(Xi[i+4>>2]|0)|0,r+64|0,f);ji(e+(Xi[i+8>>2]|0)|0,r+128|0,f);ji(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function lr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;ji(e+(Xi[i>>2]|0)|0,r,f);ji(e+(Xi[i+4>>2]|0)|0,r+64|0,f);ji(e+(Xi[i+8>>2]|0)|0,r+128|0,f);ji(e+(Xi[i+12>>2]|0)|0,r+192|0,f);ji(e+(Xi[i+32>>2]|0)|0,r+256|0,f);ji(e+(Xi[i+36>>2]|0)|0,r+320|0,f);ji(e+(Xi[i+40>>2]|0)|0,r+384|0,f);ji(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function ar(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{Yi(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function nr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{ji(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function tr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;r=e+(0-i<<1)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function or(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;i=r>>1;r=rN(Ji[e+-2>>1]|0|0,0,65537,65537)|0;f=e;Xi[f>>2]=r;Xi[f+4>>2]=Ie;f=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(i<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;r=i<<1;f=rN(Ji[e+(r+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(r<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;i=i*3|0;r=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;i=e+(i<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=Ie;return}function sr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=(Ji[e+(0-a<<1)>>1]|0)+4+(Ji[e+(1-a<<1)>>1]|0)+(Ji[e+(2-a<<1)>>1]|0)+(Ji[e+(3-a<<1)>>1]|0)+(Ji[e+-2>>1]|0)+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function ur(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;n=r>>1;s=Ji[e+(1-n<<1)>>1]|0;l=Ji[e+(2-n<<1)>>1]|0;o=Ji[e+(3-n<<1)>>1]|0;t=Ji[i>>1]|0;a=Ji[i+2>>1]|0;f=Ji[i+4>>1]|0;r=Ji[i+6>>1]|0;Gi[e>>1]=((Ji[e+(0-n<<1)>>1]|0)+2+l+(s<<1)|0)>>>2;i=(s+2+o+(l<<1)|0)>>>2&65535;Gi[e+(n<<1)>>1]=i;Gi[e+2>>1]=i;i=(l+2+t+(o<<1)|0)>>>2&65535;l=n<<1;Gi[e+(l<<1)>>1]=i;Gi[e+(n+1<<1)>>1]=i;Gi[e+4>>1]=i;o=(o+2+a+(t<<1)|0)>>>2&65535;i=n*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+((l|1)<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+f+(a<<1)|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;Gi[e+(n+3<<1)>>1]=t;a=(a+2+r+(f<<1)|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(i+3<<1)>>1]=(f+2+(r*3|0)|0)>>>2;return}function hr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=r>>1;u=Ji[e+(~a<<1)>>1]|0;l=Ji[e+(0-a<<1)>>1]|0;f=Ji[e+(1-a<<1)>>1]|0;r=Ji[e+(2-a<<1)>>1]|0;i=Ji[e+(3-a<<1)>>1]|0;o=Ji[e+-2>>1]|0;h=Ji[e+(a+-1<<1)>>1]|0;t=a<<1;n=Ji[e+(t+-1<<1)>>1]|0;s=a*3|0;Gi[e+(s<<1)>>1]=(h+2+(n<<1)+(Ji[e+(s+-1<<1)>>1]|0)|0)>>>2;n=(o+2+(h<<1)+n|0)>>>2&65535;Gi[e+(s+1<<1)>>1]=n;Gi[e+(t<<1)>>1]=n;n=u+2|0;h=(n+(o<<1)+h|0)>>>2&65535;Gi[e+(s+2<<1)>>1]=h;Gi[e+((t|1)<<1)>>1]=h;Gi[e+(a<<1)>>1]=h;o=((u<<1)+2+l+o|0)>>>2&65535;Gi[e+(s+3<<1)>>1]=o;Gi[e+(t+2<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;Gi[e>>1]=o;n=(n+(l<<1)+f|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=n;Gi[e+(a+2<<1)>>1]=n;Gi[e+2>>1]=n;l=(l+2+(f<<1)+r|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=l;Gi[e+4>>1]=l;Gi[e+6>>1]=(f+2+(r<<1)+i|0)>>>2;return}function wr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;n=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;o=Ji[e+(3-t<<1)>>1]|0;l=Ji[e+-2>>1]|0;f=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;r=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;w=(n+1+h|0)>>>1&65535;Gi[e+((a|1)<<1)>>1]=w;Gi[e>>1]=w;w=(h+1+u|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=w;Gi[e+2>>1]=w;w=(u+1+s|0)>>>1&65535;Gi[e+(a+3<<1)>>1]=w;Gi[e+4>>1]=w;Gi[e+6>>1]=(s+1+o|0)>>>1;w=((n<<1)+2+h+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=w;Gi[e+(t<<1)>>1]=w;n=n+2|0;w=(n+(h<<1)+u|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;h=(h+2+(u<<1)+s|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=h;Gi[e+(t+2<<1)>>1]=h;Gi[e+(t+3<<1)>>1]=(u+2+(s<<1)+o|0)>>>2;Gi[e+(a<<1)>>1]=(n+(l<<1)+f|0)>>>2;Gi[e+(i<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function kr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;o=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;n=Ji[e+-2>>1]|0;l=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;f=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;r=Ji[e+(i+-1<<1)>>1]|0;w=(o+1+n|0)>>>1&65535;Gi[e+(t+2<<1)>>1]=w;Gi[e>>1]=w;w=((o<<1)+2+h+n|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=w;Gi[e+2>>1]=w;o=o+2|0;Gi[e+4>>1]=(o+(h<<1)+u|0)>>>2;Gi[e+6>>1]=(h+2+(u<<1)+s|0)>>>2;s=(n+1+l|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=s;Gi[e+(t<<1)>>1]=s;o=(o+(n<<1)+l|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=o;Gi[e+(t+1<<1)>>1]=o;t=(l+1+f|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=t;Gi[e+(a<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=n;Gi[e+((a|1)<<1)>>1]=n;Gi[e+(i<<1)>>1]=(f+1+r|0)>>>1;Gi[e+(i+1<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function br(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=r>>1;s=Ji[e+(0-a<<1)>>1]|0;o=Ji[e+(1-a<<1)>>1]|0;t=Ji[e+(2-a<<1)>>1]|0;n=Ji[e+(3-a<<1)>>1]|0;l=Ji[i>>1]|0;f=Ji[i+2>>1]|0;r=Ji[i+4>>1]|0;Gi[e>>1]=(s+1+o|0)>>>1;u=(o+1+t|0)>>>1&65535;i=a<<1;Gi[e+(i<<1)>>1]=u;Gi[e+2>>1]=u;u=(t+1+n|0)>>>1&65535;Gi[e+((i|1)<<1)>>1]=u;Gi[e+4>>1]=u;u=(n+1+l|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=u;Gi[e+6>>1]=u;Gi[e+(i+3<<1)>>1]=(l+1+f|0)>>>1;Gi[e+(a<<1)>>1]=(s+2+(o<<1)+t|0)>>>2;o=(o+2+(t<<1)+n|0)>>>2&65535;i=a*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;t=(t+2+(n<<1)+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(a+2<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=n;Gi[e+(a+3<<1)>>1]=n;Gi[e+(i+3<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function cr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;l=r>>1;o=Ji[e+-2>>1]|0;t=Ji[e+(l+-1<<1)>>1]|0;i=l<<1;n=Ji[e+(i+-1<<1)>>1]|0;f=l*3|0;r=Gi[e+(f+-1<<1)>>1]|0;a=r&65535;Gi[e>>1]=(o+1+t|0)>>>1;Gi[e+2>>1]=(o+2+(t<<1)+n|0)>>>2;o=(t+1+n|0)>>>1&65535;Gi[e+(l<<1)>>1]=o;Gi[e+4>>1]=o;t=(t+2+(n<<1)+a|0)>>>2&65535;Gi[e+(l+1<<1)>>1]=t;Gi[e+6>>1]=t;t=(n+1+a|0)>>>1&65535;Gi[e+(i<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;a=(n+2+a+(a<<1)|0)>>>2&65535;Gi[e+((i|1)<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(f+3<<1)>>1]=r;Gi[e+(f+2<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+(f<<1)>>1]=r;Gi[e+(f+1<<1)>>1]=r;Gi[e+(i+3<<1)>>1]=r;return}function dr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=rN(((Ji[e+-2>>1]|0)+2+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function vr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;f=rN(((Ji[e+(0-i<<1)>>1]|0)+2+(Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(2-i<<1)>>1]|0)+(Ji[e+(3-i<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Er(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=536813567;Xi[r+4>>2]=536813567;r=e+(i<<1)|0;Xi[r>>2]=536813567;Xi[r+4>>2]=536813567;r=e+(i<<1<<1)|0;Xi[r>>2]=536813567;Xi[r+4>>2]=536813567;i=e+(i*3<<1)|0;Xi[i>>2]=536813567;Xi[i+4>>2]=536813567;return}function Sr(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=536944641;Xi[r+4>>2]=536944641;r=e+(i<<1)|0;Xi[r>>2]=536944641;Xi[r+4>>2]=536944641;r=e+(i<<1<<1)|0;Xi[r>>2]=536944641;Xi[r+4>>2]=536944641;i=e+(i*3<<1)|0;Xi[i>>2]=536944641;Xi[i+4>>2]=536944641;return}function _r(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=e+(i<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=e+(i<<1<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;i=e+(i*3<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;return}function mr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=f>>1;a=0-k|0;w=Ji[e+(a<<1)>>1]|0;l=Ji[e+(1-k<<1)>>1]|0;n=Ji[e+(2-k<<1)>>1]|0;t=Ji[e+(3-k<<1)>>1]|0;o=Ji[e+(4-k<<1)>>1]|0;s=Ji[e+(5-k<<1)>>1]|0;u=Ji[e+(6-k<<1)>>1]|0;f=Gi[e+(7-k<<1)>>1]|0;h=f&65535;if(r)f=Gi[e+(8-k<<1)>>1]|0;Gi[e>>1]=((Ji[e+(((i|0)==0?a:~k)<<1)>>1]|0)+2+(w<<1)+l|0)>>>2;Gi[e+2>>1]=(w+2+(l<<1)+n|0)>>>2;Gi[e+4>>1]=(l+2+(n<<1)+t|0)>>>2;Gi[e+6>>1]=(n+2+(t<<1)+o|0)>>>2;a=e+8|0;Gi[a>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[e+10>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[e+12>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[e+14>>1]=((f&65535)+2+(h<<1)+u|0)>>>2;f=e;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=1;do{i=Zi(t,k)|0;r=e+(i<<1)|0;Xi[r>>2]=n;Xi[r+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=l;Xi[i+4>>2]=a;t=t+1|0}while((t|0)!=8);return}function pr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=f>>1;E=e+-2|0;d=Ji[E>>1]|0;b=Ji[e+(k+-1<<1)>>1]|0;c=k<<1;w=Ji[e+(c+-1<<1)>>1]|0;s=k*3|0;u=Ji[e+(s+-1<<1)>>1]|0;h=k<<2;o=Ji[e+(h+-1<<1)>>1]|0;a=k*5|0;n=Ji[e+(a+-1<<1)>>1]|0;t=k*6|0;l=Ji[e+(t+-1<<1)>>1]|0;r=k*7|0;f=Ji[e+(r+-1<<1)>>1]|0;E=rN(((Ji[((i|0)==0?E:e+(~k<<1)|0)>>1]|0)+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;v=Ie;i=e;Xi[i>>2]=E;Xi[i+4>>2]=v;i=e+8|0;Xi[i>>2]=E;Xi[i+4>>2]=v;d=rN((d+2+(b<<1)+w|0)>>>2|0,0,65537,65537)|0;i=Ie;v=e+(k<<1)|0;Xi[v>>2]=d;Xi[v+4>>2]=i;k=e+(k+4<<1)|0;Xi[k>>2]=d;Xi[k+4>>2]=i;b=rN((b+2+(w<<1)+u|0)>>>2|0,0,65537,65537)|0;k=Ie;i=e+(c<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;i=e+(c+4<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;w=rN((w+2+(u<<1)+o|0)>>>2|0,0,65537,65537)|0;i=Ie;k=e+(s<<1)|0;Xi[k>>2]=w;Xi[k+4>>2]=i;s=e+(s+4<<1)|0;Xi[s>>2]=w;Xi[s+4>>2]=i;u=rN((u+2+(o<<1)+n|0)>>>2|0,0,65537,65537)|0;s=Ie;i=e+(h<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;i=e+(h+4<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;o=rN((o+2+(n<<1)+l|0)>>>2|0,0,65537,65537)|0;i=Ie;s=e+(a<<1)|0;Xi[s>>2]=o;Xi[s+4>>2]=i;a=e+(a+4<<1)|0;Xi[a>>2]=o;Xi[a+4>>2]=i;n=rN((n+2+(l<<1)+f|0)>>>2|0,0,65537,65537)|0;a=Ie;i=e+(t<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;i=e+(t+4<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=rN((l+2+(f*3|0)|0)>>>2|0,0,65537,65537)|0;i=Ie;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function Fr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>1;i=(i|0)!=0;u=~F;k=e+-2|0;v=Ji[k>>1]|0;n=Ji[e+(F+-1<<1)>>1]|0;h=Ji[e+((F<<1)+-1<<1)>>1]|0;w=Ji[e+((F*3|0)+-1<<1)>>1]|0;b=Ji[e+((F<<2)+-1<<1)>>1]|0;c=Ji[e+((F*5|0)+-1<<1)>>1]|0;d=Ji[e+((F*6|0)+-1<<1)>>1]|0;E=Ji[e+((F*7|0)+-1<<1)>>1]|0;S=0-F|0;_=Ji[e+(S<<1)>>1]|0;m=Ji[e+(1-F<<1)>>1]|0;p=Ji[e+(2-F<<1)>>1]|0;l=Ji[e+(3-F<<1)>>1]|0;a=Ji[e+(4-F<<1)>>1]|0;t=Ji[e+(5-F<<1)>>1]|0;o=Ji[e+(6-F<<1)>>1]|0;f=Gi[e+(7-F<<1)>>1]|0;s=f&65535;if(r)f=Gi[e+(8-F<<1)>>1]|0;p=(((Ji[(i?e+(u<<1)|0:k)>>1]|0)+2+(v<<1)+n|0)>>>2)+8+((v+2+(n<<1)+h|0)>>>2)+((n+2+(h<<1)+w|0)>>>2)+((h+2+(w<<1)+b|0)>>>2)+((w+2+(b<<1)+c|0)>>>2)+((b+2+(c<<1)+d|0)>>>2)+((c+2+(d<<1)+E|0)>>>2)+((d+2+(E*3|0)|0)>>>2)+(((Ji[e+((i?u:S)<<1)>>1]|0)+2+(_<<1)+m|0)>>>2)+((_+2+(m<<1)+p|0)>>>2)+((m+2+(p<<1)+l|0)>>>2)+((p+2+(l<<1)+a|0)>>>2)+((l+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+(((f&65535)+2+(s<<1)+o|0)>>>2)>>4;p=rN(p|0,((p|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;m=e;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+8|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<1;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*3|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<2;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*5|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*6|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;F=F*7|0;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;e=e+(F+4<<1)|0;Xi[e>>2]=p;Xi[e+4>>2]=r;return}function yr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;w=f>>1;b=0-w|0;m=Ji[e+(b<<1)>>1]|0;k=Ji[e+(1-w<<1)>>1]|0;v=Ji[e+(2-w<<1)>>1]|0;c=(m+2+(k<<1)+v|0)>>>2;E=Ji[e+(3-w<<1)>>1]|0;d=(k+2+(v<<1)+E|0)>>>2;_=Ji[e+(4-w<<1)>>1]|0;v=(v+2+(E<<1)+_|0)>>>2;p=Ji[e+(5-w<<1)>>1]|0;E=(E+2+(_<<1)+p|0)>>>2;S=Ji[e+(6-w<<1)>>1]|0;_=(_+2+(p<<1)+S|0)>>>2;f=Gi[e+(7-w<<1)>>1]|0;h=f&65535;p=(p+2+(S<<1)+h|0)>>>2;if(!r){r=(f&65535)+2+(h<<1)|0;l=h;a=h;n=h;t=h;o=h;s=h;u=h;f=h}else{y=Ji[e+(8-w<<1)>>1]|0;F=Ji[e+(9-w<<1)>>1]|0;f=Ji[e+(10-w<<1)>>1]|0;n=Ji[e+(11-w<<1)>>1]|0;t=Ji[e+(12-w<<1)>>1]|0;o=Ji[e+(13-w<<1)>>1]|0;u=Ji[e+(14-w<<1)>>1]|0;s=Ji[e+(15-w<<1)>>1]|0;r=(Ji[e+(8-w<<1)>>1]|0)+2+(h<<1)|0;l=(F+2+(f<<1)+n|0)>>>2;a=(f+2+(n<<1)+t|0)>>>2;n=(n+2+(t<<1)+o|0)>>>2;t=(t+2+(o<<1)+u|0)>>>2;o=(o+2+(u<<1)+s|0)>>>2;s=(u+2+(s*3|0)|0)>>>2;u=(h+2+(y<<1)+F|0)>>>2;f=(y+2+(F<<1)+f|0)>>>2}F=(r+S|0)>>>2;Gi[e>>1]=((((Ji[e+(((i|0)==0?b:~w)<<1)>>1]|0)+2+(m<<1)+k|0)>>>2)+2+(c<<1)+d|0)>>>2;y=(c+2+(d<<1)+v|0)>>>2&65535;Gi[e+2>>1]=y;Gi[e+(w<<1)>>1]=y;y=(d+2+(v<<1)+E|0)>>>2&65535;Gi[e+4>>1]=y;Gi[e+(w+1<<1)>>1]=y;d=w<<1;Gi[e+(d<<1)>>1]=y;y=(v+2+(E<<1)+_|0)>>>2&65535;Gi[e+6>>1]=y;Gi[e+(w+2<<1)>>1]=y;Gi[e+((d|1)<<1)>>1]=y;v=w*3|0;Gi[e+(v<<1)>>1]=y;y=(E+2+(_<<1)+p|0)>>>2&65535;Gi[e+8>>1]=y;Gi[e+(w+3<<1)>>1]=y;Gi[e+(d+2<<1)>>1]=y;Gi[e+(v+1<<1)>>1]=y;S=w<<2;Gi[e+(S<<1)>>1]=y;y=(_+2+(p<<1)+F|0)>>>2&65535;Gi[e+10>>1]=y;Gi[e+(w+4<<1)>>1]=y;Gi[e+(d+3<<1)>>1]=y;Gi[e+(v+2<<1)>>1]=y;Gi[e+((S|1)<<1)>>1]=y;m=w*5|0;Gi[e+(m<<1)>>1]=y;y=(p+2+(F<<1)+u|0)>>>2&65535;Gi[e+12>>1]=y;Gi[e+(w+5<<1)>>1]=y;Gi[e+(d+4<<1)>>1]=y;Gi[e+(v+3<<1)>>1]=y;Gi[e+((S|2)<<1)>>1]=y;Gi[e+(m+1<<1)>>1]=y;i=w*6|0;Gi[e+(i<<1)>>1]=y;F=(F+2+(u<<1)+f|0)>>>2&65535;Gi[e+14>>1]=F;Gi[e+(w+6<<1)>>1]=F;Gi[e+(d+5<<1)>>1]=F;Gi[e+(v+4<<1)>>1]=F;Gi[e+((S|3)<<1)>>1]=F;Gi[e+(m+2<<1)>>1]=F;Gi[e+((i|1)<<1)>>1]=F;y=w*7|0;Gi[e+(y<<1)>>1]=F;F=(u+2+(f<<1)+l|0)>>>2&65535;Gi[e+(w+7<<1)>>1]=F;Gi[e+(d+6<<1)>>1]=F;Gi[e+(v+5<<1)>>1]=F;Gi[e+(S+4<<1)>>1]=F;Gi[e+(m+3<<1)>>1]=F;Gi[e+(i+2<<1)>>1]=F;Gi[e+(y+1<<1)>>1]=F;F=(f+2+(l<<1)+a|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=F;Gi[e+(v+6<<1)>>1]=F;Gi[e+(S+5<<1)>>1]=F;Gi[e+(m+4<<1)>>1]=F;Gi[e+(i+3<<1)>>1]=F;Gi[e+(y+2<<1)>>1]=F;F=(l+2+(a<<1)+n|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=F;Gi[e+(S+6<<1)>>1]=F;Gi[e+(m+5<<1)>>1]=F;Gi[e+(i+4<<1)>>1]=F;Gi[e+(y+3<<1)>>1]=F;F=(a+2+(n<<1)+t|0)>>>2&65535;Gi[e+(S+7<<1)>>1]=F;Gi[e+(m+6<<1)>>1]=F;Gi[e+(i+5<<1)>>1]=F;Gi[e+(y+4<<1)>>1]=F;F=(n+2+(t<<1)+o|0)>>>2&65535;Gi[e+(m+7<<1)>>1]=F;Gi[e+(i+6<<1)>>1]=F;Gi[e+(y+5<<1)>>1]=F;F=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=F;Gi[e+(y+6<<1)>>1]=F;Gi[e+(y+7<<1)>>1]=(o+2+(s*3|0)|0)>>>2;return}function Or(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;M=e+(n<<1)|0;S=e+-2|0;R=Ji[S>>1]|0;m=Ji[e+(c+-1<<1)>>1]|0;S=((Ji[(i?M:S)>>1]|0)+2+(R<<1)+m|0)>>>2;n=c<<1;p=Ji[e+(n+-1<<1)>>1]|0;R=R+2|0;r=(R+(m<<1)+p|0)>>>2;i=c*3|0;F=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(p<<1)+F|0)>>>2;d=c<<2;y=Ji[e+(d+-1<<1)>>1]|0;p=(p+2+(F<<1)+y|0)>>>2;v=c*5|0;O=Ji[e+(v+-1<<1)>>1]|0;F=(F+2+(y<<1)+O|0)>>>2;E=c*6|0;g=Ji[e+(E+-1<<1)>>1]|0;y=(y+2+(O<<1)+g|0)>>>2;_=c*7|0;A=Ji[e+(_+-1<<1)>>1]|0;O=(O+2+(g<<1)+A|0)>>>2;k=(R+((Ji[M>>1]|0)<<1)+k|0)>>>2;Gi[e+(_<<1)>>1]=(y+2+((g+2+(A*3|0)|0)>>>2)+(O<<1)|0)>>>2;O=(F+2+(y<<1)+O|0)>>>2&65535;Gi[e+(_+1<<1)>>1]=O;Gi[e+(E<<1)>>1]=O;y=(p+2+(F<<1)+y|0)>>>2&65535;Gi[e+(_+2<<1)>>1]=y;Gi[e+((E|1)<<1)>>1]=y;Gi[e+(v<<1)>>1]=y;F=(m+2+(p<<1)+F|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=F;Gi[e+(E+2<<1)>>1]=F;Gi[e+(v+1<<1)>>1]=F;Gi[e+(d<<1)>>1]=F;p=(r+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+3<<1)>>1]=p;Gi[e+(v+2<<1)>>1]=p;Gi[e+((d|1)<<1)>>1]=p;Gi[e+(i<<1)>>1]=p;m=(S+2+(r<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(v+3<<1)>>1]=m;Gi[e+((d|2)<<1)>>1]=m;Gi[e+(i+1<<1)>>1]=m;Gi[e+(n<<1)>>1]=m;r=((S<<1)+2+r+k|0)>>>2&65535;Gi[e+(_+6<<1)>>1]=r;Gi[e+(E+5<<1)>>1]=r;Gi[e+(v+4<<1)>>1]=r;Gi[e+((d|3)<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+((n|1)<<1)>>1]=r;Gi[e+(c<<1)>>1]=r;r=l+2|0;S=(r+S+(k<<1)|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+6<<1)>>1]=S;Gi[e+(v+5<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+(i+3<<1)>>1]=S;Gi[e+(n+2<<1)>>1]=S;Gi[e+(c+1<<1)>>1]=S;Gi[e>>1]=S;k=((l<<1)+2+a+k|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=k;Gi[e+(v+6<<1)>>1]=k;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(n+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;Gi[e+2>>1]=k;r=(r+(a<<1)+t|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=r;Gi[e+(d+6<<1)>>1]=r;Gi[e+(i+5<<1)>>1]=r;Gi[e+(n+4<<1)>>1]=r;Gi[e+(c+3<<1)>>1]=r;Gi[e+4>>1]=r;r=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=r;Gi[e+(i+6<<1)>>1]=r;Gi[e+(n+5<<1)>>1]=r;Gi[e+(c+4<<1)>>1]=r;Gi[e+6>>1]=r;r=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=r;Gi[e+(n+6<<1)>>1]=r;Gi[e+(c+5<<1)>>1]=r;Gi[e+8>>1]=r;r=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=r;Gi[e+(c+6<<1)>>1]=r;Gi[e+10>>1]=r;r=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=r;Gi[e+12>>1]=r;Gi[e+14>>1]=(h+2+(b<<1)+(((f&65535)+2+(w<<1)+u|0)>>>2)|0)>>>2;return}function Ar(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;r=((f&65535)+2+(w<<1)+u|0)>>>2;E=e+(n<<1)|0;v=e+-2|0;O=Ji[v>>1]|0;S=Ji[e+(c+-1<<1)>>1]|0;v=((Ji[(i?E:v)>>1]|0)+2+(O<<1)+S|0)>>>2;w=c<<1;p=Ji[e+(w+-1<<1)>>1]|0;O=O+2|0;_=(O+(S<<1)+p|0)>>>2;u=c*3|0;m=Ji[e+(u+-1<<1)>>1]|0;S=(S+2+(p<<1)+m|0)>>>2;n=c<<2;y=Ji[e+(n+-1<<1)>>1]|0;p=(p+2+(m<<1)+y|0)>>>2;i=c*5|0;A=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(y<<1)+A|0)>>>2;f=c*6|0;F=Ji[e+(f+-1<<1)>>1]|0;y=(y+2+(A<<1)+F|0)>>>2;d=c*7|0;F=(A+2+(F<<1)+(Ji[e+(d+-1<<1)>>1]|0)|0)>>>2;E=(O+((Ji[E>>1]|0)<<1)+k|0)>>>2;Gi[e+(f<<1)>>1]=(p+2+(m<<1)+y|0)>>>2;Gi[e+(d<<1)>>1]=(m+2+(y<<1)+F|0)>>>2;k=(_+2+(S<<1)+p|0)>>>2&65535;Gi[e+((f|1)<<1)>>1]=k;Gi[e+(n<<1)>>1]=k;k=(S+2+(p<<1)+m|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=k;Gi[e+(i<<1)>>1]=k;k=((v<<1)+2+_+E|0)>>>2&65535;Gi[e+(f+2<<1)>>1]=k;Gi[e+((n|1)<<1)>>1]=k;Gi[e+(w<<1)>>1]=k;k=(v+2+(_<<1)+S|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=k;Gi[e+(i+1<<1)>>1]=k;Gi[e+(u<<1)>>1]=k;k=l+2|0;v=(k+v+(E<<1)|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=v;Gi[e+(i+2<<1)>>1]=v;Gi[e+(u+1<<1)>>1]=v;Gi[e+(c<<1)>>1]=v;v=l+1|0;S=(v+E|0)>>>1&65535;Gi[e+(f+3<<1)>>1]=S;Gi[e+((n|2)<<1)>>1]=S;Gi[e+((w|1)<<1)>>1]=S;Gi[e>>1]=S;l=((l<<1)+2+a+E|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=l;Gi[e+(i+3<<1)>>1]=l;Gi[e+(u+2<<1)>>1]=l;Gi[e+(c+1<<1)>>1]=l;l=(v+a|0)>>>1&65535;Gi[e+(f+4<<1)>>1]=l;Gi[e+((n|3)<<1)>>1]=l;Gi[e+(w+2<<1)>>1]=l;Gi[e+2>>1]=l;k=(k+(a<<1)+t|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(u+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;k=(a+1+t|0)>>>1&65535;Gi[e+(f+5<<1)>>1]=k;Gi[e+(n+4<<1)>>1]=k;Gi[e+(w+3<<1)>>1]=k;Gi[e+4>>1]=k;k=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=k;Gi[e+(i+5<<1)>>1]=k;Gi[e+(u+4<<1)>>1]=k;Gi[e+(c+3<<1)>>1]=k;k=(t+1+o|0)>>>1&65535;Gi[e+(f+6<<1)>>1]=k;Gi[e+(n+5<<1)>>1]=k;Gi[e+(w+4<<1)>>1]=k;Gi[e+6>>1]=k;k=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=k;Gi[e+(i+6<<1)>>1]=k;Gi[e+(u+5<<1)>>1]=k;Gi[e+(c+4<<1)>>1]=k;k=(o+1+s|0)>>>1&65535;Gi[e+(f+7<<1)>>1]=k;Gi[e+(n+6<<1)>>1]=k;Gi[e+(w+5<<1)>>1]=k;Gi[e+8>>1]=k;k=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=k;Gi[e+(u+6<<1)>>1]=k;Gi[e+(c+5<<1)>>1]=k;k=(s+1+h|0)>>>1&65535;Gi[e+(n+7<<1)>>1]=k;Gi[e+(w+6<<1)>>1]=k;Gi[e+10>>1]=k;k=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(u+7<<1)>>1]=k;Gi[e+(c+6<<1)>>1]=k;k=(h+1+b|0)>>>1&65535;Gi[e+(w+7<<1)>>1]=k;Gi[e+12>>1]=k;Gi[e+(c+7<<1)>>1]=(h+2+(b<<1)+r|0)>>>2;Gi[e+14>>1]=(b+1+r|0)>>>1;return}function gr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;n=f>>1;s=(i|0)!=0;h=0-n|0;u=~n;O=Ji[e+(h<<1)>>1]|0;a=Ji[e+(1-n<<1)>>1]|0;h=((Ji[e+((s?u:h)<<1)>>1]|0)+2+(O<<1)+a|0)>>>2;l=Ji[e+(2-n<<1)>>1]|0;O=O+2|0;t=(O+(a<<1)+l|0)>>>2;f=Ji[e+(3-n<<1)>>1]|0;a=(a+2+(l<<1)+f|0)>>>2;i=Ji[e+(4-n<<1)>>1]|0;l=(l+2+(f<<1)+i|0)>>>2;w=Ji[e+(5-n<<1)>>1]|0;f=(f+2+(i<<1)+w|0)>>>2;r=Ji[e+(6-n<<1)>>1]|0;i=(i+2+(w<<1)+r|0)>>>2;r=(w+2+(r<<1)+(Ji[e+(7-n<<1)>>1]|0)|0)>>>2;u=e+(u<<1)|0;w=e+-2|0;y=Ji[w>>1]|0;o=Ji[e+(n+-1<<1)>>1]|0;w=((Ji[(s?u:w)>>1]|0)+2+(y<<1)+o|0)>>>2;s=n<<1;v=Ji[e+(s+-1<<1)>>1]|0;b=(y+2+(o<<1)+v|0)>>>2;k=n*3|0;S=Ji[e+(k+-1<<1)>>1]|0;o=(o+2+(v<<1)+S|0)>>>2;c=n<<2;m=Ji[e+(c+-1<<1)>>1]|0;v=(v+2+(S<<1)+m|0)>>>2;d=n*5|0;p=Ji[e+(d+-1<<1)>>1]|0;S=(S+2+(m<<1)+p|0)>>>2;E=n*6|0;A=Ji[e+(E+-1<<1)>>1]|0;m=(m+2+(p<<1)+A|0)>>>2;_=n*7|0;F=Ji[e+(_+-1<<1)>>1]|0;p=(p+2+(A<<1)+F|0)>>>2;F=(A+2+(F*3|0)|0)>>>2;u=(O+y+((Ji[u>>1]|0)<<1)|0)>>>2;Gi[e+(_<<1)>>1]=(F+1+p|0)>>>1;Gi[e+(_+1<<1)>>1]=(m+2+F+(p<<1)|0)>>>2;F=(m+1+p|0)>>>1&65535;Gi[e+(_+2<<1)>>1]=F;Gi[e+(E<<1)>>1]=F;p=(S+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=p;Gi[e+((E|1)<<1)>>1]=p;p=(S+1+m|0)>>>1&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+2<<1)>>1]=p;Gi[e+(d<<1)>>1]=p;m=(v+2+(S<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+3<<1)>>1]=m;Gi[e+(d+1<<1)>>1]=m;m=(v+1+S|0)>>>1&65535;Gi[e+(_+6<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(d+2<<1)>>1]=m;Gi[e+(c<<1)>>1]=m;S=(o+2+(v<<1)+S|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+5<<1)>>1]=S;Gi[e+(d+3<<1)>>1]=S;Gi[e+((c|1)<<1)>>1]=S;S=(o+1+v|0)>>>1&65535;Gi[e+(E+6<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+((c|2)<<1)>>1]=S;Gi[e+(k<<1)>>1]=S;v=(b+2+(o<<1)+v|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=v;Gi[e+(d+5<<1)>>1]=v;Gi[e+((c|3)<<1)>>1]=v;Gi[e+(k+1<<1)>>1]=v;v=(b+1+o|0)>>>1&65535;Gi[e+(d+6<<1)>>1]=v;Gi[e+(c+4<<1)>>1]=v;Gi[e+(k+2<<1)>>1]=v;Gi[e+(s<<1)>>1]=v;o=(w+2+(b<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=o;Gi[e+(c+5<<1)>>1]=o;Gi[e+(k+3<<1)>>1]=o;Gi[e+((s|1)<<1)>>1]=o;o=w+1|0;d=(o+b|0)>>>1&65535;Gi[e+(c+6<<1)>>1]=d;Gi[e+(k+4<<1)>>1]=d;Gi[e+(s+2<<1)>>1]=d;Gi[e+(n<<1)>>1]=d;b=((w<<1)+2+b+u|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=b;Gi[e+(k+5<<1)>>1]=b;Gi[e+(s+3<<1)>>1]=b;Gi[e+(n+1<<1)>>1]=b;o=(o+u|0)>>>1&65535;Gi[e+(k+6<<1)>>1]=o;Gi[e+(s+4<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e>>1]=o;o=h+2|0;w=(o+w+(u<<1)|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=w;Gi[e+(s+5<<1)>>1]=w;Gi[e+(n+3<<1)>>1]=w;Gi[e+2>>1]=w;u=((h<<1)+2+t+u|0)>>>2&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(n+4<<1)>>1]=u;Gi[e+4>>1]=u;o=(o+(t<<1)+a|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(n+5<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+(a<<1)+l|0)>>>2&65535;Gi[e+(n+6<<1)>>1]=t;Gi[e+8>>1]=t;a=(a+2+(l<<1)+f|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=a;Gi[e+10>>1]=a;Gi[e+12>>1]=(l+2+(f<<1)+i|0)>>>2;Gi[e+14>>1]=(f+2+(i<<1)+r|0)>>>2;return}function Mr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=f>>1;o=0-d|0;s=Ji[e+(o<<1)>>1]|0;u=Ji[e+(1-d<<1)>>1]|0;o=((Ji[e+(((i|0)==0?o:~d)<<1)>>1]|0)+2+(s<<1)+u|0)>>>2;h=Ji[e+(2-d<<1)>>1]|0;s=(s+2+(u<<1)+h|0)>>>2;w=Ji[e+(3-d<<1)>>1]|0;u=(u+2+(h<<1)+w|0)>>>2;b=Ji[e+(4-d<<1)>>1]|0;h=(h+2+(w<<1)+b|0)>>>2;c=Ji[e+(5-d<<1)>>1]|0;w=(w+2+(b<<1)+c|0)>>>2;k=Ji[e+(6-d<<1)>>1]|0;b=(b+2+(c<<1)+k|0)>>>2;f=Gi[e+(7-d<<1)>>1]|0;t=f&65535;c=(c+2+(k<<1)+t|0)>>>2;if(!r){i=(f&65535)+2+(t<<1)|0;r=t;l=t;a=t;n=t;f=t}else{E=Ji[e+(8-d<<1)>>1]|0;v=Ji[e+(9-d<<1)>>1]|0;f=Ji[e+(10-d<<1)>>1]|0;n=Ji[e+(11-d<<1)>>1]|0;a=Ji[e+(12-d<<1)>>1]|0;i=(Ji[e+(8-d<<1)>>1]|0)+2+(t<<1)|0;r=(v+2+(f<<1)+n|0)>>>2;l=(f+2+(n<<1)+a|0)>>>2;a=(n+2+(a<<1)+(Ji[e+(13-d<<1)>>1]|0)|0)>>>2;n=(t+2+(E<<1)+v|0)>>>2;f=(E+2+(v<<1)+f|0)>>>2}i=(i+k|0)>>>2;Gi[e>>1]=(o+1+s|0)>>>1;Gi[e+(d<<1)>>1]=(o+2+(s<<1)+u|0)>>>2;E=(s+1+u|0)>>>1&65535;Gi[e+2>>1]=E;t=d<<1;Gi[e+(t<<1)>>1]=E;E=(s+2+(u<<1)+h|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=E;o=d*3|0;Gi[e+(o<<1)>>1]=E;E=(u+1+h|0)>>>1&65535;Gi[e+4>>1]=E;Gi[e+((t|1)<<1)>>1]=E;s=d<<2;Gi[e+(s<<1)>>1]=E;E=(u+2+(h<<1)+w|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=E;Gi[e+(o+1<<1)>>1]=E;k=d*5|0;Gi[e+(k<<1)>>1]=E;E=(h+1+w|0)>>>1&65535;Gi[e+6>>1]=E;Gi[e+(t+2<<1)>>1]=E;Gi[e+((s|1)<<1)>>1]=E;v=d*6|0;Gi[e+(v<<1)>>1]=E;h=(h+2+(w<<1)+b|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=h;Gi[e+(o+2<<1)>>1]=h;Gi[e+(k+1<<1)>>1]=h;E=d*7|0;Gi[e+(E<<1)>>1]=h;h=(w+1+b|0)>>>1&65535;Gi[e+8>>1]=h;Gi[e+(t+3<<1)>>1]=h;Gi[e+((s|2)<<1)>>1]=h;Gi[e+((v|1)<<1)>>1]=h;w=(w+2+(b<<1)+c|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=w;Gi[e+(o+3<<1)>>1]=w;Gi[e+(k+2<<1)>>1]=w;Gi[e+(E+1<<1)>>1]=w;w=(b+1+c|0)>>>1&65535;Gi[e+10>>1]=w;Gi[e+(t+4<<1)>>1]=w;Gi[e+((s|3)<<1)>>1]=w;Gi[e+(v+2<<1)>>1]=w;b=(b+2+(c<<1)+i|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=b;Gi[e+(o+4<<1)>>1]=b;Gi[e+(k+3<<1)>>1]=b;Gi[e+(E+2<<1)>>1]=b;b=(c+1+i|0)>>>1&65535;Gi[e+12>>1]=b;Gi[e+(t+5<<1)>>1]=b;Gi[e+(s+4<<1)>>1]=b;Gi[e+(v+3<<1)>>1]=b;c=(c+2+(i<<1)+n|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=c;Gi[e+(o+5<<1)>>1]=c;Gi[e+(k+4<<1)>>1]=c;Gi[e+(E+3<<1)>>1]=c;c=(i+1+n|0)>>>1&65535;Gi[e+14>>1]=c;Gi[e+(t+6<<1)>>1]=c;Gi[e+(s+5<<1)>>1]=c;Gi[e+(v+4<<1)>>1]=c;c=(i+2+(n<<1)+f|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=c;Gi[e+(o+6<<1)>>1]=c;Gi[e+(k+5<<1)>>1]=c;Gi[e+(E+4<<1)>>1]=c;d=(n+1+f|0)>>>1&65535;Gi[e+(t+7<<1)>>1]=d;Gi[e+(s+6<<1)>>1]=d;Gi[e+(v+5<<1)>>1]=d;d=(n+2+(f<<1)+r|0)>>>2&65535;Gi[e+(o+7<<1)>>1]=d;Gi[e+(k+6<<1)>>1]=d;Gi[e+(E+5<<1)>>1]=d;d=(f+1+r|0)>>>1&65535;Gi[e+(s+7<<1)>>1]=d;Gi[e+(v+6<<1)>>1]=d;d=(f+2+(r<<1)+l|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=d;Gi[e+(E+6<<1)>>1]=d;Gi[e+(v+7<<1)>>1]=(r+1+l|0)>>>1;Gi[e+(E+7<<1)>>1]=(r+2+(l<<1)+a|0)>>>2;return}function Rr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;h=f>>1;c=e+-2|0;b=Ji[c>>1]|0;k=Ji[e+(h+-1<<1)>>1]|0;c=((Ji[((i|0)==0?c:e+(~h<<1)|0)>>1]|0)+2+(b<<1)+k|0)>>>2;s=h<<1;w=Ji[e+(s+-1<<1)>>1]|0;b=(b+2+(k<<1)+w|0)>>>2;t=h*3|0;u=Ji[e+(t+-1<<1)>>1]|0;k=(k+2+(w<<1)+u|0)>>>2;a=h<<2;o=Ji[e+(a+-1<<1)>>1]|0;w=(w+2+(u<<1)+o|0)>>>2;l=h*5|0;n=Ji[e+(l+-1<<1)>>1]|0;u=(u+2+(o<<1)+n|0)>>>2;f=h*6|0;d=Ji[e+(f+-1<<1)>>1]|0;o=(o+2+(n<<1)+d|0)>>>2;r=h*7|0;i=Ji[e+(r+-1<<1)>>1]|0;n=(n+2+(d<<1)+i|0)>>>2;i=(d+2+(i*3|0)|0)>>>2;Gi[e>>1]=(c+1+b|0)>>>1;Gi[e+2>>1]=(c+2+(b<<1)+k|0)>>>2;c=(b+1+k|0)>>>1&65535;Gi[e+4>>1]=c;Gi[e+(h<<1)>>1]=c;b=(b+2+(k<<1)+w|0)>>>2&65535;Gi[e+6>>1]=b;Gi[e+(h+1<<1)>>1]=b;b=(k+1+w|0)>>>1&65535;Gi[e+8>>1]=b;Gi[e+(h+2<<1)>>1]=b;Gi[e+(s<<1)>>1]=b;k=(k+2+(w<<1)+u|0)>>>2&65535;Gi[e+10>>1]=k;Gi[e+(h+3<<1)>>1]=k;Gi[e+((s|1)<<1)>>1]=k;k=(w+1+u|0)>>>1&65535;Gi[e+12>>1]=k;Gi[e+(h+4<<1)>>1]=k;Gi[e+(s+2<<1)>>1]=k;Gi[e+(t<<1)>>1]=k;w=(w+2+(u<<1)+o|0)>>>2&65535;Gi[e+14>>1]=w;Gi[e+(h+5<<1)>>1]=w;Gi[e+(s+3<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;w=(u+1+o|0)>>>1&65535;Gi[e+(h+6<<1)>>1]=w;Gi[e+(s+4<<1)>>1]=w;Gi[e+(t+2<<1)>>1]=w;Gi[e+(a<<1)>>1]=w;u=(u+2+(o<<1)+n|0)>>>2&65535;Gi[e+(h+7<<1)>>1]=u;Gi[e+(s+5<<1)>>1]=u;Gi[e+(t+3<<1)>>1]=u;Gi[e+((a|1)<<1)>>1]=u;u=(o+1+n|0)>>>1&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(t+4<<1)>>1]=u;Gi[e+((a|2)<<1)>>1]=u;Gi[e+(l<<1)>>1]=u;o=(o+2+i+(n<<1)|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(t+5<<1)>>1]=o;Gi[e+((a|3)<<1)>>1]=o;Gi[e+(l+1<<1)>>1]=o;o=(i+1+n|0)>>>1&65535;Gi[e+(t+6<<1)>>1]=o;Gi[e+(a+4<<1)>>1]=o;Gi[e+(l+2<<1)>>1]=o;Gi[e+(f<<1)>>1]=o;n=(n+2+(i*3|0)|0)>>>2&65535;Gi[e+(t+7<<1)>>1]=n;Gi[e+(a+5<<1)>>1]=n;Gi[e+(l+3<<1)>>1]=n;Gi[e+((f|1)<<1)>>1]=n;i=i&65535;Gi[e+(r+7<<1)>>1]=i;Gi[e+(f+7<<1)>>1]=i;Gi[e+(l+7<<1)>>1]=i;Gi[e+(a+7<<1)>>1]=i;Gi[e+(r+6<<1)>>1]=i;Gi[e+(f+6<<1)>>1]=i;Gi[e+(l+6<<1)>>1]=i;Gi[e+(a+6<<1)>>1]=i;Gi[e+(r+5<<1)>>1]=i;Gi[e+(f+5<<1)>>1]=i;Gi[e+(l+5<<1)>>1]=i;Gi[e+(r+4<<1)>>1]=i;Gi[e+(f+4<<1)>>1]=i;Gi[e+(l+4<<1)>>1]=i;Gi[e+(r+3<<1)>>1]=i;Gi[e+(f+3<<1)>>1]=i;Gi[e+(r+2<<1)>>1]=i;Gi[e+(f+2<<1)>>1]=i;Gi[e+(r+1<<1)>>1]=i;Gi[e+(r<<1)>>1]=i;return}function Tr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;r=f>>1;h=e+-2|0;u=Ji[h>>1]|0;s=Ji[e+(r+-1<<1)>>1]|0;o=Ji[e+((r<<1)+-1<<1)>>1]|0;t=Ji[e+((r*3|0)+-1<<1)>>1]|0;n=Ji[e+((r<<2)+-1<<1)>>1]|0;a=Ji[e+((r*5|0)+-1<<1)>>1]|0;l=Ji[e+((r*6|0)+-1<<1)>>1]|0;f=Ji[e+((r*7|0)+-1<<1)>>1]|0;f=(((Ji[((i|0)==0?h:e+(~r<<1)|0)>>1]|0)+2+(u<<1)+s|0)>>>2)+4+((u+2+(s<<1)+o|0)>>>2)+((s+2+(o<<1)+t|0)>>>2)+((o+2+(t<<1)+n|0)>>>2)+((t+2+(n<<1)+a|0)>>>2)+((n+2+(a<<1)+l|0)>>>2)+((a+2+(l<<1)+f|0)>>>2)+((l+2+(f*3|0)|0)>>>2)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;i=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<1;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*3|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<2;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*5|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*6|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=r*7|0;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function Nr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;l=f>>1;n=0-l|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-l<<1)>>1]|0;t=Ji[e+(2-l<<1)>>1]|0;o=Ji[e+(3-l<<1)>>1]|0;s=Ji[e+(4-l<<1)>>1]|0;u=Ji[e+(5-l<<1)>>1]|0;h=Ji[e+(6-l<<1)>>1]|0;f=Gi[e+(7-l<<1)>>1]|0;w=f&65535;if(r)f=Gi[e+(8-l<<1)>>1]|0;k=(((Ji[e+(((i|0)==0?n:~l)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2)+4+((k+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+((u+2+(h<<1)+w|0)>>>2)+(((f&65535)+2+(w<<1)+h|0)>>>2)>>3;k=rN(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;i=e;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+8|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<1;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*3|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<2;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*5|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*6|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*7|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;return}function Dr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=f>>1;i=e;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=e+8|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=e+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=e+(r+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=r<<1;f=e+(i<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;i=e+(i+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=r*3|0;f=e+(i<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;i=e+(i+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=r<<2;f=e+(i<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;i=e+(i+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=r*5|0;f=e+(i<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;i=e+(i+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=r*6|0;f=e+(i<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;i=e+(i+4<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;r=r*7|0;i=e+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;r=e+(r+4<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;return}function Cr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=8);return}function Pr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=16);return}function Lr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=8);return}function Ir(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function Hr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=i>>1;f=e+6|0;l=0-b|0;t=(b<<2)+-1|0;n=e+(t<<1)|0;t=e+(t-(b<<1)<<1)|0;o=e+((b*14|0)+-2)|0;s=e+-2|0;i=(Ji[f+(1-b<<1)>>1]|0)-(Ji[f+(~b<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(b<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-b<<1)>>1]|0)-(Ji[f+(0-(b+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=5);k=(i*17|0)+16>>5;l=(r*17|0)+16>>5;a=k<<1;n=k*3|0;t=k<<2;u=k*5|0;h=k*6|0;w=k*7|0;r=((Ji[s+(8-b<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(l+k|0,-3)|0)|0;f=8;while(1){i=r>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e>>1]=i;i=r+k>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+2>>1]=i;i=r+a>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+4>>1]=i;i=r+n>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+8>>1]=i;i=r+u>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+10>>1]=i;i=r+h>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+12>>1]=i;i=r+w>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+14>>1]=i;if((f|0)>1){r=r+l|0;f=f+-1|0;e=e+(b<<1)|0}else break}return}function Br(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=i>>1;f=e+6|0;t=0-c|0;n=(c<<3)+-1|0;a=e+(n<<1)|0;n=e+(n-(c<<1)<<1)|0;h=e+((c*6|0)+-2)|0;s=(c*22|0)+-2|0;o=e+s|0;u=c<<3;r=(Ji[f+(1-c<<1)>>1]|0)-(Ji[f+(~c<<1)>>1]|0)|0;i=(Ji[a>>1]|0)-(Ji[n>>1]|0)|0;l=2;do{a=a+(c<<1)|0;n=n+(t<<1)|0;r=(Zi((Ji[f+(l-c<<1)>>1]|0)-(Ji[f+(0-(c+l)<<1)>>1]|0)|0,l)|0)+r|0;i=(Zi((Ji[a>>1]|0)-(Ji[n>>1]|0)|0,l)|0)+i|0;l=l+1|0}while((l|0)!=5);f=Zi(c,-3)|0;l=o+(c<<1)|0;b=h+(t<<1)|0;n=l+(c<<1)|0;a=b+(t<<1)|0;w=n+(c<<1)|0;o=a+(t<<1)|0;b=((((Ji[w+(c<<1)>>1]|0)-(Ji[o+(t<<1)>>1]|0)<<3)+((((Ji[w>>1]|0)-(Ji[o>>1]|0)|0)*7|0)+((((Ji[n>>1]|0)-(Ji[a>>1]|0)|0)*6|0)+((((Ji[l>>1]|0)-(Ji[b>>1]|0)|0)*5|0)+i)))|0)*5|0)+32>>6;l=(r*17|0)+16>>5;a=l*3|0;n=l<<1;t=l<<2;o=l*5|0;w=l*6|0;k=l*7|0;r=(Zi(b,-7)|0)+(16-a)+((Ji[h+(f+(8-c)<<1)>>1]|0)+(Ji[e+(s+u)>>1]|0)<<4)|0;f=16;while(1){i=r>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e>>1]=i;i=r+l>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+2>>1]=i;i=r+n>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+4>>1]=i;i=r+a>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+8>>1]=i;i=r+o>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+10>>1]=i;i=r+w>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+12>>1]=i;i=r+k>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[e+14>>1]=i;if((f|0)>1){r=r+b|0;f=f+-1|0;e=e+(c<<1)|0}else break}return}function Ur(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=i>>1;f=0;r=0;i=0;l=0;do{n=Ji[e+((Zi(l,a)|0)+-1<<1)>>1]|0;f=n+f+(Ji[e+(l-a<<1)>>1]|0)|0;n=l+4|0;r=(Ji[e+(n-a<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n,a)|0)+-1<<1)>>1]|0)+i|0;l=l+1|0}while((l|0)!=4);s=f+4>>3;s=rN(s|0,((s|0)<0)<<31>>31|0,65537,65537)|0;o=Ie;t=r+2>>2;t=rN(t|0,((t|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;l=i+2>>2;f=i+4+r>>3;i=e;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+8|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=e+(a<<1)|0;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+(a+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a<<1;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a*3|0;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;n=a<<2;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*5|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*6|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*7|0;a=e+(n<<1)|0;Xi[a>>2]=i;Xi[a+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;return}function xr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=i>>1;r=0;i=0;f=0;do{r=(Ji[e+((Zi(f,l)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(f+4|0,l)|0)+-1<<1)>>1]|0)+i|0;f=f+1|0}while((f|0)!=4);n=r+2>>2;n=rN(n|0,((n|0)<0)<<31>>31|0,65537,65537)|0;a=Ie;r=i+2>>2;f=e;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+8|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l<<1;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l*3|0;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;i=l<<2;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*5|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*6|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;l=l*7|0;i=e+(l<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;e=e+(l+4<<1)|0;Xi[e>>2]=r;Xi[e+4>>2]=f;return}function zr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;i=i>>1;f=4-i|0;f=(Ji[e+(f+3<<1)>>1]|0)+((Ji[e+(f+2<<1)>>1]|0)+((Ji[e+(f+1<<1)>>1]|0)+(Ji[e+(f<<1)>>1]|0)))|0;n=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;a=Ie;f=rN((f+2|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+(i+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<1;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*3|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<2;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*5|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*6|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=i*7|0;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;i=e+(i+4<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Vr(e,i){e=e|0;i=i|0;zr(e,i);sr(e,0,i);return}function Yr(e,i){e=e|0;i=i|0;Ur(e,i);vr(e,0,i);return}function jr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;xr(e,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=a+(f<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=536879104;Xi[a+4>>2]=536879104;e=e+(l+8)|0;l=e;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;f=e+(f<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;r=e+(r<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;i=e+(i<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;return}function Kr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;xr(e,i);f=i>>1;r=e;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=e+(f<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;e=e+8|0;l=e;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;f=e+(f<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;r=e+(r<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;i=e+(i<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;return}function Wr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=i>>1;a=0;l=0;f=0;r=0;i=0;n=0;do{o=Ji[e+((Zi(n,t)|0)+-1<<1)>>1]|0;a=o+a+(Ji[e+(n-t<<1)>>1]|0)|0;o=n+4|0;l=(Ji[e+(o-t<<1)>>1]|0)+l|0;f=(Ji[e+((Zi(o,t)|0)+-1<<1)>>1]|0)+f|0;r=(Ji[e+((Zi(n+8|0,t)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n+12|0,t)|0)+-1<<1)>>1]|0)+i|0;n=n+1|0}while((n|0)!=4);o=a+4>>3;o=rN(o|0,((o|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;u=l+2>>2;u=rN(u|0,((u|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;c=f+2>>2;w=f+4+l>>3;h=r+2>>2;r=r+4+l>>3;f=i+2>>2;a=i+4+l>>3;b=e;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+8|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=e+(t<<1)|0;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+(t+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t<<1;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t*3|0;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;c=rN(c|0,((c|0)<0)<<31>>31|0,65537,65537)|0;b=Ie;w=rN(w|0,((w|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;h=rN(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;i=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;a=rN(a|0,((a|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;o=t<<2;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*5|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*6|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*7|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t<<3;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+((o|4)<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*9|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*10|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*11|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*12|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*13|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*14|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*15|0;t=e+(o<<1)|0;Xi[t>>2]=f;Xi[t+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;return}function Gr(e,i){e=e|0;i=i|0;xr(e,i);xr(e+(i<<3)|0,i);return}function Xr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;l=4-i|0;l=(Ji[e+(l+3<<1)>>1]|0)+((Ji[e+(l+2<<1)>>1]|0)+((Ji[e+(l+1<<1)>>1]|0)+(Ji[e+(l<<1)>>1]|0)))|0;r=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;f=Ie;l=rN((l+2|0)>>>2|0,0,65537,65537)|0;a=Ie;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=r;Xi[o+4>>2]=f;t=e+(t+4<<1)|0;Xi[t>>2]=l;Xi[t+4>>2]=a;n=n+1|0}while((n|0)!=16);return}function qr(e,i){e=e|0;i=i|0;Xr(e,i);sr(e,0,i);return}function Jr(e,i){e=e|0;i=i|0;Wr(e,i);vr(e,0,i);return}function Zr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;xr(e,i);xr(e+(i<<3)|0,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=a+(f<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=536879104;Xi[a+4>>2]=536879104;e=e+(l+8)|0;l=e;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;f=e+(f<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;r=e+(r<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;i=e+(i<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;return}function Qr(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;xr(e,i);xr(e+(i<<3)|0,i);f=i>>1;r=e;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=e+(f<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;e=e+8|0;l=e;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;f=e+(f<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;r=e+(r<<1)|0;Xi[r>>2]=536879104;Xi[r+4>>2]=536879104;i=e+(i<<1)|0;Xi[i>>2]=536879104;Xi[i+4>>2]=536879104;return}function $r(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=536813567;Xi[l+4>>2]=536813567;f=e+(f+4<<1)|0;Xi[f>>2]=536813567;Xi[f+4>>2]=536813567;r=r+1|0}while((r|0)!=8);return}function ef(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=536944641;Xi[l+4>>2]=536944641;f=e+(f+4<<1)|0;Xi[f>>2]=536944641;Xi[f+4>>2]=536944641;r=r+1|0}while((r|0)!=8);return}function rf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;f=e+(f+4<<1)|0;Xi[f>>2]=536879104;Xi[f+4>>2]=536879104;r=r+1|0}while((r|0)!=8);return}function ff(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=i>>1;r=0;do{l=Zi(r,f)|0;a=e+(l<<1)|0;Xi[a>>2]=536879104;Xi[a+4>>2]=536879104;l=e+(l+4<<1)|0;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;r=r+1|0}while((r|0)!=8);e=e+(i<<3)|0;r=0;do{a=Zi(r,f)|0;l=e+(a<<1)|0;Xi[l>>2]=536879104;Xi[l+4>>2]=536879104;a=e+(a+4<<1)|0;Xi[a>>2]=536879104;Xi[a+4>>2]=536879104;r=r+1|0}while((r|0)!=8);return}function lf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+16>>5;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function af(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=i>>1;s=e+(0-i<<1)|0;o=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;a=e+(8-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=e+(12-i<<1)|0;n=Xi[t>>2]|0;t=Xi[t+4>>2]|0;u=0;do{h=Zi(u,i)|0;w=e+(h<<1)|0;Xi[w>>2]=o;Xi[w+4>>2]=s;w=e+(h+4<<1)|0;Xi[w>>2]=r;Xi[w+4>>2]=f;w=e+(h+8<<1)|0;Xi[w>>2]=l;Xi[w+4>>2]=a;h=e+(h+12<<1)|0;Xi[h>>2]=n;Xi[h+4>>2]=t;u=u+1|0}while((u|0)!=16);return}function nf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+4<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+8<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+12<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function tf(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=536813567;Xi[e+4>>2]=536813567;e=i+8|0;Xi[e>>2]=536813567;Xi[e+4>>2]=536813567;e=i+16|0;Xi[e>>2]=536813567;Xi[e+4>>2]=536813567;e=i+24|0;Xi[e>>2]=536813567;Xi[e+4>>2]=536813567;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function of(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=536944641;Xi[e+4>>2]=536944641;e=i+8|0;Xi[e>>2]=536944641;Xi[e+4>>2]=536944641;e=i+16|0;Xi[e>>2]=536944641;Xi[e+4>>2]=536944641;e=i+24|0;Xi[e>>2]=536944641;Xi[e+4>>2]=536944641;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function sf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=i>>1;f=e+14|0;l=0-k|0;t=(k<<3)+-1|0;n=e+(t<<1)|0;t=e+(t-(k<<1)<<1)|0;o=e+((k*30|0)+-2)|0;i=(Ji[f+(1-k<<1)>>1]|0)-(Ji[f+(~k<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(k<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-k<<1)>>1]|0)-(Ji[f+(0-(k+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=9);w=(i*5|0)+32>>6;t=(r*5|0)+32>>6;s=w<<1;u=w*3|0;h=w<<2;a=((Ji[e+-2+(16-k<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(t+w|0,-7)|0)|0;n=16;l=e;while(1){r=a;f=-16;while(1){i=r>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[l+(f+16<<1)>>1]=i;i=r+w>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[l+(f+17<<1)>>1]=i;i=r+s>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[l+(f+18<<1)>>1]=i;i=r+u>>5;if(i>>>0>=16384)i=0-i>>31&16383;Gi[l+(f+19<<1)>>1]=i;if((f|0)<-4){r=r+h|0;f=f+4|0}else break}if((n|0)>1){a=a+t|0;n=n+-1|0;l=l+(k<<1)|0}else break}return}function uf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function hf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function wf(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=536879104;Xi[e+4>>2]=536879104;e=i+8|0;Xi[e>>2]=536879104;Xi[e+4>>2]=536879104;e=i+16|0;Xi[e>>2]=536879104;Xi[e+4>>2]=536879104;e=i+24|0;Xi[e>>2]=536879104;Xi[e+4>>2]=536879104;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function kf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=i;o=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[t>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[t+16>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[t+32>>2]|0)|0;Gi[r+(a<<1)>>1]=e;Gi[r+(n<<1)>>1]=e+(Xi[t+48>>2]|0);o=o+1|0;if((o|0)==4)break;else{t=t+4|0;r=r+2|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function bf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;Gi[r+6>>1]=e+(Xi[l+12>>2]|0);a=a+1|0;if((a|0)==4)break;else{l=l+16|0;r=r+(f<<1)|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function cf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=f*5|0;o=f*6|0;s=f*7|0;u=f<<3;h=i;w=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[h>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[h+32>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[h+64>>2]|0)|0;Gi[r+(a<<1)>>1]=e;e=e+(Xi[h+96>>2]|0)|0;Gi[r+(n<<1)>>1]=e;e=e+(Xi[h+128>>2]|0)|0;Gi[r+(t<<1)>>1]=e;e=e+(Xi[h+160>>2]|0)|0;Gi[r+(o<<1)>>1]=e;e=e+(Xi[h+192>>2]|0)|0;Gi[r+(s<<1)>>1]=e;Gi[r+(u<<1)>>1]=e+(Xi[h+224>>2]|0);w=w+1|0;if((w|0)==8)break;else{h=h+4|0;r=r+2|0}}jT(i|0,0,256)|0;return}function df(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;e=e+(Xi[l+12>>2]|0)|0;Gi[r+6>>1]=e;e=e+(Xi[l+16>>2]|0)|0;Gi[r+8>>1]=e;e=e+(Xi[l+20>>2]|0)|0;Gi[r+10>>1]=e;e=e+(Xi[l+24>>2]|0)|0;Gi[r+12>>1]=e;Gi[r+14>>1]=e+(Xi[l+28>>2]|0);a=a+1|0;if((a|0)==8)break;else{l=l+32|0;r=r+(f<<1)|0}}jT(i|0,0,256)|0;return}function vf(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;c=d;b=l>>1;n=0-b|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-b<<1)>>1]|0;t=Ji[e+(2-b<<1)>>1]|0;o=Ji[e+(3-b<<1)>>1]|0;s=Ji[e+(4-b<<1)>>1]|0;u=Ji[e+(5-b<<1)>>1]|0;h=Ji[e+(6-b<<1)>>1]|0;l=Gi[e+(7-b<<1)>>1]|0;w=l&65535;if(f)l=Gi[e+(8-b<<1)>>1]|0;r=((Ji[e+(((r|0)==0?n:~b)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2&65535;Gi[c>>1]=r;Gi[c+2>>1]=(k+2+(a<<1)+t|0)>>>2;Gi[c+4>>1]=(a+2+(t<<1)+o|0)>>>2;Gi[c+6>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[c+8>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[c+10>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[c+12>>1]=(u+2+(h<<1)+w|0)>>>2;Gi[c+14>>1]=((l&65535)+2+(w<<1)+h|0)>>>2;o=b<<1;s=b*3|0;u=b<<2;h=b*5|0;a=b*6|0;n=b*7|0;t=r;w=i;l=0;while(1){r=(t&65535)+(Xi[w>>2]|0)|0;Gi[e>>1]=r;r=r+(Xi[w+32>>2]|0)|0;Gi[e+(b<<1)>>1]=r;r=r+(Xi[w+64>>2]|0)|0;Gi[e+(o<<1)>>1]=r;r=r+(Xi[w+96>>2]|0)|0;Gi[e+(s<<1)>>1]=r;r=r+(Xi[w+128>>2]|0)|0;Gi[e+(u<<1)>>1]=r;r=r+(Xi[w+160>>2]|0)|0;Gi[e+(h<<1)>>1]=r;r=r+(Xi[w+192>>2]|0)|0;Gi[e+(a<<1)>>1]=r;Gi[e+(n<<1)>>1]=r+(Xi[w+224>>2]|0);l=l+1|0;if((l|0)==8)break;t=Gi[c+(l<<1)>>1]|0;w=w+4|0;e=e+2|0}jT(i|0,0,256)|0;Ue=d;return}function Ef(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=Ue;Ue=Ue+16|0;t=o;n=l>>1;b=e+-2|0;k=Ji[b>>1]|0;w=Ji[e+(n+-1<<1)>>1]|0;h=Ji[e+((n<<1)+-1<<1)>>1]|0;u=Ji[e+((n*3|0)+-1<<1)>>1]|0;s=Ji[e+((n<<2)+-1<<1)>>1]|0;l=Ji[e+((n*5|0)+-1<<1)>>1]|0;f=Ji[e+((n*6|0)+-1<<1)>>1]|0;a=Ji[e+((n*7|0)+-1<<1)>>1]|0;r=((Ji[((r|0)==0?b:e+(~n<<1)|0)>>1]|0)+2+(k<<1)+w|0)>>>2&65535;Gi[t>>1]=r;Gi[t+2>>1]=(k+2+(w<<1)+h|0)>>>2;Gi[t+4>>1]=(w+2+(h<<1)+u|0)>>>2;Gi[t+6>>1]=(h+2+(u<<1)+s|0)>>>2;Gi[t+8>>1]=(u+2+(s<<1)+l|0)>>>2;Gi[t+10>>1]=(s+2+(l<<1)+f|0)>>>2;Gi[t+12>>1]=(l+2+(f<<1)+a|0)>>>2;Gi[t+14>>1]=(f+2+(a*3|0)|0)>>>2;a=i;f=0;l=e;while(1){b=(r&65535)+(Xi[a>>2]|0)|0;Gi[l>>1]=b;b=b+(Xi[a+4>>2]|0)|0;Gi[l+2>>1]=b;b=b+(Xi[a+8>>2]|0)|0;Gi[l+4>>1]=b;b=b+(Xi[a+12>>2]|0)|0;Gi[l+6>>1]=b;b=b+(Xi[a+16>>2]|0)|0;Gi[l+8>>1]=b;b=b+(Xi[a+20>>2]|0)|0;Gi[l+10>>1]=b;b=b+(Xi[a+24>>2]|0)|0;Gi[l+12>>1]=b;Gi[l+14>>1]=b+(Xi[a+28>>2]|0);f=f+1|0;if((f|0)==8)break;r=Gi[t+(f<<1)>>1]|0;a=a+32|0;l=l+(n<<1)|0}jT(i|0,0,256)|0;Ue=o;return}function Sf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;kf(e+(Xi[i>>2]|0)|0,r,f);kf(e+(Xi[i+4>>2]|0)|0,r+64|0,f);kf(e+(Xi[i+8>>2]|0)|0,r+128|0,f);kf(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function _f(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;kf(e+(Xi[i>>2]|0)|0,r,f);kf(e+(Xi[i+4>>2]|0)|0,r+64|0,f);kf(e+(Xi[i+8>>2]|0)|0,r+128|0,f);kf(e+(Xi[i+12>>2]|0)|0,r+192|0,f);kf(e+(Xi[i+32>>2]|0)|0,r+256|0,f);kf(e+(Xi[i+36>>2]|0)|0,r+320|0,f);kf(e+(Xi[i+40>>2]|0)|0,r+384|0,f);kf(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function mf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;bf(e+(Xi[i>>2]|0)|0,r,f);bf(e+(Xi[i+4>>2]|0)|0,r+64|0,f);bf(e+(Xi[i+8>>2]|0)|0,r+128|0,f);bf(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function pf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;bf(e+(Xi[i>>2]|0)|0,r,f);bf(e+(Xi[i+4>>2]|0)|0,r+64|0,f);bf(e+(Xi[i+8>>2]|0)|0,r+128|0,f);bf(e+(Xi[i+12>>2]|0)|0,r+192|0,f);bf(e+(Xi[i+32>>2]|0)|0,r+256|0,f);bf(e+(Xi[i+36>>2]|0)|0,r+320|0,f);bf(e+(Xi[i+40>>2]|0)|0,r+384|0,f);bf(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function Ff(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{kf(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function yf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{bf(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function Of(e,i,r){e=e|0;i=i|0;r=r|0;i=Xi[e+(0-r)>>2]|0;Xi[e>>2]=i;Xi[e+r>>2]=i;Xi[e+(r<<1)>>2]=i;Xi[e+(r*3|0)>>2]=i;return}function Af(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=Zi(qi[e+-1>>0]|0,16843009)|0;Xi[e+r>>2]=Zi(qi[e+(r+-1)>>0]|0,16843009)|0;i=r<<1;Xi[e+i>>2]=Zi(qi[e+(i+-1)>>0]|0,16843009)|0;i=r*3|0;Xi[e+i>>2]=Zi(qi[e+(i+-1)>>0]|0,16843009)|0;return}function gf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=r<<1;i=r*3|0;f=Zi((qi[e+(0-r)>>0]|0)+4+(qi[e+(1-r)>>0]|0)+(qi[e+(2-r)>>0]|0)+(qi[e+(3-r)>>0]|0)+(qi[e+-1>>0]|0)+(qi[e+(r+-1)>>0]|0)+(qi[e+(l+-1)>>0]|0)+(qi[e+(i+-1)>>0]|0)>>3,16843009)|0;Xi[e>>2]=f;Xi[e+r>>2]=f;Xi[e+l>>2]=f;Xi[e+i>>2]=f;return}function Mf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=qi[e+(1-r)>>0]|0;a=qi[e+(2-r)>>0]|0;o=qi[e+(3-r)>>0]|0;t=qi[i>>0]|0;n=qi[i+1>>0]|0;l=qi[i+2>>0]|0;f=qi[i+3>>0]|0;Wi[e>>0]=((qi[e+(0-r)>>0]|0)+2+a+(s<<1)|0)>>>2;i=(s+2+o+(a<<1)|0)>>>2&255;Wi[e+r>>0]=i;Wi[e+1>>0]=i;i=(a+2+t+(o<<1)|0)>>>2&255;a=r<<1;Wi[e+a>>0]=i;Wi[e+(r+1)>>0]=i;Wi[e+2>>0]=i;o=(o+2+n+(t<<1)|0)>>>2&255;i=r*3|0;Wi[e+i>>0]=o;Wi[e+(a|1)>>0]=o;Wi[e+(r+2)>>0]=o;Wi[e+3>>0]=o;t=(t+2+l+(n<<1)|0)>>>2&255;Wi[e+(i+1)>>0]=t;Wi[e+(a+2)>>0]=t;Wi[e+(r+3)>>0]=t;r=(n+2+f+(l<<1)|0)>>>2&255;Wi[e+(i+2)>>0]=r;Wi[e+(a+3)>>0]=r;Wi[e+(i+3)>>0]=(l+2+(f*3|0)|0)>>>2;return}function Rf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;u=qi[e+~r>>0]|0;a=qi[e+(0-r)>>0]|0;l=qi[e+(1-r)>>0]|0;f=qi[e+(2-r)>>0]|0;i=qi[e+(3-r)>>0]|0;o=qi[e+-1>>0]|0;h=qi[e+(r+-1)>>0]|0;t=r<<1;n=qi[e+(t+-1)>>0]|0;s=r*3|0;Wi[e+s>>0]=(h+2+(n<<1)+(qi[e+(s+-1)>>0]|0)|0)>>>2;n=(o+2+(h<<1)+n|0)>>>2&255;Wi[e+(s+1)>>0]=n;Wi[e+t>>0]=n;n=u+2|0;h=(n+(o<<1)+h|0)>>>2&255;Wi[e+(s+2)>>0]=h;Wi[e+(t|1)>>0]=h;Wi[e+r>>0]=h;o=((u<<1)+2+a+o|0)>>>2&255;Wi[e+(s+3)>>0]=o;Wi[e+(t+2)>>0]=o;Wi[e+(r+1)>>0]=o;Wi[e>>0]=o;n=(n+(a<<1)+l|0)>>>2&255;Wi[e+(t+3)>>0]=n;Wi[e+(r+2)>>0]=n;Wi[e+1>>0]=n;a=(a+2+(l<<1)+f|0)>>>2&255;Wi[e+(r+3)>>0]=a;Wi[e+2>>0]=a;Wi[e+3>>0]=(l+2+(f<<1)+i|0)>>>2;return}function Tf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=qi[e+~r>>0]|0;h=qi[e+(0-r)>>0]|0;u=qi[e+(1-r)>>0]|0;s=qi[e+(2-r)>>0]|0;o=qi[e+(3-r)>>0]|0;a=qi[e+-1>>0]|0;l=qi[e+(r+-1)>>0]|0;n=r<<1;f=qi[e+(n+-1)>>0]|0;i=r*3|0;w=(t+1+h|0)>>>1&255;Wi[e+(n|1)>>0]=w;Wi[e>>0]=w;w=(h+1+u|0)>>>1&255;Wi[e+(n+2)>>0]=w;Wi[e+1>>0]=w;w=(u+1+s|0)>>>1&255;Wi[e+(n+3)>>0]=w;Wi[e+2>>0]=w;Wi[e+3>>0]=(s+1+o|0)>>>1;w=((t<<1)+2+h+a|0)>>>2&255;Wi[e+(i+1)>>0]=w;Wi[e+r>>0]=w;t=t+2|0;w=(t+(h<<1)+u|0)>>>2&255;Wi[e+(i+2)>>0]=w;Wi[e+(r+1)>>0]=w;h=(h+2+(u<<1)+s|0)>>>2&255;Wi[e+(i+3)>>0]=h;Wi[e+(r+2)>>0]=h;Wi[e+(r+3)>>0]=(u+2+(s<<1)+o|0)>>>2;Wi[e+n>>0]=(t+(a<<1)+l|0)>>>2;Wi[e+i>>0]=(a+2+(l<<1)+f|0)>>>2;return}function Nf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=qi[e+~r>>0]|0;h=qi[e+(0-r)>>0]|0;u=qi[e+(1-r)>>0]|0;s=qi[e+(2-r)>>0]|0;t=qi[e+-1>>0]|0;a=qi[e+(r+-1)>>0]|0;n=r<<1;l=qi[e+(n+-1)>>0]|0;i=r*3|0;f=qi[e+(i+-1)>>0]|0;w=(o+1+t|0)>>>1&255;Wi[e+(r+2)>>0]=w;Wi[e>>0]=w;w=((o<<1)+2+h+t|0)>>>2&255;Wi[e+(r+3)>>0]=w;Wi[e+1>>0]=w;o=o+2|0;Wi[e+2>>0]=(o+(h<<1)+u|0)>>>2;Wi[e+3>>0]=(h+2+(u<<1)+s|0)>>>2;s=(t+1+a|0)>>>1&255;Wi[e+(n+2)>>0]=s;Wi[e+r>>0]=s;o=(o+(t<<1)+a|0)>>>2&255;Wi[e+(n+3)>>0]=o;Wi[e+(r+1)>>0]=o;r=(a+1+l|0)>>>1&255;Wi[e+(i+2)>>0]=r;Wi[e+n>>0]=r;r=(t+2+(a<<1)+l|0)>>>2&255;Wi[e+(i+3)>>0]=r;Wi[e+(n|1)>>0]=r;Wi[e+i>>0]=(l+1+f|0)>>>1;Wi[e+(i+1)>>0]=(a+2+(l<<1)+f|0)>>>2;return}function Df(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=qi[e+(0-r)>>0]|0;o=qi[e+(1-r)>>0]|0;t=qi[e+(2-r)>>0]|0;n=qi[e+(3-r)>>0]|0;a=qi[i>>0]|0;l=qi[i+1>>0]|0;f=qi[i+2>>0]|0;Wi[e>>0]=(s+1+o|0)>>>1;u=(o+1+t|0)>>>1&255;i=r<<1;Wi[e+i>>0]=u;Wi[e+1>>0]=u;u=(t+1+n|0)>>>1&255;Wi[e+(i|1)>>0]=u;Wi[e+2>>0]=u;u=(n+1+a|0)>>>1&255;Wi[e+(i+2)>>0]=u;Wi[e+3>>0]=u;Wi[e+(i+3)>>0]=(a+1+l|0)>>>1;Wi[e+r>>0]=(s+2+(o<<1)+t|0)>>>2;o=(o+2+(t<<1)+n|0)>>>2&255;i=r*3|0;Wi[e+i>>0]=o;Wi[e+(r+1)>>0]=o;t=(t+2+(n<<1)+a|0)>>>2&255;Wi[e+(i+1)>>0]=t;Wi[e+(r+2)>>0]=t;n=(n+2+(a<<1)+l|0)>>>2&255;Wi[e+(i+2)>>0]=n;Wi[e+(r+3)>>0]=n;Wi[e+(i+3)>>0]=(a+2+(l<<1)+f|0)>>>2;return}function Cf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;o=qi[e+-1>>0]|0;t=qi[e+(r+-1)>>0]|0;i=r<<1;n=qi[e+(i+-1)>>0]|0;l=r*3|0;f=Wi[e+(l+-1)>>0]|0;a=f&255;Wi[e>>0]=(o+1+t|0)>>>1;Wi[e+1>>0]=(o+2+(t<<1)+n|0)>>>2;o=(t+1+n|0)>>>1&255;Wi[e+r>>0]=o;Wi[e+2>>0]=o;t=(t+2+(n<<1)+a|0)>>>2&255;Wi[e+(r+1)>>0]=t;Wi[e+3>>0]=t;t=(n+1+a|0)>>>1&255;Wi[e+i>>0]=t;Wi[e+(r+2)>>0]=t;a=(n+2+a+(a<<1)|0)>>>2&255;Wi[e+(i|1)>>0]=a;Wi[e+(r+3)>>0]=a;Wi[e+(l+3)>>0]=f;Wi[e+(l+2)>>0]=f;Wi[e+(i+2)>>0]=f;Wi[e+l>>0]=f;Wi[e+(l+1)>>0]=f;Wi[e+(i+3)>>0]=f;return}function Pf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=r<<1;i=r*3|0;f=Zi(((qi[e+-1>>0]|0)+2+(qi[e+(r+-1)>>0]|0)+(qi[e+(l+-1)>>0]|0)+(qi[e+(i+-1)>>0]|0)|0)>>>2,16843009)|0;Xi[e>>2]=f;Xi[e+r>>2]=f;Xi[e+l>>2]=f;Xi[e+i>>2]=f;return}function Lf(e,i,r){e=e|0;i=i|0;r=r|0;i=Zi(((qi[e+(0-r)>>0]|0)+2+(qi[e+(1-r)>>0]|0)+(qi[e+(2-r)>>0]|0)+(qi[e+(3-r)>>0]|0)|0)>>>2,16843009)|0;Xi[e>>2]=i;Xi[e+r>>2]=i;Xi[e+(r<<1)>>2]=i;Xi[e+(r*3|0)>>2]=i;return}function If(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=2139062143;Xi[e+r>>2]=2139062143;Xi[e+(r<<1)>>2]=2139062143;Xi[e+(r*3|0)>>2]=2139062143;return}function Hf(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=-2122219135;Xi[e+r>>2]=-2122219135;Xi[e+(r<<1)>>2]=-2122219135;Xi[e+(r*3|0)>>2]=-2122219135;return}function Bf(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=-2139062144;Xi[e+r>>2]=-2139062144;Xi[e+(r<<1)>>2]=-2139062144;Xi[e+(r*3|0)>>2]=-2139062144;return}function Uf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=0-f|0;w=qi[e+a>>0]|0;n=qi[e+(1-f)>>0]|0;t=qi[e+(2-f)>>0]|0;o=qi[e+(3-f)>>0]|0;s=qi[e+(4-f)>>0]|0;u=qi[e+(5-f)>>0]|0;h=qi[e+(6-f)>>0]|0;l=Wi[e+(7-f)>>0]|0;k=l&255;if(r)l=Wi[e+(8-f)>>0]|0;Wi[e>>0]=((qi[e+((i|0)==0?a:~f)>>0]|0)+2+(w<<1)+n|0)>>>2;Wi[e+1>>0]=(w+2+(n<<1)+t|0)>>>2;Wi[e+2>>0]=(n+2+(t<<1)+o|0)>>>2;Wi[e+3>>0]=(t+2+(o<<1)+s|0)>>>2;r=e+4|0;Wi[r>>0]=(o+2+(s<<1)+u|0)>>>2;Wi[e+5>>0]=(s+2+(u<<1)+h|0)>>>2;Wi[e+6>>0]=(u+2+(h<<1)+k|0)>>>2;Wi[e+7>>0]=((l&255)+2+(k<<1)+h|0)>>>2;l=Xi[e>>2]|0;r=Xi[r>>2]|0;a=1;do{i=Zi(a,f)|0;Xi[e+i>>2]=l;Xi[e+(i+4)>>2]=r;a=a+1|0}while((a|0)!=8);return}function xf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;v=e+-1|0;d=qi[v>>0]|0;c=qi[e+(f+-1)>>0]|0;b=f<<1;k=qi[e+(b+-1)>>0]|0;w=f*3|0;h=qi[e+(w+-1)>>0]|0;u=f<<2;s=qi[e+(u+-1)>>0]|0;o=f*5|0;t=qi[e+(o+-1)>>0]|0;n=f*6|0;a=qi[e+(n+-1)>>0]|0;r=f*7|0;l=qi[e+(r+-1)>>0]|0;i=Zi(((qi[((i|0)==0?v:e+~f|0)>>0]|0)+2+(d<<1)+c|0)>>>2,16843009)|0;Xi[e>>2]=i;Xi[e+4>>2]=i;i=Zi((d+2+(c<<1)+k|0)>>>2,16843009)|0;Xi[e+f>>2]=i;Xi[e+(f+4)>>2]=i;i=Zi((c+2+(k<<1)+h|0)>>>2,16843009)|0;Xi[e+b>>2]=i;Xi[e+(b+4)>>2]=i;i=Zi((k+2+(h<<1)+s|0)>>>2,16843009)|0;Xi[e+w>>2]=i;Xi[e+(w+4)>>2]=i;i=Zi((h+2+(s<<1)+t|0)>>>2,16843009)|0;Xi[e+u>>2]=i;Xi[e+(u+4)>>2]=i;i=Zi((s+2+(t<<1)+a|0)>>>2,16843009)|0;Xi[e+o>>2]=i;Xi[e+(o+4)>>2]=i;i=Zi((t+2+(a<<1)+l|0)>>>2,16843009)|0;Xi[e+n>>2]=i;Xi[e+(n+4)>>2]=i;i=Zi((a+2+(l*3|0)|0)>>>2,16843009)|0;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;return}function zf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;l=(i|0)!=0;a=~f;k=e+-1|0;v=qi[k>>0]|0;t=qi[e+(f+-1)>>0]|0;w=qi[e+((f<<1)+-1)>>0]|0;b=qi[e+((f*3|0)+-1)>>0]|0;c=qi[e+((f<<2)+-1)>>0]|0;d=qi[e+((f*5|0)+-1)>>0]|0;E=qi[e+((f*6|0)+-1)>>0]|0;S=qi[e+((f*7|0)+-1)>>0]|0;_=0-f|0;m=qi[e+_>>0]|0;p=qi[e+(1-f)>>0]|0;F=qi[e+(2-f)>>0]|0;n=qi[e+(3-f)>>0]|0;o=qi[e+(4-f)>>0]|0;s=qi[e+(5-f)>>0]|0;u=qi[e+(6-f)>>0]|0;i=Wi[e+(7-f)>>0]|0;h=i&255;if(r)i=Wi[e+(8-f)>>0]|0;r=Zi((((qi[(l?e+a|0:k)>>0]|0)+2+(v<<1)+t|0)>>>2)+8+((v+2+(t<<1)+w|0)>>>2)+((t+2+(w<<1)+b|0)>>>2)+((w+2+(b<<1)+c|0)>>>2)+((b+2+(c<<1)+d|0)>>>2)+((c+2+(d<<1)+E|0)>>>2)+((d+2+(E<<1)+S|0)>>>2)+((E+2+(S*3|0)|0)>>>2)+(((qi[e+(l?a:_)>>0]|0)+2+(m<<1)+p|0)>>>2)+((m+2+(p<<1)+F|0)>>>2)+((p+2+(F<<1)+n|0)>>>2)+((F+2+(n<<1)+o|0)>>>2)+((n+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+(((i&255)+2+(h<<1)+u|0)>>>2)>>4,16843009)|0;Xi[e>>2]=r;Xi[e+4>>2]=r;Xi[e+f>>2]=r;Xi[e+(f+4)>>2]=r;F=f<<1;Xi[e+F>>2]=r;Xi[e+(F+4)>>2]=r;F=f*3|0;Xi[e+F>>2]=r;Xi[e+(F+4)>>2]=r;F=f<<2;Xi[e+F>>2]=r;Xi[e+(F+4)>>2]=r;F=f*5|0;Xi[e+F>>2]=r;Xi[e+(F+4)>>2]=r;F=f*6|0;Xi[e+F>>2]=r;Xi[e+(F+4)>>2]=r;f=f*7|0;Xi[e+f>>2]=r;Xi[e+(f+4)>>2]=r;return}function Vf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;k=0-f|0;_=qi[e+k>>0]|0;b=qi[e+(1-f)>>0]|0;v=qi[e+(2-f)>>0]|0;c=(_+2+(b<<1)+v|0)>>>2;E=qi[e+(3-f)>>0]|0;d=(b+2+(v<<1)+E|0)>>>2;m=qi[e+(4-f)>>0]|0;v=(v+2+(E<<1)+m|0)>>>2;p=qi[e+(5-f)>>0]|0;E=(E+2+(m<<1)+p|0)>>>2;S=qi[e+(6-f)>>0]|0;m=(m+2+(p<<1)+S|0)>>>2;l=Wi[e+(7-f)>>0]|0;w=l&255;p=(p+2+(S<<1)+w|0)>>>2;if(!r){r=(l&255)+2+(w<<1)|0;a=w;n=w;t=w;o=w;s=w;u=w;h=w;l=w}else{y=qi[e+(8-f)>>0]|0;F=qi[e+(9-f)>>0]|0;l=qi[e+(10-f)>>0]|0;t=qi[e+(11-f)>>0]|0;o=qi[e+(12-f)>>0]|0;s=qi[e+(13-f)>>0]|0;h=qi[e+(14-f)>>0]|0;u=qi[e+(15-f)>>0]|0;r=(qi[e+(8-f)>>0]|0)+2+(w<<1)|0;a=(F+2+(l<<1)+t|0)>>>2;n=(l+2+(t<<1)+o|0)>>>2;t=(t+2+(o<<1)+s|0)>>>2;o=(o+2+(s<<1)+h|0)>>>2;s=(s+2+(h<<1)+u|0)>>>2;u=(h+2+(u*3|0)|0)>>>2;h=(w+2+(y<<1)+F|0)>>>2;l=(y+2+(F<<1)+l|0)>>>2}F=(r+S|0)>>>2;Wi[e>>0]=((((qi[e+((i|0)==0?k:~f)>>0]|0)+2+(_<<1)+b|0)>>>2)+2+(c<<1)+d|0)>>>2;y=(c+2+(d<<1)+v|0)>>>2&255;Wi[e+1>>0]=y;Wi[e+f>>0]=y;y=(d+2+(v<<1)+E|0)>>>2&255;Wi[e+2>>0]=y;Wi[e+(f+1)>>0]=y;d=f<<1;Wi[e+d>>0]=y;y=(v+2+(E<<1)+m|0)>>>2&255;Wi[e+3>>0]=y;Wi[e+(f+2)>>0]=y;Wi[e+(d|1)>>0]=y;S=f*3|0;Wi[e+S>>0]=y;y=(E+2+(m<<1)+p|0)>>>2&255;Wi[e+4>>0]=y;Wi[e+(f+3)>>0]=y;Wi[e+(d+2)>>0]=y;Wi[e+(S+1)>>0]=y;_=f<<2;Wi[e+_>>0]=y;y=(m+2+(p<<1)+F|0)>>>2&255;Wi[e+5>>0]=y;Wi[e+(f+4)>>0]=y;Wi[e+(d+3)>>0]=y;Wi[e+(S+2)>>0]=y;Wi[e+(_|1)>>0]=y;m=f*5|0;Wi[e+m>>0]=y;y=(p+2+(F<<1)+h|0)>>>2&255;Wi[e+6>>0]=y;Wi[e+(f+5)>>0]=y;Wi[e+(d+4)>>0]=y;Wi[e+(S+3)>>0]=y;Wi[e+(_|2)>>0]=y;Wi[e+(m+1)>>0]=y;i=f*6|0;Wi[e+i>>0]=y;F=(F+2+(h<<1)+l|0)>>>2&255;Wi[e+7>>0]=F;Wi[e+(f+6)>>0]=F;Wi[e+(d+5)>>0]=F;Wi[e+(S+4)>>0]=F;Wi[e+(_|3)>>0]=F;Wi[e+(m+2)>>0]=F;Wi[e+(i|1)>>0]=F;y=f*7|0;Wi[e+y>>0]=F;F=(h+2+(l<<1)+a|0)>>>2&255;Wi[e+(f+7)>>0]=F;Wi[e+(d+6)>>0]=F;Wi[e+(S+5)>>0]=F;Wi[e+(_+4)>>0]=F;Wi[e+(m+3)>>0]=F;Wi[e+(i+2)>>0]=F;Wi[e+(y+1)>>0]=F;F=(l+2+(a<<1)+n|0)>>>2&255;Wi[e+(d+7)>>0]=F;Wi[e+(S+6)>>0]=F;Wi[e+(_+5)>>0]=F;Wi[e+(m+4)>>0]=F;Wi[e+(i+3)>>0]=F;Wi[e+(y+2)>>0]=F;F=(a+2+(n<<1)+t|0)>>>2&255;Wi[e+(S+7)>>0]=F;Wi[e+(_+6)>>0]=F;Wi[e+(m+5)>>0]=F;Wi[e+(i+4)>>0]=F;Wi[e+(y+3)>>0]=F;F=(n+2+(t<<1)+o|0)>>>2&255;Wi[e+(_+7)>>0]=F;Wi[e+(m+6)>>0]=F;Wi[e+(i+5)>>0]=F;Wi[e+(y+4)>>0]=F;F=(t+2+(o<<1)+s|0)>>>2&255;Wi[e+(m+7)>>0]=F;Wi[e+(i+6)>>0]=F;Wi[e+(y+5)>>0]=F;F=(o+2+(s<<1)+u|0)>>>2&255;Wi[e+(i+7)>>0]=F;Wi[e+(y+6)>>0]=F;Wi[e+(y+7)>>0]=(s+2+(u*3|0)|0)>>>2;return}function Yf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;l=(i|0)!=0;a=0-f|0;n=~f;w=qi[e+a>>0]|0;o=qi[e+(1-f)>>0]|0;a=((qi[e+(l?n:a)>>0]|0)+2+(w<<1)+o|0)>>>2;s=qi[e+(2-f)>>0]|0;t=(w+2+(o<<1)+s|0)>>>2;u=qi[e+(3-f)>>0]|0;o=(o+2+(s<<1)+u|0)>>>2;k=qi[e+(4-f)>>0]|0;s=(s+2+(u<<1)+k|0)>>>2;c=qi[e+(5-f)>>0]|0;u=(u+2+(k<<1)+c|0)>>>2;h=qi[e+(6-f)>>0]|0;k=(k+2+(c<<1)+h|0)>>>2;i=Wi[e+(7-f)>>0]|0;b=i&255;c=(c+2+(h<<1)+b|0)>>>2;if(r)i=Wi[e+(8-f)>>0]|0;M=e+n|0;S=e+-1|0;R=qi[S>>0]|0;m=qi[e+(f+-1)>>0]|0;S=((qi[(l?M:S)>>0]|0)+2+(R<<1)+m|0)>>>2;n=f<<1;p=qi[e+(n+-1)>>0]|0;R=R+2|0;r=(R+(m<<1)+p|0)>>>2;l=f*3|0;F=qi[e+(l+-1)>>0]|0;m=(m+2+(p<<1)+F|0)>>>2;d=f<<2;y=qi[e+(d+-1)>>0]|0;p=(p+2+(F<<1)+y|0)>>>2;v=f*5|0;O=qi[e+(v+-1)>>0]|0;F=(F+2+(y<<1)+O|0)>>>2;E=f*6|0;g=qi[e+(E+-1)>>0]|0;y=(y+2+(O<<1)+g|0)>>>2;_=f*7|0;A=qi[e+(_+-1)>>0]|0;O=(O+2+(g<<1)+A|0)>>>2;w=(R+((qi[M>>0]|0)<<1)+w|0)>>>2;Wi[e+_>>0]=(y+2+((g+2+(A*3|0)|0)>>>2)+(O<<1)|0)>>>2;O=(F+2+(y<<1)+O|0)>>>2&255;Wi[e+(_+1)>>0]=O;Wi[e+E>>0]=O;y=(p+2+(F<<1)+y|0)>>>2&255;Wi[e+(_+2)>>0]=y;Wi[e+(E|1)>>0]=y;Wi[e+v>>0]=y;F=(m+2+(p<<1)+F|0)>>>2&255;Wi[e+(_+3)>>0]=F;Wi[e+(E+2)>>0]=F;Wi[e+(v+1)>>0]=F;Wi[e+d>>0]=F;p=(r+2+(m<<1)+p|0)>>>2&255;Wi[e+(_+4)>>0]=p;Wi[e+(E+3)>>0]=p;Wi[e+(v+2)>>0]=p;Wi[e+(d|1)>>0]=p;Wi[e+l>>0]=p;m=(S+2+(r<<1)+m|0)>>>2&255;Wi[e+(_+5)>>0]=m;Wi[e+(E+4)>>0]=m;Wi[e+(v+3)>>0]=m;Wi[e+(d|2)>>0]=m;Wi[e+(l+1)>>0]=m;Wi[e+n>>0]=m;r=((S<<1)+2+r+w|0)>>>2&255;Wi[e+(_+6)>>0]=r;Wi[e+(E+5)>>0]=r;Wi[e+(v+4)>>0]=r;Wi[e+(d|3)>>0]=r;Wi[e+(l+2)>>0]=r;Wi[e+(n|1)>>0]=r;Wi[e+f>>0]=r;r=a+2|0;S=(r+S+(w<<1)|0)>>>2&255;Wi[e+(_+7)>>0]=S;Wi[e+(E+6)>>0]=S;Wi[e+(v+5)>>0]=S;Wi[e+(d+4)>>0]=S;Wi[e+(l+3)>>0]=S;Wi[e+(n+2)>>0]=S;Wi[e+(f+1)>>0]=S;Wi[e>>0]=S;w=((a<<1)+2+t+w|0)>>>2&255;Wi[e+(E+7)>>0]=w;Wi[e+(v+6)>>0]=w;Wi[e+(d+5)>>0]=w;Wi[e+(l+4)>>0]=w;Wi[e+(n+3)>>0]=w;Wi[e+(f+2)>>0]=w;Wi[e+1>>0]=w;r=(r+(t<<1)+o|0)>>>2&255;Wi[e+(v+7)>>0]=r;Wi[e+(d+6)>>0]=r;Wi[e+(l+5)>>0]=r;Wi[e+(n+4)>>0]=r;Wi[e+(f+3)>>0]=r;Wi[e+2>>0]=r;r=(t+2+(o<<1)+s|0)>>>2&255;Wi[e+(d+7)>>0]=r;Wi[e+(l+6)>>0]=r;Wi[e+(n+5)>>0]=r;Wi[e+(f+4)>>0]=r;Wi[e+3>>0]=r;r=(o+2+(s<<1)+u|0)>>>2&255;Wi[e+(l+7)>>0]=r;Wi[e+(n+6)>>0]=r;Wi[e+(f+5)>>0]=r;Wi[e+4>>0]=r;r=(s+2+(u<<1)+k|0)>>>2&255;Wi[e+(n+7)>>0]=r;Wi[e+(f+6)>>0]=r;Wi[e+5>>0]=r;r=(u+2+(k<<1)+c|0)>>>2&255;Wi[e+(f+7)>>0]=r;Wi[e+6>>0]=r;Wi[e+7>>0]=(k+2+(c<<1)+(((i&255)+2+(b<<1)+h|0)>>>2)|0)>>>2;return}function jf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;l=(i|0)!=0;a=0-f|0;n=~f;w=qi[e+a>>0]|0;o=qi[e+(1-f)>>0]|0;a=((qi[e+(l?n:a)>>0]|0)+2+(w<<1)+o|0)>>>2;s=qi[e+(2-f)>>0]|0;t=(w+2+(o<<1)+s|0)>>>2;u=qi[e+(3-f)>>0]|0;o=(o+2+(s<<1)+u|0)>>>2;k=qi[e+(4-f)>>0]|0;s=(s+2+(u<<1)+k|0)>>>2;c=qi[e+(5-f)>>0]|0;u=(u+2+(k<<1)+c|0)>>>2;h=qi[e+(6-f)>>0]|0;k=(k+2+(c<<1)+h|0)>>>2;i=Wi[e+(7-f)>>0]|0;b=i&255;c=(c+2+(h<<1)+b|0)>>>2;if(r)i=Wi[e+(8-f)>>0]|0;r=((i&255)+2+(b<<1)+h|0)>>>2;E=e+n|0;S=e+-1|0;O=qi[S>>0]|0;b=qi[e+(f+-1)>>0]|0;S=((qi[(l?E:S)>>0]|0)+2+(O<<1)+b|0)>>>2;h=f<<1;p=qi[e+(h+-1)>>0]|0;O=O+2|0;_=(O+(b<<1)+p|0)>>>2;n=f*3|0;m=qi[e+(n+-1)>>0]|0;b=(b+2+(p<<1)+m|0)>>>2;l=f<<2;y=qi[e+(l+-1)>>0]|0;p=(p+2+(m<<1)+y|0)>>>2;i=f*5|0;A=qi[e+(i+-1)>>0]|0;m=(m+2+(y<<1)+A|0)>>>2;d=f*6|0;F=qi[e+(d+-1)>>0]|0;y=(y+2+(A<<1)+F|0)>>>2;v=f*7|0;F=(A+2+(F<<1)+(qi[e+(v+-1)>>0]|0)|0)>>>2;E=(O+((qi[E>>0]|0)<<1)+w|0)>>>2;Wi[e+d>>0]=(p+2+(m<<1)+y|0)>>>2;Wi[e+v>>0]=(m+2+(y<<1)+F|0)>>>2;w=(_+2+(b<<1)+p|0)>>>2&255;Wi[e+(d|1)>>0]=w;Wi[e+l>>0]=w;w=(b+2+(p<<1)+m|0)>>>2&255;Wi[e+(v+1)>>0]=w;Wi[e+i>>0]=w;w=((S<<1)+2+_+E|0)>>>2&255;Wi[e+(d+2)>>0]=w;Wi[e+(l|1)>>0]=w;Wi[e+h>>0]=w;b=(S+2+(_<<1)+b|0)>>>2&255;Wi[e+(v+2)>>0]=b;Wi[e+(i+1)>>0]=b;Wi[e+n>>0]=b;b=a+2|0;w=(b+S+(E<<1)|0)>>>2&255;Wi[e+(v+3)>>0]=w;Wi[e+(i+2)>>0]=w;Wi[e+(n+1)>>0]=w;Wi[e+f>>0]=w;w=a+1|0;S=(w+E|0)>>>1&255;Wi[e+(d+3)>>0]=S;Wi[e+(l|2)>>0]=S;Wi[e+(h|1)>>0]=S;Wi[e>>0]=S;a=((a<<1)+2+t+E|0)>>>2&255;Wi[e+(v+4)>>0]=a;Wi[e+(i+3)>>0]=a;Wi[e+(n+2)>>0]=a;Wi[e+(f+1)>>0]=a;w=(w+t|0)>>>1&255;Wi[e+(d+4)>>0]=w;Wi[e+(l|3)>>0]=w;Wi[e+(h+2)>>0]=w;Wi[e+1>>0]=w;b=(b+(t<<1)+o|0)>>>2&255;Wi[e+(v+5)>>0]=b;Wi[e+(i+4)>>0]=b;Wi[e+(n+3)>>0]=b;Wi[e+(f+2)>>0]=b;b=(t+1+o|0)>>>1&255;Wi[e+(d+5)>>0]=b;Wi[e+(l+4)>>0]=b;Wi[e+(h+3)>>0]=b;Wi[e+2>>0]=b;b=(t+2+(o<<1)+s|0)>>>2&255;Wi[e+(v+6)>>0]=b;Wi[e+(i+5)>>0]=b;Wi[e+(n+4)>>0]=b;Wi[e+(f+3)>>0]=b;b=(o+1+s|0)>>>1&255;Wi[e+(d+6)>>0]=b;Wi[e+(l+5)>>0]=b;Wi[e+(h+4)>>0]=b;Wi[e+3>>0]=b;b=(o+2+(s<<1)+u|0)>>>2&255;Wi[e+(v+7)>>0]=b;Wi[e+(i+6)>>0]=b;Wi[e+(n+5)>>0]=b;Wi[e+(f+4)>>0]=b;b=(s+1+u|0)>>>1&255;Wi[e+(d+7)>>0]=b;Wi[e+(l+6)>>0]=b;Wi[e+(h+5)>>0]=b;Wi[e+4>>0]=b;b=(s+2+(u<<1)+k|0)>>>2&255;Wi[e+(i+7)>>0]=b;Wi[e+(n+6)>>0]=b;Wi[e+(f+5)>>0]=b;b=(u+1+k|0)>>>1&255;Wi[e+(l+7)>>0]=b;Wi[e+(h+6)>>0]=b;Wi[e+5>>0]=b;b=(u+2+(k<<1)+c|0)>>>2&255;Wi[e+(n+7)>>0]=b;Wi[e+(f+6)>>0]=b;b=(k+1+c|0)>>>1&255;Wi[e+(h+7)>>0]=b;Wi[e+6>>0]=b;Wi[e+(f+7)>>0]=(k+2+(c<<1)+r|0)>>>2;Wi[e+7>>0]=(c+1+r|0)>>>1;return}function Kf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;s=(i|0)!=0;h=0-f|0;u=~f;O=qi[e+h>>0]|0;n=qi[e+(1-f)>>0]|0;h=((qi[e+(s?u:h)>>0]|0)+2+(O<<1)+n|0)>>>2;a=qi[e+(2-f)>>0]|0;O=O+2|0;t=(O+(n<<1)+a|0)>>>2;l=qi[e+(3-f)>>0]|0;n=(n+2+(a<<1)+l|0)>>>2;i=qi[e+(4-f)>>0]|0;a=(a+2+(l<<1)+i|0)>>>2;w=qi[e+(5-f)>>0]|0;l=(l+2+(i<<1)+w|0)>>>2;r=qi[e+(6-f)>>0]|0;i=(i+2+(w<<1)+r|0)>>>2;r=(w+2+(r<<1)+(qi[e+(7-f)>>0]|0)|0)>>>2;u=e+u|0;w=e+-1|0;y=qi[w>>0]|0;o=qi[e+(f+-1)>>0]|0;w=((qi[(s?u:w)>>0]|0)+2+(y<<1)+o|0)>>>2;s=f<<1;v=qi[e+(s+-1)>>0]|0;b=(y+2+(o<<1)+v|0)>>>2;k=f*3|0;S=qi[e+(k+-1)>>0]|0;o=(o+2+(v<<1)+S|0)>>>2;c=f<<2;m=qi[e+(c+-1)>>0]|0;v=(v+2+(S<<1)+m|0)>>>2;d=f*5|0;p=qi[e+(d+-1)>>0]|0;S=(S+2+(m<<1)+p|0)>>>2;E=f*6|0;A=qi[e+(E+-1)>>0]|0;m=(m+2+(p<<1)+A|0)>>>2;_=f*7|0;F=qi[e+(_+-1)>>0]|0;p=(p+2+(A<<1)+F|0)>>>2;F=(A+2+(F*3|0)|0)>>>2;u=(O+y+((qi[u>>0]|0)<<1)|0)>>>2;Wi[e+_>>0]=(F+1+p|0)>>>1;Wi[e+(_+1)>>0]=(m+2+F+(p<<1)|0)>>>2;F=(m+1+p|0)>>>1&255;Wi[e+(_+2)>>0]=F;Wi[e+E>>0]=F;p=(S+2+(m<<1)+p|0)>>>2&255;Wi[e+(_+3)>>0]=p;Wi[e+(E|1)>>0]=p;p=(S+1+m|0)>>>1&255;Wi[e+(_+4)>>0]=p;Wi[e+(E+2)>>0]=p;Wi[e+d>>0]=p;m=(v+2+(S<<1)+m|0)>>>2&255;Wi[e+(_+5)>>0]=m;Wi[e+(E+3)>>0]=m;Wi[e+(d+1)>>0]=m;m=(v+1+S|0)>>>1&255;Wi[e+(_+6)>>0]=m;Wi[e+(E+4)>>0]=m;Wi[e+(d+2)>>0]=m;Wi[e+c>>0]=m;S=(o+2+(v<<1)+S|0)>>>2&255;Wi[e+(_+7)>>0]=S;Wi[e+(E+5)>>0]=S;Wi[e+(d+3)>>0]=S;Wi[e+(c|1)>>0]=S;S=(o+1+v|0)>>>1&255;Wi[e+(E+6)>>0]=S;Wi[e+(d+4)>>0]=S;Wi[e+(c|2)>>0]=S;Wi[e+k>>0]=S;v=(b+2+(o<<1)+v|0)>>>2&255;Wi[e+(E+7)>>0]=v;Wi[e+(d+5)>>0]=v;Wi[e+(c|3)>>0]=v;Wi[e+(k+1)>>0]=v;v=(b+1+o|0)>>>1&255;Wi[e+(d+6)>>0]=v;Wi[e+(c+4)>>0]=v;Wi[e+(k+2)>>0]=v;Wi[e+s>>0]=v;o=(w+2+(b<<1)+o|0)>>>2&255;Wi[e+(d+7)>>0]=o;Wi[e+(c+5)>>0]=o;Wi[e+(k+3)>>0]=o;Wi[e+(s|1)>>0]=o;o=w+1|0;d=(o+b|0)>>>1&255;Wi[e+(c+6)>>0]=d;Wi[e+(k+4)>>0]=d;Wi[e+(s+2)>>0]=d;Wi[e+f>>0]=d;b=((w<<1)+2+b+u|0)>>>2&255;Wi[e+(c+7)>>0]=b;Wi[e+(k+5)>>0]=b;Wi[e+(s+3)>>0]=b;Wi[e+(f+1)>>0]=b;o=(o+u|0)>>>1&255;Wi[e+(k+6)>>0]=o;Wi[e+(s+4)>>0]=o;Wi[e+(f+2)>>0]=o;Wi[e>>0]=o;o=h+2|0;w=(o+w+(u<<1)|0)>>>2&255;Wi[e+(k+7)>>0]=w;Wi[e+(s+5)>>0]=w;Wi[e+(f+3)>>0]=w;Wi[e+1>>0]=w;u=((h<<1)+2+t+u|0)>>>2&255;Wi[e+(s+6)>>0]=u;Wi[e+(f+4)>>0]=u;Wi[e+2>>0]=u;o=(o+(t<<1)+n|0)>>>2&255;Wi[e+(s+7)>>0]=o;Wi[e+(f+5)>>0]=o;Wi[e+3>>0]=o;t=(t+2+(n<<1)+a|0)>>>2&255;Wi[e+(f+6)>>0]=t;Wi[e+4>>0]=t;n=(n+2+(a<<1)+l|0)>>>2&255;Wi[e+(f+7)>>0]=n;Wi[e+5>>0]=n;Wi[e+6>>0]=(a+2+(l<<1)+i|0)>>>2;Wi[e+7>>0]=(l+2+(i<<1)+r|0)>>>2;return}function Wf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;s=0-f|0;u=qi[e+s>>0]|0;h=qi[e+(1-f)>>0]|0;s=((qi[e+((i|0)==0?s:~f)>>0]|0)+2+(u<<1)+h|0)>>>2;w=qi[e+(2-f)>>0]|0;u=(u+2+(h<<1)+w|0)>>>2;k=qi[e+(3-f)>>0]|0;h=(h+2+(w<<1)+k|0)>>>2;c=qi[e+(4-f)>>0]|0;w=(w+2+(k<<1)+c|0)>>>2;d=qi[e+(5-f)>>0]|0;k=(k+2+(c<<1)+d|0)>>>2;b=qi[e+(6-f)>>0]|0;c=(c+2+(d<<1)+b|0)>>>2;i=Wi[e+(7-f)>>0]|0;o=i&255;d=(d+2+(b<<1)+o|0)>>>2;if(!r){r=(i&255)+2+(o<<1)|0;l=o;a=o;n=o;t=o;i=o}else{E=qi[e+(8-f)>>0]|0;v=qi[e+(9-f)>>0]|0;i=qi[e+(10-f)>>0]|0;t=qi[e+(11-f)>>0]|0;n=qi[e+(12-f)>>0]|0;r=(qi[e+(8-f)>>0]|0)+2+(o<<1)|0;l=(v+2+(i<<1)+t|0)>>>2;a=(i+2+(t<<1)+n|0)>>>2;n=(t+2+(n<<1)+(qi[e+(13-f)>>0]|0)|0)>>>2;t=(o+2+(E<<1)+v|0)>>>2;i=(E+2+(v<<1)+i|0)>>>2}r=(r+b|0)>>>2;Wi[e>>0]=(s+1+u|0)>>>1;Wi[e+f>>0]=(s+2+(u<<1)+h|0)>>>2;E=(u+1+h|0)>>>1&255;Wi[e+1>>0]=E;o=f<<1;Wi[e+o>>0]=E;E=(u+2+(h<<1)+w|0)>>>2&255;Wi[e+(f+1)>>0]=E;s=f*3|0;Wi[e+s>>0]=E;E=(h+1+w|0)>>>1&255;Wi[e+2>>0]=E;Wi[e+(o|1)>>0]=E;u=f<<2;Wi[e+u>>0]=E;E=(h+2+(w<<1)+k|0)>>>2&255;Wi[e+(f+2)>>0]=E;Wi[e+(s+1)>>0]=E;b=f*5|0;Wi[e+b>>0]=E;E=(w+1+k|0)>>>1&255;Wi[e+3>>0]=E;Wi[e+(o+2)>>0]=E;Wi[e+(u|1)>>0]=E;v=f*6|0;Wi[e+v>>0]=E;w=(w+2+(k<<1)+c|0)>>>2&255;Wi[e+(f+3)>>0]=w;Wi[e+(s+2)>>0]=w;Wi[e+(b+1)>>0]=w;E=f*7|0;Wi[e+E>>0]=w;w=(k+1+c|0)>>>1&255;Wi[e+4>>0]=w;Wi[e+(o+3)>>0]=w;Wi[e+(u|2)>>0]=w;Wi[e+(v|1)>>0]=w;k=(k+2+(c<<1)+d|0)>>>2&255;Wi[e+(f+4)>>0]=k;Wi[e+(s+3)>>0]=k;Wi[e+(b+2)>>0]=k;Wi[e+(E+1)>>0]=k;k=(c+1+d|0)>>>1&255;Wi[e+5>>0]=k;Wi[e+(o+4)>>0]=k;Wi[e+(u|3)>>0]=k;Wi[e+(v+2)>>0]=k;c=(c+2+(d<<1)+r|0)>>>2&255;Wi[e+(f+5)>>0]=c;Wi[e+(s+4)>>0]=c;Wi[e+(b+3)>>0]=c;Wi[e+(E+2)>>0]=c;c=(d+1+r|0)>>>1&255;Wi[e+6>>0]=c;Wi[e+(o+5)>>0]=c;Wi[e+(u+4)>>0]=c;Wi[e+(v+3)>>0]=c;d=(d+2+(r<<1)+t|0)>>>2&255;Wi[e+(f+6)>>0]=d;Wi[e+(s+5)>>0]=d;Wi[e+(b+4)>>0]=d;Wi[e+(E+3)>>0]=d;d=(r+1+t|0)>>>1&255;Wi[e+7>>0]=d;Wi[e+(o+6)>>0]=d;Wi[e+(u+5)>>0]=d;Wi[e+(v+4)>>0]=d;d=(r+2+(t<<1)+i|0)>>>2&255;Wi[e+(f+7)>>0]=d;Wi[e+(s+6)>>0]=d;Wi[e+(b+5)>>0]=d;Wi[e+(E+4)>>0]=d;f=(t+1+i|0)>>>1&255;Wi[e+(o+7)>>0]=f;Wi[e+(u+6)>>0]=f;Wi[e+(v+5)>>0]=f;f=(t+2+(i<<1)+l|0)>>>2&255;Wi[e+(s+7)>>0]=f;Wi[e+(b+6)>>0]=f;Wi[e+(E+5)>>0]=f;f=(i+1+l|0)>>>1&255;Wi[e+(u+7)>>0]=f;Wi[e+(v+6)>>0]=f;f=(i+2+(l<<1)+a|0)>>>2&255;Wi[e+(b+7)>>0]=f;Wi[e+(E+6)>>0]=f;Wi[e+(v+7)>>0]=(l+1+a|0)>>>1;Wi[e+(E+7)>>0]=(l+2+(a<<1)+n|0)>>>2;return}function Gf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=e+-1|0;b=qi[c>>0]|0;k=qi[e+(f+-1)>>0]|0;c=((qi[((i|0)==0?c:e+~f|0)>>0]|0)+2+(b<<1)+k|0)>>>2;s=f<<1;w=qi[e+(s+-1)>>0]|0;b=(b+2+(k<<1)+w|0)>>>2;t=f*3|0;h=qi[e+(t+-1)>>0]|0;k=(k+2+(w<<1)+h|0)>>>2;n=f<<2;u=qi[e+(n+-1)>>0]|0;w=(w+2+(h<<1)+u|0)>>>2;a=f*5|0;o=qi[e+(a+-1)>>0]|0;h=(h+2+(u<<1)+o|0)>>>2;l=f*6|0;d=qi[e+(l+-1)>>0]|0;u=(u+2+(o<<1)+d|0)>>>2;r=f*7|0;i=qi[e+(r+-1)>>0]|0;o=(o+2+(d<<1)+i|0)>>>2;i=(d+2+(i*3|0)|0)>>>2;Wi[e>>0]=(c+1+b|0)>>>1;Wi[e+1>>0]=(c+2+(b<<1)+k|0)>>>2;c=(b+1+k|0)>>>1&255;Wi[e+2>>0]=c;Wi[e+f>>0]=c;b=(b+2+(k<<1)+w|0)>>>2&255;Wi[e+3>>0]=b;Wi[e+(f+1)>>0]=b;b=(k+1+w|0)>>>1&255;Wi[e+4>>0]=b;Wi[e+(f+2)>>0]=b;Wi[e+s>>0]=b;k=(k+2+(w<<1)+h|0)>>>2&255;Wi[e+5>>0]=k;Wi[e+(f+3)>>0]=k;Wi[e+(s|1)>>0]=k;k=(w+1+h|0)>>>1&255;Wi[e+6>>0]=k;Wi[e+(f+4)>>0]=k;Wi[e+(s+2)>>0]=k;Wi[e+t>>0]=k;w=(w+2+(h<<1)+u|0)>>>2&255;Wi[e+7>>0]=w;Wi[e+(f+5)>>0]=w;Wi[e+(s+3)>>0]=w;Wi[e+(t+1)>>0]=w;w=(h+1+u|0)>>>1&255;Wi[e+(f+6)>>0]=w;Wi[e+(s+4)>>0]=w;Wi[e+(t+2)>>0]=w;Wi[e+n>>0]=w;h=(h+2+(u<<1)+o|0)>>>2&255;Wi[e+(f+7)>>0]=h;Wi[e+(s+5)>>0]=h;Wi[e+(t+3)>>0]=h;Wi[e+(n|1)>>0]=h;f=(u+1+o|0)>>>1&255;Wi[e+(s+6)>>0]=f;Wi[e+(t+4)>>0]=f;Wi[e+(n|2)>>0]=f;Wi[e+a>>0]=f;f=(u+2+i+(o<<1)|0)>>>2&255;Wi[e+(s+7)>>0]=f;Wi[e+(t+5)>>0]=f;Wi[e+(n|3)>>0]=f;Wi[e+(a+1)>>0]=f;f=(i+1+o|0)>>>1&255;Wi[e+(t+6)>>0]=f;Wi[e+(n+4)>>0]=f;Wi[e+(a+2)>>0]=f;Wi[e+l>>0]=f;f=(o+2+(i*3|0)|0)>>>2&255;Wi[e+(t+7)>>0]=f;Wi[e+(n+5)>>0]=f;Wi[e+(a+3)>>0]=f;Wi[e+(l|1)>>0]=f;i=i&255;Wi[e+(r+7)>>0]=i;Wi[e+(l+7)>>0]=i;Wi[e+(a+7)>>0]=i;Wi[e+(n+7)>>0]=i;Wi[e+(r+6)>>0]=i;Wi[e+(l+6)>>0]=i;Wi[e+(a+6)>>0]=i;Wi[e+(n+6)>>0]=i;Wi[e+(r+5)>>0]=i;Wi[e+(l+5)>>0]=i;Wi[e+(a+5)>>0]=i;Wi[e+(r+4)>>0]=i;Wi[e+(l+4)>>0]=i;Wi[e+(a+4)>>0]=i;Wi[e+(r+3)>>0]=i;Wi[e+(l+3)>>0]=i;Wi[e+(r+2)>>0]=i;Wi[e+(l+2)>>0]=i;Wi[e+(r+1)>>0]=i;Wi[e+r>>0]=i;return}function Xf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=e+-1|0;u=qi[h>>0]|0;s=qi[e+(f+-1)>>0]|0;o=qi[e+((f<<1)+-1)>>0]|0;t=qi[e+((f*3|0)+-1)>>0]|0;n=qi[e+((f<<2)+-1)>>0]|0;a=qi[e+((f*5|0)+-1)>>0]|0;l=qi[e+((f*6|0)+-1)>>0]|0;r=qi[e+((f*7|0)+-1)>>0]|0;i=Zi((((qi[((i|0)==0?h:e+~f|0)>>0]|0)+2+(u<<1)+s|0)>>>2)+4+((u+2+(s<<1)+o|0)>>>2)+((s+2+(o<<1)+t|0)>>>2)+((o+2+(t<<1)+n|0)>>>2)+((t+2+(n<<1)+a|0)>>>2)+((n+2+(a<<1)+l|0)>>>2)+((a+2+(l<<1)+r|0)>>>2)+((l+2+(r*3|0)|0)>>>2)>>3,16843009)|0;Xi[e>>2]=i;Xi[e+4>>2]=i;Xi[e+f>>2]=i;Xi[e+(f+4)>>2]=i;r=f<<1;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;r=f*3|0;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;r=f<<2;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;r=f*5|0;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;r=f*6|0;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;r=f*7|0;Xi[e+r>>2]=i;Xi[e+(r+4)>>2]=i;return}function qf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=0-f|0;w=qi[e+a>>0]|0;n=qi[e+(1-f)>>0]|0;t=qi[e+(2-f)>>0]|0;o=qi[e+(3-f)>>0]|0;s=qi[e+(4-f)>>0]|0;u=qi[e+(5-f)>>0]|0;h=qi[e+(6-f)>>0]|0;l=Wi[e+(7-f)>>0]|0;k=l&255;if(r)l=Wi[e+(8-f)>>0]|0;k=Zi((((qi[e+((i|0)==0?a:~f)>>0]|0)+2+(w<<1)+n|0)>>>2)+4+((w+2+(n<<1)+t|0)>>>2)+((n+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+((u+2+(h<<1)+k|0)>>>2)+(((l&255)+2+(k<<1)+h|0)>>>2)>>3,16843009)|0;Xi[e>>2]=k;Xi[e+4>>2]=k;Xi[e+f>>2]=k;Xi[e+(f+4)>>2]=k;i=f<<1;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;i=f*3|0;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;i=f<<2;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;i=f*5|0;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;i=f*6|0;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;i=f*7|0;Xi[e+i>>2]=k;Xi[e+(i+4)>>2]=k;return}function Jf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+f>>2]=-2139062144;Xi[e+(f+4)>>2]=-2139062144;r=f<<1;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;r=f*3|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;r=f<<2;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;r=f*5|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;r=f*6|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;r=f*7|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;return}function Zf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;r=Xi[e+(0-i)>>2]|0;f=Xi[e+(4-i)>>2]|0;l=0;do{a=Zi(l,i)|0;Xi[e+a>>2]=r;Xi[e+(a+4)>>2]=f;l=l+1|0}while((l|0)!=8);return}function Qf(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;r=Xi[e+(0-i)>>2]|0;f=Xi[e+(4-i)>>2]|0;l=0;do{a=Zi(l,i)|0;Xi[e+a>>2]=r;Xi[e+(a+4)>>2]=f;l=l+1|0}while((l|0)!=16);return}function $f(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;do{f=Zi(r,i)|0;l=Zi(qi[e+(f+-1)>>0]|0,16843009)|0;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;r=r+1|0}while((r|0)!=8);return}function el(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;do{f=Zi(r,i)|0;l=Zi(qi[e+(f+-1)>>0]|0,16843009)|0;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;r=r+1|0}while((r|0)!=16);return}function il(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=0-i|0;l=3-i|0;o=(i<<2)+-1|0;t=e+o|0;o=e+(o-(i<<1))|0;k=e+((i*7|0)+-1)|0;r=(qi[e+(l+1)>>0]|0)-(qi[e+(l+-1)>>0]|0)|0;f=(qi[t>>0]|0)-(qi[o>>0]|0)|0;n=2;do{t=t+i|0;o=o+a|0;r=(Zi((qi[e+(n+l)>>0]|0)-(qi[e+(l-n)>>0]|0)|0,n)|0)+r|0;f=(Zi((qi[t>>0]|0)-(qi[o>>0]|0)|0,n)|0)+f|0;n=n+1|0}while((n|0)!=5);w=(r*17|0)+16>>5;a=(f*17|0)+16>>5;n=w<<1;t=w*3|0;o=w<<2;s=w*5|0;u=w*6|0;h=w*7|0;f=((qi[e+(8-i+-1)>>0]|0)+(qi[k>>0]|0)<<4)+16+(Zi(a+w|0,-3)|0)|0;l=8;r=e;while(1){e=f>>5;Wi[r>>0]=e>>>0>255?0-e>>31:e;e=f+w>>5;Wi[r+1>>0]=e>>>0>255?0-e>>31:e;e=f+n>>5;Wi[r+2>>0]=e>>>0>255?0-e>>31:e;e=f+t>>5;Wi[r+3>>0]=e>>>0>255?0-e>>31:e;e=f+o>>5;Wi[r+4>>0]=e>>>0>255?0-e>>31:e;e=f+s>>5;Wi[r+5>>0]=e>>>0>255?0-e>>31:e;e=f+u>>5;Wi[r+6>>0]=e>>>0>255?0-e>>31:e;e=f+h>>5;Wi[r+7>>0]=e>>>0>255?0-e>>31:e;if((l|0)>1){f=f+a|0;l=l+-1|0;r=r+i|0}else break}return}function rl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=0-i|0;l=3-i|0;t=(i<<3)+-1|0;n=e+t|0;t=e+(t-(i<<1))|0;s=(i*3|0)+-1|0;k=(i*11|0)+-1|0;b=i<<2;f=(qi[e+(l+1)>>0]|0)-(qi[e+(l+-1)>>0]|0)|0;r=(qi[n>>0]|0)-(qi[t>>0]|0)|0;a=2;do{n=n+i|0;t=t+o|0;f=(Zi((qi[e+(a+l)>>0]|0)-(qi[e+(l-a)>>0]|0)|0,a)|0)+f|0;r=(Zi((qi[n>>0]|0)-(qi[t>>0]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=5);a=e+k+i|0;w=e+s+o|0;t=a+i|0;n=w+o|0;u=t+i|0;s=n+o|0;w=((((qi[u+i>>0]|0)-(qi[s+o>>0]|0)<<3)+((((qi[u>>0]|0)-(qi[s>>0]|0)|0)*7|0)+((((qi[t>>0]|0)-(qi[n>>0]|0)|0)*6|0)+((((qi[a>>0]|0)-(qi[w>>0]|0)|0)*5|0)+r)))|0)*5|0)+32>>6;a=(f*17|0)+16>>5;n=a*3|0;t=a<<1;o=a<<2;s=a*5|0;u=a*6|0;h=a*7|0;f=(Zi(w,-7)|0)+(16-n)+((qi[e+(8-i+-1)>>0]|0)+(qi[e+(k+b)>>0]|0)<<4)|0;l=16;r=e;while(1){e=f>>5;Wi[r>>0]=e>>>0>255?0-e>>31:e;e=f+a>>5;Wi[r+1>>0]=e>>>0>255?0-e>>31:e;e=f+t>>5;Wi[r+2>>0]=e>>>0>255?0-e>>31:e;e=f+n>>5;Wi[r+3>>0]=e>>>0>255?0-e>>31:e;e=f+o>>5;Wi[r+4>>0]=e>>>0>255?0-e>>31:e;e=f+s>>5;Wi[r+5>>0]=e>>>0>255?0-e>>31:e;e=f+u>>5;Wi[r+6>>0]=e>>>0>255?0-e>>31:e;e=f+h>>5;Wi[r+7>>0]=e>>>0>255?0-e>>31:e;if((l|0)>1){f=f+w|0;l=l+-1|0;r=r+i|0}else break}return}function fl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=0;f=0;r=0;a=0;do{n=qi[e+((Zi(a,i)|0)+-1)>>0]|0;l=n+l+(qi[e+(a-i)>>0]|0)|0;n=a+4|0;f=(qi[e+(n-i)>>0]|0)+f|0;r=(qi[e+((Zi(n,i)|0)+-1)>>0]|0)+r|0;a=a+1|0}while((a|0)!=4);n=Zi(l+4>>3,16843009)|0;a=Zi(f+2>>2,16843009)|0;Xi[e>>2]=n;Xi[e+4>>2]=a;Xi[e+i>>2]=n;Xi[e+(i+4)>>2]=a;l=i<<1;Xi[e+l>>2]=n;Xi[e+(l+4)>>2]=a;l=i*3|0;Xi[e+l>>2]=n;Xi[e+(l+4)>>2]=a;l=Zi(r+2>>2,16843009)|0;a=Zi(r+4+f>>3,16843009)|0;n=i<<2;Xi[e+n>>2]=l;Xi[e+(n+4)>>2]=a;n=i*5|0;Xi[e+n>>2]=l;Xi[e+(n+4)>>2]=a;n=i*6|0;Xi[e+n>>2]=l;Xi[e+(n+4)>>2]=a;n=i*7|0;Xi[e+n>>2]=l;Xi[e+(n+4)>>2]=a;return}function ll(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;f=0;r=0;l=0;do{f=(qi[e+((Zi(l,i)|0)+-1)>>0]|0)+f|0;r=(qi[e+((Zi(l+4|0,i)|0)+-1)>>0]|0)+r|0;l=l+1|0}while((l|0)!=4);f=Zi(f+2>>2,16843009)|0;Xi[e>>2]=f;Xi[e+4>>2]=f;Xi[e+i>>2]=f;Xi[e+(i+4)>>2]=f;l=i<<1;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=f;l=i*3|0;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=f;l=Zi(r+2>>2,16843009)|0;f=i<<2;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;f=i*5|0;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;f=i*6|0;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;i=i*7|0;Xi[e+i>>2]=l;Xi[e+(i+4)>>2]=l;return}function al(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=4-i|0;f=Zi(((qi[e+(3-i)>>0]|0)+((qi[e+(2-i)>>0]|0)+((qi[e+(1-i)>>0]|0)+(qi[e+(0-i)>>0]|0)))+2|0)>>>2,16843009)|0;r=Zi(((qi[e+(r+3)>>0]|0)+((qi[e+(r+2)>>0]|0)+((qi[e+(r+1)>>0]|0)+(qi[e+r>>0]|0)))+2|0)>>>2,16843009)|0;Xi[e>>2]=f;Xi[e+4>>2]=r;Xi[e+i>>2]=f;Xi[e+(i+4)>>2]=r;l=i<<1;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=r;l=i*3|0;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=r;l=i<<2;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=r;l=i*5|0;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=r;l=i*6|0;Xi[e+l>>2]=f;Xi[e+(l+4)>>2]=r;i=i*7|0;Xi[e+i>>2]=f;Xi[e+(i+4)>>2]=r;return}function nl(e,i){e=e|0;i=i|0;al(e,i);gf(e,0,i);return}function tl(e,i){e=e|0;i=i|0;fl(e,i);Lf(e,0,i);return}function ol(e,i){e=e|0;i=i|0;var r=0;ll(e,i);r=i<<2;Xi[e+r>>2]=-2139062144;Xi[e+(i*5|0)>>2]=-2139062144;Xi[e+(i*6|0)>>2]=-2139062144;Xi[e+(i*7|0)>>2]=-2139062144;r=r+4|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+i)>>2]=-2139062144;Xi[e+(r+(i<<1))>>2]=-2139062144;Xi[e+(r+(i*3|0))>>2]=-2139062144;return}function sl(e,i){e=e|0;i=i|0;var r=0,f=0;ll(e,i);Xi[e>>2]=-2139062144;Xi[e+i>>2]=-2139062144;f=i<<1;Xi[e+f>>2]=-2139062144;r=i*3|0;Xi[e+r>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+(i+4)>>2]=-2139062144;Xi[e+(f+4)>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;return}function ul(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;n=0;a=0;l=0;f=0;r=0;t=0;do{o=qi[e+((Zi(t,i)|0)+-1)>>0]|0;n=o+n+(qi[e+(t-i)>>0]|0)|0;o=t+4|0;a=(qi[e+(o-i)>>0]|0)+a|0;l=(qi[e+((Zi(o,i)|0)+-1)>>0]|0)+l|0;f=(qi[e+((Zi(t+8|0,i)|0)+-1)>>0]|0)+f|0;r=(qi[e+((Zi(t+12|0,i)|0)+-1)>>0]|0)+r|0;t=t+1|0}while((t|0)!=4);s=Zi(n+4>>3,16843009)|0;u=Zi(a+2>>2,16843009)|0;Xi[e>>2]=s;Xi[e+4>>2]=u;Xi[e+i>>2]=s;Xi[e+(i+4)>>2]=u;h=i<<1;Xi[e+h>>2]=s;Xi[e+(h+4)>>2]=u;h=i*3|0;Xi[e+h>>2]=s;Xi[e+(h+4)>>2]=u;h=Zi(l+2>>2,16843009)|0;u=Zi(l+4+a>>3,16843009)|0;s=Zi(f+2>>2,16843009)|0;l=Zi(f+4+a>>3,16843009)|0;n=Zi(r+2>>2,16843009)|0;t=Zi(r+4+a>>3,16843009)|0;o=i<<2;Xi[e+o>>2]=h;Xi[e+(o+4)>>2]=u;o=i*5|0;Xi[e+o>>2]=h;Xi[e+(o+4)>>2]=u;o=i*6|0;Xi[e+o>>2]=h;Xi[e+(o+4)>>2]=u;o=i*7|0;Xi[e+o>>2]=h;Xi[e+(o+4)>>2]=u;o=i<<3;Xi[e+o>>2]=s;Xi[e+(o|4)>>2]=l;o=i*9|0;Xi[e+o>>2]=s;Xi[e+(o+4)>>2]=l;o=i*10|0;Xi[e+o>>2]=s;Xi[e+(o+4)>>2]=l;o=i*11|0;Xi[e+o>>2]=s;Xi[e+(o+4)>>2]=l;o=i*12|0;Xi[e+o>>2]=n;Xi[e+(o+4)>>2]=t;o=i*13|0;Xi[e+o>>2]=n;Xi[e+(o+4)>>2]=t;o=i*14|0;Xi[e+o>>2]=n;Xi[e+(o+4)>>2]=t;o=i*15|0;Xi[e+o>>2]=n;Xi[e+(o+4)>>2]=t;return}function hl(e,i){e=e|0;i=i|0;ll(e,i);ll(e+(i<<3)|0,i);return}function wl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=4-i|0;r=Zi(((qi[e+(3-i)>>0]|0)+((qi[e+(2-i)>>0]|0)+((qi[e+(1-i)>>0]|0)+(qi[e+(0-i)>>0]|0)))+2|0)>>>2,16843009)|0;f=Zi(((qi[e+(f+3)>>0]|0)+((qi[e+(f+2)>>0]|0)+((qi[e+(f+1)>>0]|0)+(qi[e+f>>0]|0)))+2|0)>>>2,16843009)|0;l=0;do{a=Zi(l,i)|0;Xi[e+a>>2]=r;Xi[e+(a+4)>>2]=f;l=l+1|0}while((l|0)!=16);return}function kl(e,i){e=e|0;i=i|0;wl(e,i);gf(e,0,i);return}function bl(e,i){e=e|0;i=i|0;ul(e,i);Lf(e,0,i);return}function cl(e,i){e=e|0;i=i|0;var r=0;ll(e,i);ll(e+(i<<3)|0,i);r=i<<2;Xi[e+r>>2]=-2139062144;Xi[e+(i*5|0)>>2]=-2139062144;Xi[e+(i*6|0)>>2]=-2139062144;Xi[e+(i*7|0)>>2]=-2139062144;r=r+4|0;Xi[e+r>>2]=-2139062144;Xi[e+(r+i)>>2]=-2139062144;Xi[e+(r+(i<<1))>>2]=-2139062144;Xi[e+(r+(i*3|0))>>2]=-2139062144;return}function dl(e,i){e=e|0;i=i|0;var r=0,f=0;ll(e,i);ll(e+(i<<3)|0,i);Xi[e>>2]=-2139062144;Xi[e+i>>2]=-2139062144;f=i<<1;Xi[e+f>>2]=-2139062144;r=i*3|0;Xi[e+r>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+(i+4)>>2]=-2139062144;Xi[e+(f+4)>>2]=-2139062144;Xi[e+(r+4)>>2]=-2139062144;return}function vl(e,i){e=e|0;i=i|0;var r=0,f=0;r=0;do{f=Zi(r,i)|0;Xi[e+f>>2]=2139062143;Xi[e+(f+4)>>2]=2139062143;r=r+1|0}while((r|0)!=8);return}function El(e,i){e=e|0;i=i|0;var r=0,f=0;r=0;do{f=Zi(r,i)|0;Xi[e+f>>2]=-2122219135;Xi[e+(f+4)>>2]=-2122219135;r=r+1|0}while((r|0)!=8);return}function Sl(e,i){e=e|0;i=i|0;var r=0,f=0;r=0;do{f=Zi(r,i)|0;Xi[e+f>>2]=-2139062144;Xi[e+(f+4)>>2]=-2139062144;r=r+1|0}while((r|0)!=8);return}function _l(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;r=0;do{l=Zi(r,i)|0;Xi[e+l>>2]=-2139062144;Xi[e+(l+4)>>2]=-2139062144;r=r+1|0}while((r|0)!=8);f=i<<3;r=f|4;l=0;do{a=Zi(l,i)|0;Xi[e+(a+f)>>2]=-2139062144;Xi[e+(r+a)>>2]=-2139062144;l=l+1|0}while((l|0)!=8);return}function ml(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;f=0;do{r=(qi[e+((Zi(f,i)|0)+-1)>>0]|0)+r|0;f=f+1|0}while((f|0)!=16);f=0;do{r=(qi[e+(f-i)>>0]|0)+r|0;f=f+1|0}while((f|0)!=16);f=Zi(r+16>>5,16843009)|0;l=0;r=e;while(1){Xi[r>>2]=f;Xi[r+4>>2]=f;Xi[r+8>>2]=f;Xi[r+12>>2]=f;l=l+1|0;if((l|0)==16)break;else r=r+i|0}return}function pl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;r=Xi[e+(0-i)>>2]|0;f=Xi[e+(4-i)>>2]|0;l=Xi[e+(8-i)>>2]|0;a=Xi[e+(12-i)>>2]|0;n=0;do{t=Zi(n,i)|0;Xi[e+t>>2]=r;Xi[e+(t+4)>>2]=f;Xi[e+(t+8)>>2]=l;Xi[e+(t+12)>>2]=a;n=n+1|0}while((n|0)!=16);return}function Fl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;do{f=Zi(r,i)|0;l=Zi(qi[e+(f+-1)>>0]|0,16843009)|0;Xi[e+f>>2]=l;Xi[e+(f+4)>>2]=l;Xi[e+(f+8)>>2]=l;Xi[e+(f+12)>>2]=l;r=r+1|0}while((r|0)!=16);return}function yl(e,i){e=e|0;i=i|0;var r=0;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;r=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;e=r+i|0;Xi[r>>2]=2139062143;Xi[r+4>>2]=2139062143;Xi[r+8>>2]=2139062143;Xi[r+12>>2]=2139062143;i=e+i|0;Xi[e>>2]=2139062143;Xi[e+4>>2]=2139062143;Xi[e+8>>2]=2139062143;Xi[e+12>>2]=2139062143;Xi[i>>2]=2139062143;Xi[i+4>>2]=2139062143;Xi[i+8>>2]=2139062143;Xi[i+12>>2]=2139062143;return}function Ol(e,i){e=e|0;i=i|0;var r=0;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;r=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;e=r+i|0;Xi[r>>2]=-2122219135;Xi[r+4>>2]=-2122219135;Xi[r+8>>2]=-2122219135;Xi[r+12>>2]=-2122219135;i=e+i|0;Xi[e>>2]=-2122219135;Xi[e+4>>2]=-2122219135;Xi[e+8>>2]=-2122219135;Xi[e+12>>2]=-2122219135;Xi[i>>2]=-2122219135;Xi[i+4>>2]=-2122219135;Xi[i+8>>2]=-2122219135;Xi[i+12>>2]=-2122219135;return}function Al(e,i){e=e|0;i=i|0;PB(e,i,0,0);return}function gl(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;f=0;do{r=(qi[e+((Zi(f,i)|0)+-1)>>0]|0)+r|0;f=f+1|0}while((f|0)!=16);f=Zi(r+8>>4,16843009)|0;l=0;r=e;while(1){Xi[r>>2]=f;Xi[r+4>>2]=f;Xi[r+8>>2]=f;Xi[r+12>>2]=f;l=l+1|0;if((l|0)==16)break;else r=r+i|0}return}function Ml(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;f=0;do{r=(qi[e+(f-i)>>0]|0)+r|0;f=f+1|0}while((f|0)!=16);f=Zi(r+8>>4,16843009)|0;l=0;r=e;while(1){Xi[r>>2]=f;Xi[r+4>>2]=f;Xi[r+8>>2]=f;Xi[r+12>>2]=f;l=l+1|0;if((l|0)==16)break;else r=r+i|0}return}function Rl(e,i){e=e|0;i=i|0;var r=0;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;r=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;e=r+i|0;Xi[r>>2]=-2139062144;Xi[r+4>>2]=-2139062144;Xi[r+8>>2]=-2139062144;Xi[r+12>>2]=-2139062144;i=e+i|0;Xi[e>>2]=-2139062144;Xi[e+4>>2]=-2139062144;Xi[e+8>>2]=-2139062144;Xi[e+12>>2]=-2139062144;Xi[i>>2]=-2139062144;Xi[i+4>>2]=-2139062144;Xi[i+8>>2]=-2139062144;Xi[i+12>>2]=-2139062144;return}function Tl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=r<<1;l=r*3|0;a=r<<2;n=i;t=0;e=e+(0-r)|0;while(1){o=(Ji[n>>1]|0)+(qi[e>>0]|0)|0;Wi[e+r>>0]=o;o=o+(Ji[n+8>>1]|0)|0;Wi[e+f>>0]=o;o=o+(Ji[n+16>>1]|0)|0;Wi[e+l>>0]=o;Wi[e+a>>0]=o+(Ji[n+24>>1]|0);t=t+1|0;if((t|0)==4)break;else{n=n+2|0;e=e+1|0}}e=i+32|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function Nl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=i;l=0;while(1){a=(Ji[f>>1]|0)+(qi[e+-1>>0]|0)|0;Wi[e>>0]=a;a=a+(Ji[f+2>>1]|0)|0;Wi[e+1>>0]=a;a=a+(Ji[f+4>>1]|0)|0;Wi[e+2>>0]=a;Wi[e+3>>0]=a+(Ji[f+6>>1]|0);l=l+1|0;if((l|0)==4)break;else{f=f+8|0;e=e+r|0}}e=i+32|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function Dl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=r<<1;l=r*3|0;a=r<<2;n=r*5|0;t=r*6|0;o=r*7|0;s=r<<3;u=i;h=0;e=e+(0-r)|0;while(1){w=(Ji[u>>1]|0)+(qi[e>>0]|0)|0;Wi[e+r>>0]=w;w=w+(Ji[u+16>>1]|0)|0;Wi[e+f>>0]=w;w=w+(Ji[u+32>>1]|0)|0;Wi[e+l>>0]=w;w=w+(Ji[u+48>>1]|0)|0;Wi[e+a>>0]=w;w=w+(Ji[u+64>>1]|0)|0;Wi[e+n>>0]=w;w=w+(Ji[u+80>>1]|0)|0;Wi[e+t>>0]=w;w=w+(Ji[u+96>>1]|0)|0;Wi[e+o>>0]=w;Wi[e+s>>0]=w+(Ji[u+112>>1]|0);h=h+1|0;if((h|0)==8)break;else{u=u+2|0;e=e+1|0}}e=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function Cl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=i;l=0;while(1){a=(Ji[f>>1]|0)+(qi[e+-1>>0]|0)|0;Wi[e>>0]=a;a=a+(Ji[f+2>>1]|0)|0;Wi[e+1>>0]=a;a=a+(Ji[f+4>>1]|0)|0;Wi[e+2>>0]=a;a=a+(Ji[f+6>>1]|0)|0;Wi[e+3>>0]=a;a=a+(Ji[f+8>>1]|0)|0;Wi[e+4>>0]=a;a=a+(Ji[f+10>>1]|0)|0;Wi[e+5>>0]=a;a=a+(Ji[f+12>>1]|0)|0;Wi[e+6>>0]=a;Wi[e+7>>0]=a+(Ji[f+14>>1]|0);l=l+1|0;if((l|0)==8)break;else{f=f+16|0;e=e+r|0}}e=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function Pl(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;c=d;n=0-l|0;k=qi[e+n>>0]|0;t=qi[e+(1-l)>>0]|0;o=qi[e+(2-l)>>0]|0;s=qi[e+(3-l)>>0]|0;u=qi[e+(4-l)>>0]|0;h=qi[e+(5-l)>>0]|0;w=qi[e+(6-l)>>0]|0;a=Wi[e+(7-l)>>0]|0;b=a&255;if(f)a=Wi[e+(8-l)>>0]|0;n=((qi[e+((r|0)==0?n:~l)>>0]|0)+2+(k<<1)+t|0)>>>2&255;Wi[c>>0]=n;Wi[c+1>>0]=(k+2+(t<<1)+o|0)>>>2;Wi[c+2>>0]=(t+2+(o<<1)+s|0)>>>2;Wi[c+3>>0]=(o+2+(s<<1)+u|0)>>>2;Wi[c+4>>0]=(s+2+(u<<1)+h|0)>>>2;Wi[c+5>>0]=(u+2+(h<<1)+w|0)>>>2;Wi[c+6>>0]=(h+2+(w<<1)+b|0)>>>2;Wi[c+7>>0]=((a&255)+2+(b<<1)+w|0)>>>2;t=l<<1;o=l*3|0;s=l<<2;u=l*5|0;h=l*6|0;f=l*7|0;w=i;a=0;while(1){r=(Ji[w>>1]|0)+(n&255)|0;Wi[e>>0]=r;r=r+(Ji[w+16>>1]|0)|0;Wi[e+l>>0]=r;r=r+(Ji[w+32>>1]|0)|0;Wi[e+t>>0]=r;r=r+(Ji[w+48>>1]|0)|0;Wi[e+o>>0]=r;r=r+(Ji[w+64>>1]|0)|0;Wi[e+s>>0]=r;r=r+(Ji[w+80>>1]|0)|0;Wi[e+u>>0]=r;r=r+(Ji[w+96>>1]|0)|0;Wi[e+h>>0]=r;Wi[e+f>>0]=r+(Ji[w+112>>1]|0);a=a+1|0;if((a|0)==8)break;n=Wi[c+a>>0]|0;w=w+2|0;e=e+1|0}a=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(a|0));Ue=d;return}function Ll(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=Ue;Ue=Ue+16|0;t=o;a=e+-1|0;b=qi[a>>0]|0;k=qi[e+(l+-1)>>0]|0;w=qi[e+((l<<1)+-1)>>0]|0;h=qi[e+((l*3|0)+-1)>>0]|0;u=qi[e+((l<<2)+-1)>>0]|0;s=qi[e+((l*5|0)+-1)>>0]|0;f=qi[e+((l*6|0)+-1)>>0]|0;n=qi[e+((l*7|0)+-1)>>0]|0;a=((qi[((r|0)==0?a:e+~l|0)>>0]|0)+2+(b<<1)+k|0)>>>2&255;Wi[t>>0]=a;Wi[t+1>>0]=(b+2+(k<<1)+w|0)>>>2;Wi[t+2>>0]=(k+2+(w<<1)+h|0)>>>2;Wi[t+3>>0]=(w+2+(h<<1)+u|0)>>>2;Wi[t+4>>0]=(h+2+(u<<1)+s|0)>>>2;Wi[t+5>>0]=(u+2+(s<<1)+f|0)>>>2;Wi[t+6>>0]=(s+2+(f<<1)+n|0)>>>2;Wi[t+7>>0]=(f+2+(n*3|0)|0)>>>2;n=i;f=0;r=e;while(1){b=(Ji[n>>1]|0)+(a&255)|0;Wi[r>>0]=b;b=b+(Ji[n+2>>1]|0)|0;Wi[r+1>>0]=b;b=b+(Ji[n+4>>1]|0)|0;Wi[r+2>>0]=b;b=b+(Ji[n+6>>1]|0)|0;Wi[r+3>>0]=b;b=b+(Ji[n+8>>1]|0)|0;Wi[r+4>>0]=b;b=b+(Ji[n+10>>1]|0)|0;Wi[r+5>>0]=b;b=b+(Ji[n+12>>1]|0)|0;Wi[r+6>>0]=b;Wi[r+7>>0]=b+(Ji[n+14>>1]|0);f=f+1|0;if((f|0)==8)break;a=Wi[t+f>>0]|0;n=n+16|0;r=r+l|0}f=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(f|0));Ue=o;return}function Il(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Tl(e+(Xi[i>>2]|0)|0,r,f);Tl(e+(Xi[i+4>>2]|0)|0,r+32|0,f);Tl(e+(Xi[i+8>>2]|0)|0,r+64|0,f);Tl(e+(Xi[i+12>>2]|0)|0,r+96|0,f);return}function Hl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Tl(e+(Xi[i>>2]|0)|0,r,f);Tl(e+(Xi[i+4>>2]|0)|0,r+32|0,f);Tl(e+(Xi[i+8>>2]|0)|0,r+64|0,f);Tl(e+(Xi[i+12>>2]|0)|0,r+96|0,f);Tl(e+(Xi[i+32>>2]|0)|0,r+128|0,f);Tl(e+(Xi[i+36>>2]|0)|0,r+160|0,f);Tl(e+(Xi[i+40>>2]|0)|0,r+192|0,f);Tl(e+(Xi[i+44>>2]|0)|0,r+224|0,f);return}function Bl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Nl(e+(Xi[i>>2]|0)|0,r,f);Nl(e+(Xi[i+4>>2]|0)|0,r+32|0,f);Nl(e+(Xi[i+8>>2]|0)|0,r+64|0,f);Nl(e+(Xi[i+12>>2]|0)|0,r+96|0,f);return}function Ul(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;Nl(e+(Xi[i>>2]|0)|0,r,f);Nl(e+(Xi[i+4>>2]|0)|0,r+32|0,f);Nl(e+(Xi[i+8>>2]|0)|0,r+64|0,f);Nl(e+(Xi[i+12>>2]|0)|0,r+96|0,f);Nl(e+(Xi[i+32>>2]|0)|0,r+128|0,f);Nl(e+(Xi[i+36>>2]|0)|0,r+160|0,f);Nl(e+(Xi[i+40>>2]|0)|0,r+192|0,f);Nl(e+(Xi[i+44>>2]|0)|0,r+224|0,f);return}function xl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{Tl(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<4<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function zl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{Nl(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<4<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function Vl(e,i){e=e|0;i=i|0;switch(i|0){case 9:{Xi[e>>2]=245;Xi[e+4>>2]=246;Xi[e+8>>2]=247;Xi[e+12>>2]=248;Xi[e+16>>2]=249;Xi[e+20>>2]=250;Xi[e+24>>2]=251;Xi[e+28>>2]=252;Xi[e+32>>2]=253;Xi[e+36>>2]=254;Xi[e+40>>2]=255;Xi[e+44>>2]=256;Xi[e+48>>2]=257;Xi[e+52>>2]=258;Xi[e+56>>2]=259;Xi[e+60>>2]=260;Xi[e+64>>2]=261;Xi[e+68>>2]=262;Xi[e+72>>2]=263;Xi[e+76>>2]=264;Xi[e+80>>2]=265;Xi[e+84>>2]=266;Xi[e+88>>2]=267;Xi[e+92>>2]=268;Xi[e+96>>2]=269;Xi[e+100>>2]=270;Xi[e+104>>2]=271;Xi[e+108>>2]=272;Xi[e+112>>2]=273;Xi[e+116>>2]=274;Xi[e+120>>2]=275;Xi[e+124>>2]=276;Xi[e+128>>2]=277;Xi[e+132>>2]=278;Xi[e+136>>2]=279;Xi[e+140>>2]=280;Xi[e+144>>2]=281;Xi[e+148>>2]=282;Xi[e+152>>2]=283;Xi[e+156>>2]=284;Xi[e+160>>2]=285;Xi[e+164>>2]=286;Xi[e+168>>2]=287;Xi[e+172>>2]=288;Xi[e+176>>2]=289;Xi[e+180>>2]=290;Xi[e+184>>2]=291;Xi[e+188>>2]=292;Xi[e+192>>2]=293;Xi[e+196>>2]=294;Xi[e+200>>2]=295;Xi[e+204>>2]=296;Xi[e+208>>2]=297;Xi[e+212>>2]=298;Xi[e+216>>2]=299;Xi[e+220>>2]=300;Xi[e+224>>2]=301;Xi[e+228>>2]=302;Xi[e+232>>2]=303;Xi[e+236>>2]=304;Xi[e+240>>2]=305;Xi[e+244>>2]=306;Xi[e+248>>2]=307;Xi[e+252>>2]=308;Xi[e+256>>2]=309;Xi[e+260>>2]=310;Xi[e+264>>2]=311;Xi[e+268>>2]=312;Xi[e+272>>2]=313;Xi[e+276>>2]=314;Xi[e+280>>2]=315;Xi[e+284>>2]=316;Xi[e+288>>2]=317;Xi[e+292>>2]=318;Xi[e+296>>2]=319;Xi[e+300>>2]=320;Xi[e+304>>2]=321;Xi[e+308>>2]=322;Xi[e+312>>2]=323;Xi[e+316>>2]=324;Xi[e+320>>2]=325;Xi[e+324>>2]=326;Xi[e+328>>2]=327;Xi[e+332>>2]=328;Xi[e+336>>2]=329;Xi[e+340>>2]=330;Xi[e+344>>2]=331;Xi[e+348>>2]=332;Xi[e+352>>2]=333;Xi[e+356>>2]=334;Xi[e+360>>2]=335;Xi[e+364>>2]=336;Xi[e+368>>2]=337;Xi[e+372>>2]=338;Xi[e+376>>2]=339;Xi[e+380>>2]=340;Xi[e+384>>2]=341;Xi[e+388>>2]=342;Xi[e+392>>2]=343;Xi[e+396>>2]=344;Xi[e+400>>2]=345;Xi[e+404>>2]=346;Xi[e+408>>2]=347;Xi[e+412>>2]=348;Xi[e+416>>2]=349;Xi[e+420>>2]=350;Xi[e+424>>2]=351;Xi[e+428>>2]=352;Xi[e+432>>2]=353;Xi[e+436>>2]=354;Xi[e+440>>2]=355;Xi[e+444>>2]=356;break}case 10:{Xi[e>>2]=357;Xi[e+4>>2]=358;Xi[e+8>>2]=359;Xi[e+12>>2]=360;Xi[e+16>>2]=361;Xi[e+20>>2]=362;Xi[e+24>>2]=363;Xi[e+28>>2]=364;Xi[e+32>>2]=365;Xi[e+36>>2]=366;Xi[e+40>>2]=367;Xi[e+44>>2]=368;Xi[e+48>>2]=369;Xi[e+52>>2]=370;Xi[e+56>>2]=371;Xi[e+60>>2]=372;Xi[e+64>>2]=373;Xi[e+68>>2]=374;Xi[e+72>>2]=375;Xi[e+76>>2]=376;Xi[e+80>>2]=377;Xi[e+84>>2]=378;Xi[e+88>>2]=379;Xi[e+92>>2]=380;Xi[e+96>>2]=381;Xi[e+100>>2]=382;Xi[e+104>>2]=383;Xi[e+108>>2]=384;Xi[e+112>>2]=385;Xi[e+116>>2]=386;Xi[e+120>>2]=387;Xi[e+124>>2]=388;Xi[e+128>>2]=389;Xi[e+132>>2]=390;Xi[e+136>>2]=391;Xi[e+140>>2]=392;Xi[e+144>>2]=393;Xi[e+148>>2]=394;Xi[e+152>>2]=395;Xi[e+156>>2]=396;Xi[e+160>>2]=397;Xi[e+164>>2]=398;Xi[e+168>>2]=399;Xi[e+172>>2]=400;Xi[e+176>>2]=401;Xi[e+180>>2]=402;Xi[e+184>>2]=403;Xi[e+188>>2]=404;Xi[e+192>>2]=405;Xi[e+196>>2]=406;Xi[e+200>>2]=407;Xi[e+204>>2]=408;Xi[e+208>>2]=409;Xi[e+212>>2]=410;Xi[e+216>>2]=411;Xi[e+220>>2]=412;Xi[e+224>>2]=413;Xi[e+228>>2]=414;Xi[e+232>>2]=415;Xi[e+236>>2]=416;Xi[e+240>>2]=417;Xi[e+244>>2]=418;Xi[e+248>>2]=419;Xi[e+252>>2]=420;Xi[e+256>>2]=421;Xi[e+260>>2]=422;Xi[e+264>>2]=423;Xi[e+268>>2]=424;Xi[e+272>>2]=425;Xi[e+276>>2]=426;Xi[e+280>>2]=427;Xi[e+284>>2]=428;Xi[e+288>>2]=429;Xi[e+292>>2]=430;Xi[e+296>>2]=431;Xi[e+300>>2]=432;Xi[e+304>>2]=433;Xi[e+308>>2]=434;Xi[e+312>>2]=435;Xi[e+316>>2]=436;Xi[e+320>>2]=437;Xi[e+324>>2]=438;Xi[e+328>>2]=439;Xi[e+332>>2]=440;Xi[e+336>>2]=441;Xi[e+340>>2]=442;Xi[e+344>>2]=443;Xi[e+348>>2]=444;Xi[e+352>>2]=445;Xi[e+356>>2]=446;Xi[e+360>>2]=447;Xi[e+364>>2]=448;Xi[e+368>>2]=449;Xi[e+372>>2]=450;Xi[e+376>>2]=451;Xi[e+380>>2]=452;Xi[e+384>>2]=453;Xi[e+388>>2]=454;Xi[e+392>>2]=455;Xi[e+396>>2]=456;Xi[e+400>>2]=457;Xi[e+404>>2]=458;Xi[e+408>>2]=459;Xi[e+412>>2]=460;Xi[e+416>>2]=461;Xi[e+420>>2]=462;Xi[e+424>>2]=463;Xi[e+428>>2]=464;Xi[e+432>>2]=465;Xi[e+436>>2]=466;Xi[e+440>>2]=467;Xi[e+444>>2]=468;break}case 12:{Xi[e>>2]=469;Xi[e+4>>2]=470;Xi[e+8>>2]=471;Xi[e+12>>2]=472;Xi[e+16>>2]=473;Xi[e+20>>2]=474;Xi[e+24>>2]=475;Xi[e+28>>2]=476;Xi[e+32>>2]=477;Xi[e+36>>2]=478;Xi[e+40>>2]=479;Xi[e+44>>2]=480;Xi[e+48>>2]=481;Xi[e+52>>2]=482;Xi[e+56>>2]=483;Xi[e+60>>2]=484;Xi[e+64>>2]=485;Xi[e+68>>2]=486;Xi[e+72>>2]=487;Xi[e+76>>2]=488;Xi[e+80>>2]=489;Xi[e+84>>2]=490;Xi[e+88>>2]=491;Xi[e+92>>2]=492;Xi[e+96>>2]=493;Xi[e+100>>2]=494;Xi[e+104>>2]=495;Xi[e+108>>2]=496;Xi[e+112>>2]=497;Xi[e+116>>2]=498;Xi[e+120>>2]=499;Xi[e+124>>2]=500;Xi[e+128>>2]=501;Xi[e+132>>2]=502;Xi[e+136>>2]=503;Xi[e+140>>2]=504;Xi[e+144>>2]=505;Xi[e+148>>2]=506;Xi[e+152>>2]=507;Xi[e+156>>2]=508;Xi[e+160>>2]=509;Xi[e+164>>2]=510;Xi[e+168>>2]=511;Xi[e+172>>2]=512;Xi[e+176>>2]=513;Xi[e+180>>2]=514;Xi[e+184>>2]=515;Xi[e+188>>2]=516;Xi[e+192>>2]=517;Xi[e+196>>2]=518;Xi[e+200>>2]=519;Xi[e+204>>2]=520;Xi[e+208>>2]=521;Xi[e+212>>2]=522;Xi[e+216>>2]=523;Xi[e+220>>2]=524;Xi[e+224>>2]=525;Xi[e+228>>2]=526;Xi[e+232>>2]=527;Xi[e+236>>2]=528;Xi[e+240>>2]=529;Xi[e+244>>2]=530;Xi[e+248>>2]=531;Xi[e+252>>2]=532;Xi[e+256>>2]=533;Xi[e+260>>2]=534;Xi[e+264>>2]=535;Xi[e+268>>2]=536;Xi[e+272>>2]=537;Xi[e+276>>2]=538;Xi[e+280>>2]=539;Xi[e+284>>2]=540;Xi[e+288>>2]=541;Xi[e+292>>2]=542;Xi[e+296>>2]=543;Xi[e+300>>2]=544;Xi[e+304>>2]=545;Xi[e+308>>2]=546;Xi[e+312>>2]=547;Xi[e+316>>2]=548;Xi[e+320>>2]=549;Xi[e+324>>2]=550;Xi[e+328>>2]=551;Xi[e+332>>2]=552;Xi[e+336>>2]=553;Xi[e+340>>2]=554;Xi[e+344>>2]=555;Xi[e+348>>2]=556;Xi[e+352>>2]=557;Xi[e+356>>2]=558;Xi[e+360>>2]=559;Xi[e+364>>2]=560;Xi[e+368>>2]=561;Xi[e+372>>2]=562;Xi[e+376>>2]=563;Xi[e+380>>2]=564;Xi[e+384>>2]=565;Xi[e+388>>2]=566;Xi[e+392>>2]=567;Xi[e+396>>2]=568;Xi[e+400>>2]=569;Xi[e+404>>2]=570;Xi[e+408>>2]=571;Xi[e+412>>2]=572;Xi[e+416>>2]=573;Xi[e+420>>2]=574;Xi[e+424>>2]=575;Xi[e+428>>2]=576;Xi[e+432>>2]=577;Xi[e+436>>2]=578;Xi[e+440>>2]=579;Xi[e+444>>2]=580;break}case 14:{Xi[e>>2]=581;Xi[e+4>>2]=582;Xi[e+8>>2]=583;Xi[e+12>>2]=584;Xi[e+16>>2]=585;Xi[e+20>>2]=586;Xi[e+24>>2]=587;Xi[e+28>>2]=588;Xi[e+32>>2]=589;Xi[e+36>>2]=590;Xi[e+40>>2]=591;Xi[e+44>>2]=592;Xi[e+48>>2]=593;Xi[e+52>>2]=594;Xi[e+56>>2]=595;Xi[e+60>>2]=596;Xi[e+64>>2]=597;Xi[e+68>>2]=598;Xi[e+72>>2]=599;Xi[e+76>>2]=600;Xi[e+80>>2]=601;Xi[e+84>>2]=602;Xi[e+88>>2]=603;Xi[e+92>>2]=604;Xi[e+96>>2]=605;Xi[e+100>>2]=606;Xi[e+104>>2]=607;Xi[e+108>>2]=608;Xi[e+112>>2]=609;Xi[e+116>>2]=610;Xi[e+120>>2]=611;Xi[e+124>>2]=612;Xi[e+128>>2]=613;Xi[e+132>>2]=614;Xi[e+136>>2]=615;Xi[e+140>>2]=616;Xi[e+144>>2]=617;Xi[e+148>>2]=618;Xi[e+152>>2]=619;Xi[e+156>>2]=620;Xi[e+160>>2]=621;Xi[e+164>>2]=622;Xi[e+168>>2]=623;Xi[e+172>>2]=624;Xi[e+176>>2]=625;Xi[e+180>>2]=626;Xi[e+184>>2]=627;Xi[e+188>>2]=628;Xi[e+192>>2]=629;Xi[e+196>>2]=630;Xi[e+200>>2]=631;Xi[e+204>>2]=632;Xi[e+208>>2]=633;Xi[e+212>>2]=634;Xi[e+216>>2]=635;Xi[e+220>>2]=636;Xi[e+224>>2]=637;Xi[e+228>>2]=638;Xi[e+232>>2]=639;Xi[e+236>>2]=640;Xi[e+240>>2]=641;Xi[e+244>>2]=642;Xi[e+248>>2]=643;Xi[e+252>>2]=644;Xi[e+256>>2]=645;Xi[e+260>>2]=646;Xi[e+264>>2]=647;Xi[e+268>>2]=648;Xi[e+272>>2]=649;Xi[e+276>>2]=650;Xi[e+280>>2]=651;Xi[e+284>>2]=652;Xi[e+288>>2]=653;Xi[e+292>>2]=654;Xi[e+296>>2]=655;Xi[e+300>>2]=656;Xi[e+304>>2]=657;Xi[e+308>>2]=658;Xi[e+312>>2]=659;Xi[e+316>>2]=660;Xi[e+320>>2]=661;Xi[e+324>>2]=662;Xi[e+328>>2]=663;Xi[e+332>>2]=664;Xi[e+336>>2]=665;Xi[e+340>>2]=666;Xi[e+344>>2]=667;Xi[e+348>>2]=668;Xi[e+352>>2]=669;Xi[e+356>>2]=670;Xi[e+360>>2]=671;Xi[e+364>>2]=672;Xi[e+368>>2]=673;Xi[e+372>>2]=674;Xi[e+376>>2]=675;Xi[e+380>>2]=676;Xi[e+384>>2]=677;Xi[e+388>>2]=678;Xi[e+392>>2]=679;Xi[e+396>>2]=680;Xi[e+400>>2]=681;Xi[e+404>>2]=682;Xi[e+408>>2]=683;Xi[e+412>>2]=684;Xi[e+416>>2]=685;Xi[e+420>>2]=686;Xi[e+424>>2]=687;Xi[e+428>>2]=688;Xi[e+432>>2]=689;Xi[e+436>>2]=690;Xi[e+440>>2]=691;Xi[e+444>>2]=692;break}default:{Xi[e>>2]=133;Xi[e+4>>2]=134;Xi[e+8>>2]=135;Xi[e+12>>2]=136;Xi[e+16>>2]=137;Xi[e+20>>2]=138;Xi[e+24>>2]=139;Xi[e+28>>2]=140;Xi[e+32>>2]=141;Xi[e+36>>2]=142;Xi[e+40>>2]=143;Xi[e+44>>2]=144;Xi[e+48>>2]=145;Xi[e+52>>2]=146;Xi[e+56>>2]=147;Xi[e+60>>2]=148;Xi[e+64>>2]=149;Xi[e+68>>2]=150;Xi[e+72>>2]=151;Xi[e+76>>2]=152;Xi[e+80>>2]=153;Xi[e+84>>2]=154;Xi[e+88>>2]=155;Xi[e+92>>2]=156;Xi[e+96>>2]=157;Xi[e+100>>2]=158;Xi[e+104>>2]=159;Xi[e+108>>2]=160;Xi[e+112>>2]=161;Xi[e+116>>2]=162;Xi[e+120>>2]=163;Xi[e+124>>2]=164;Xi[e+128>>2]=165;Xi[e+132>>2]=166;Xi[e+136>>2]=167;Xi[e+140>>2]=168;Xi[e+144>>2]=169;Xi[e+148>>2]=170;Xi[e+152>>2]=171;Xi[e+156>>2]=172;Xi[e+160>>2]=173;Xi[e+164>>2]=174;Xi[e+168>>2]=175;Xi[e+172>>2]=176;Xi[e+176>>2]=177;Xi[e+180>>2]=178;Xi[e+184>>2]=179;Xi[e+188>>2]=180;Xi[e+192>>2]=181;Xi[e+196>>2]=182;Xi[e+200>>2]=183;Xi[e+204>>2]=184;Xi[e+208>>2]=185;Xi[e+212>>2]=186;Xi[e+216>>2]=187;Xi[e+220>>2]=188;Xi[e+224>>2]=189;Xi[e+228>>2]=190;Xi[e+232>>2]=191;Xi[e+236>>2]=192;Xi[e+240>>2]=193;Xi[e+244>>2]=194;Xi[e+248>>2]=195;Xi[e+252>>2]=196;Xi[e+256>>2]=197;Xi[e+260>>2]=198;Xi[e+264>>2]=199;Xi[e+268>>2]=200;Xi[e+272>>2]=201;Xi[e+276>>2]=202;Xi[e+280>>2]=203;Xi[e+284>>2]=204;Xi[e+288>>2]=205;Xi[e+292>>2]=206;Xi[e+296>>2]=207;Xi[e+300>>2]=208;Xi[e+304>>2]=209;Xi[e+308>>2]=210;Xi[e+312>>2]=211;Xi[e+316>>2]=212;Xi[e+320>>2]=213;Xi[e+324>>2]=214;Xi[e+328>>2]=215;Xi[e+332>>2]=216;Xi[e+336>>2]=217;Xi[e+340>>2]=218;Xi[e+344>>2]=219;Xi[e+348>>2]=220;Xi[e+352>>2]=221;Xi[e+356>>2]=222;Xi[e+360>>2]=223;Xi[e+364>>2]=224;Xi[e+368>>2]=225;Xi[e+372>>2]=226;Xi[e+376>>2]=227;Xi[e+380>>2]=228;Xi[e+384>>2]=229;Xi[e+388>>2]=230;Xi[e+392>>2]=231;Xi[e+396>>2]=232;Xi[e+400>>2]=233;Xi[e+404>>2]=234;Xi[e+408>>2]=235;Xi[e+412>>2]=236;Xi[e+416>>2]=237;Xi[e+420>>2]=238;Xi[e+424>>2]=239;Xi[e+428>>2]=240;Xi[e+432>>2]=241;Xi[e+436>>2]=242;Xi[e+440>>2]=243;Xi[e+444>>2]=244}}return}function Yl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=i;l=e;a=0;while(1){Xi[l>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;n=f+4|0;Xi[l+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+8|0;f=e+8|0;l=0;while(1){Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;n=a+4|0;Xi[f+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function jl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+256|0;l=a;Kl(l,i,16,r);f=0;do{n=Zi(f,r)|0;t=i+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f<<4;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);n=n+4|0;t=i+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+(o|4)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+n>>2]=(o|t)-((o^t)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{s=Zi(f,r)|0;o=s+8|0;n=i+o|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f<<4;u=l+(t|8)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[e+o>>2]=(u|n)-((u^n)>>>1&2139062143);s=s+12|0;o=i+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+(t|12)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+s>>2]=(t|o)-((t^o)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=a;return}function Kl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;Wl(e,i,r,f);Wl(e+8|0,i+8|0,r,f);l=f<<3;a=r<<3;Wl(e+a|0,i+l|0,r,f);Wl(e+(a+8)|0,i+(l+8)|0,r,f);return}function Wl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=0;while(1){t=i+1|0;n=i+-1|0;o=i+2|0;u=Zi((qi[o>>0]|0)+(qi[n>>0]|0)|0,-5)|0;s=i+3|0;u=(((qi[t>>0]|0)+(qi[i>>0]|0)|0)*20|0)+16+(qi[i+-2>>0]|0)+u+(qi[s>>0]|0)>>5;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[s>>0]|0)+(qi[i>>0]|0)|0,-5)|0;h=i+4|0;u=(((qi[o>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[n>>0]|0)+u+(qi[h>>0]|0)>>5;Wi[e+1>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[h>>0]|0)+(qi[t>>0]|0)|0,-5)|0;n=i+5|0;u=(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+16+(qi[i>>0]|0)+u+(qi[n>>0]|0)>>5;Wi[e+2>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[n>>0]|0)+(qi[o>>0]|0)|0,-5)|0;a=i+6|0;u=(((qi[h>>0]|0)+(qi[s>>0]|0)|0)*20|0)+16+(qi[t>>0]|0)+u+(qi[a>>0]|0)>>5;Wi[e+3>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[a>>0]|0)+(qi[s>>0]|0)|0,-5)|0;t=i+7|0;u=(((qi[n>>0]|0)+(qi[h>>0]|0)|0)*20|0)+16+(qi[o>>0]|0)+u+(qi[t>>0]|0)>>5;Wi[e+4>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[t>>0]|0)+(qi[h>>0]|0)|0,-5)|0;o=i+8|0;u=(((qi[a>>0]|0)+(qi[n>>0]|0)|0)*20|0)+16+(qi[s>>0]|0)+u+(qi[o>>0]|0)>>5;Wi[e+5>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[o>>0]|0)+(qi[n>>0]|0)|0,-5)|0;s=i+9|0;u=(((qi[t>>0]|0)+(qi[a>>0]|0)|0)*20|0)+16+(qi[h>>0]|0)+u+(qi[s>>0]|0)>>5;Wi[e+6>>0]=u>>>0>255?0-u>>31:u;a=Zi((qi[s>>0]|0)+(qi[a>>0]|0)|0,-5)|0;a=(((qi[o>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[n>>0]|0)+a+(qi[i+10>>0]|0)>>5;Wi[e+7>>0]=a>>>0>255?0-a>>31:a;l=l+1|0;if((l|0)==8)break;else{e=e+r|0;i=i+f|0}}return}function Gl(e,i,r){e=e|0;i=i|0;r=r|0;Kl(e,i,r,r);return}function Xl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+256|0;l=a;Kl(l,i,16,r);f=0;do{n=Zi(f,r)|0;t=i+(n+1)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f<<4;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);t=i+(n+5)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+(o|4)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{s=Zi(f,r)|0;o=i+(s+9)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<4;n=l+(t|8)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[e+(s+8)>>2]=(n|o)-((n^o)>>>1&2139062143);o=i+(s+13)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+(t|12)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(s+12)>>2]=(t|o)-((t^o)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=a;return}function ql(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Ue;Ue=Ue+592|0;a=t+256|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;o=i+8|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+8|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;s=i+12|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+12|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(n,a+32|0,16);i=0;do{l=i<<4;o=a+(l+32)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+s>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|4;o=a+(l+32)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+4)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{l=i<<4;f=l|8;o=a+(f+32)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+(s+8)>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|12;o=a+(l+32)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+12)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=t;return}function Jl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;Zl(e,i,r,16);Zl(e+8|0,i+8|0,r,16);f=r<<3;Zl(e+f|0,i+128|0,r,16);Zl(e+(f+8)|0,i+136|0,r,16);return}function Zl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;a=Zi(f,-2)|0;n=0-f|0;b=f<<1;c=f*3|0;d=f<<2;v=f*5|0;E=f*6|0;S=f*7|0;_=f<<3;m=f*9|0;t=f*10|0;o=r<<1;s=r*3|0;u=r<<2;h=r*5|0;w=r*6|0;k=r*7|0;l=0;while(1){C=qi[i+n>>0]|0;D=qi[i>>0]|0;N=qi[i+f>>0]|0;T=qi[i+b>>0]|0;R=qi[i+c>>0]|0;M=qi[i+d>>0]|0;g=qi[i+v>>0]|0;p=qi[i+E>>0]|0;y=qi[i+S>>0]|0;O=qi[i+_>>0]|0;F=qi[i+m>>0]|0;A=qi[i+t>>0]|0;P=(qi[i+a>>0]|0)+16+R+((N+D|0)*20|0)+(Zi(T+C|0,-5)|0)>>5;Wi[e>>0]=P>>>0>255?0-P>>31:P;C=C+16+M+((T+N|0)*20|0)+(Zi(R+D|0,-5)|0)>>5;Wi[e+r>>0]=C>>>0>255?0-C>>31:C;D=D+16+g+((R+T|0)*20|0)+(Zi(M+N|0,-5)|0)>>5;Wi[e+o>>0]=D>>>0>255?0-D>>31:D;N=N+16+p+((M+R|0)*20|0)+(Zi(g+T|0,-5)|0)>>5;Wi[e+s>>0]=N>>>0>255?0-N>>31:N;T=T+16+y+((g+M|0)*20|0)+(Zi(p+R|0,-5)|0)>>5;Wi[e+u>>0]=T>>>0>255?0-T>>31:T;R=R+16+O+((p+g|0)*20|0)+(Zi(y+M|0,-5)|0)>>5;Wi[e+h>>0]=R>>>0>255?0-R>>31:R;M=M+16+F+((y+p|0)*20|0)+(Zi(O+g|0,-5)|0)>>5;Wi[e+w>>0]=M>>>0>255?0-M>>31:M;p=g+16+A+((O+y|0)*20|0)+(Zi(F+p|0,-5)|0)>>5;Wi[e+k>>0]=p>>>0>255?0-p>>31:p;l=l+1|0;if((l|0)==8)break;else{e=e+1|0;i=i+1|0}}return}function Ql(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{a=i<<4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;l=a|8;s=n+l|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+(u+8)>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+12)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function $l(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+1184|0;f=a+928|0;l=a+672|0;Kl(f,i,16,r);ea(l,a,i,16,r);i=0;do{o=i<<4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=Zi(i,r)|0;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);o=o|4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{t=i<<4;n=t|8;o=f+n|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=l+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=Zi(i,r)|0;Xi[e+(s+8)>>2]=(n|o)-((n^o)>>>1&2139062143);t=t|12;o=f+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(s+12)>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=a;return}function ea(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;ia(e,i,r,f,16,l);n=i+16|0;ia(e+8|0,n,r+8|0,f,16,l);a=l<<3;t=f<<3;ia(e+t|0,i,r+a|0,f,16,l);ia(e+(t+8)|0,n,r+(a+8)|0,f,16,l);return}function ia(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;n=i;t=0;r=r+(0-(a<<1))|0;while(1){p=r+1|0;_=r+-1|0;m=r+2|0;E=Zi((qi[m>>0]|0)+(qi[_>>0]|0)|0,-5)|0;S=r+3|0;Gi[n>>1]=(qi[r+-2>>0]|0)+(((qi[p>>0]|0)+(qi[r>>0]|0)|0)*20|0)+E+(qi[S>>0]|0);E=Zi((qi[S>>0]|0)+(qi[r>>0]|0)|0,-5)|0;v=r+4|0;Gi[n+2>>1]=(qi[_>>0]|0)+(((qi[m>>0]|0)+(qi[p>>0]|0)|0)*20|0)+E+(qi[v>>0]|0);E=Zi((qi[v>>0]|0)+(qi[p>>0]|0)|0,-5)|0;_=r+5|0;Gi[n+4>>1]=(qi[r>>0]|0)+(((qi[S>>0]|0)+(qi[m>>0]|0)|0)*20|0)+E+(qi[_>>0]|0);E=Zi((qi[_>>0]|0)+(qi[m>>0]|0)|0,-5)|0;F=r+6|0;Gi[n+6>>1]=(qi[p>>0]|0)+(((qi[v>>0]|0)+(qi[S>>0]|0)|0)*20|0)+E+(qi[F>>0]|0);E=Zi((qi[F>>0]|0)+(qi[S>>0]|0)|0,-5)|0;p=r+7|0;Gi[n+8>>1]=(qi[m>>0]|0)+(((qi[_>>0]|0)+(qi[v>>0]|0)|0)*20|0)+E+(qi[p>>0]|0);E=Zi((qi[p>>0]|0)+(qi[v>>0]|0)|0,-5)|0;m=r+8|0;Gi[n+10>>1]=(qi[S>>0]|0)+(((qi[F>>0]|0)+(qi[_>>0]|0)|0)*20|0)+E+(qi[m>>0]|0);E=Zi((qi[m>>0]|0)+(qi[_>>0]|0)|0,-5)|0;S=r+9|0;Gi[n+12>>1]=(qi[v>>0]|0)+(((qi[p>>0]|0)+(qi[F>>0]|0)|0)*20|0)+E+(qi[S>>0]|0);F=Zi((qi[S>>0]|0)+(qi[F>>0]|0)|0,-5)|0;Gi[n+14>>1]=(qi[_>>0]|0)+(((qi[m>>0]|0)+(qi[p>>0]|0)|0)*20|0)+F+(qi[r+10>>0]|0);t=t+1|0;if((t|0)==13)break;else{n=n+(l<<1)|0;r=r+a|0}}a=Zi(l,-2)|0;o=0-l|0;s=l<<1;u=l*3|0;h=l<<2;w=l*5|0;k=l*6|0;b=l*7|0;c=l<<3;d=l*9|0;v=l*10|0;E=f<<1;S=f*3|0;_=f<<2;m=f*5|0;p=f*6|0;F=f*7|0;t=i+(l<<1<<1)|0;r=e;n=0;while(1){C=Gi[t+(o<<1)>>1]|0;D=Gi[t>>1]|0;N=Gi[t+(l<<1)>>1]|0;T=Gi[t+(s<<1)>>1]|0;R=Gi[t+(u<<1)>>1]|0;M=Gi[t+(h<<1)>>1]|0;g=Gi[t+(w<<1)>>1]|0;e=Gi[t+(k<<1)>>1]|0;y=Gi[t+(b<<1)>>1]|0;O=Gi[t+(c<<1)>>1]|0;i=Gi[t+(d<<1)>>1]|0;A=Gi[t+(v<<1)>>1]|0;P=(Gi[t+(a<<1)>>1]|0)+512+R+((N+D|0)*20|0)+(Zi(T+C|0,-5)|0)>>10;Wi[r>>0]=P>>>0>255?0-P>>31:P;C=C+512+M+((T+N|0)*20|0)+(Zi(R+D|0,-5)|0)>>10;Wi[r+f>>0]=C>>>0>255?0-C>>31:C;D=D+512+g+((R+T|0)*20|0)+(Zi(M+N|0,-5)|0)>>10;Wi[r+E>>0]=D>>>0>255?0-D>>31:D;N=N+512+e+((M+R|0)*20|0)+(Zi(g+T|0,-5)|0)>>10;Wi[r+S>>0]=N>>>0>255?0-N>>31:N;T=T+512+y+((g+M|0)*20|0)+(Zi(e+R|0,-5)|0)>>10;Wi[r+_>>0]=T>>>0>255?0-T>>31:T;R=R+512+O+((e+g|0)*20|0)+(Zi(y+M|0,-5)|0)>>10;Wi[r+m>>0]=R>>>0>255?0-R>>31:R;M=M+512+i+((y+e|0)*20|0)+(Zi(O+g|0,-5)|0)>>10;Wi[r+p>>0]=M>>>0>255?0-M>>31:M;e=g+512+A+((O+y|0)*20|0)+(Zi(i+e|0,-5)|0)>>10;Wi[r+F>>0]=e>>>0>255?0-e>>31:e;n=n+1|0;if((n|0)==8)break;else{t=t+2|0;r=r+1|0}}return}function ra(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i,16,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{a=i<<4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;l=a|8;s=n+l|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+(u+8)>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+12)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function fa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=Ue;Ue=Ue+336|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=o;Wi[f+1>>0]=o>>8;Wi[f+2>>0]=o>>16;Wi[f+3>>0]=o>>24;o=i+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;t=i+8|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;o=i+12|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+12|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(e,a+32|0,r);Ue=n;return}function la(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+1520|0;a=u+1184|0;t=u;s=u+928|0;o=u+672|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;h=f+8|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=l+8|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=f+12|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+12|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+16|0}}Jl(s,a+32|0,16);ea(o,t,i,16,r);f=0;do{t=f<<4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+t|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+w>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+4)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{t=f<<4;i=t|8;h=s+i|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+(w+8)>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|12;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+12)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=u;return}function aa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+672|0;ea(e,f,i,r,r);Ue=f;return}function na(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+1520|0;a=u+1184|0;t=u;s=u+928|0;o=u+672|0;f=i+(0-(r<<1)|1)|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;h=f+8|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=l+8|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=f+12|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+12|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+16|0}}Jl(s,a+32|0,16);ea(o,t,i,16,r);f=0;do{t=f<<4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+t|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+w>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+4)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{t=f<<4;i=t|8;h=s+i|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+(w+8)>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|12;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+12)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=u;return}function ta(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Ue;Ue=Ue+592|0;a=t+256|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;o=i+8|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+8|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;s=i+12|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+12|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(n,a+32|0,16);i=0;do{l=i<<4;o=a+(l+48)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+s>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|4;o=a+(l+48)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+4)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{l=i<<4;f=l|8;o=a+(f+48)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+(s+8)>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|12;o=a+(l+48)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+12)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=t;return}function oa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{a=i<<4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;l=a|8;s=n+l|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+(u+8)>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+12)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function sa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+1184|0;f=a+928|0;l=a+672|0;Kl(f,i+r|0,16,r);ea(l,a,i,16,r);i=0;do{o=i<<4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=Zi(i,r)|0;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);o=o|4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{t=i<<4;n=t|8;o=f+n|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=l+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=Zi(i,r)|0;Xi[e+(s+8)>>2]=(n|o)-((n^o)>>>1&2139062143);t=t|12;o=f+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(s+12)>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=a;return}function ua(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i+r|0,16,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{a=i<<4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;l=a|8;s=n+l|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+(u+8)>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+12)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function ha(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=0;while(1){Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=i+4|0;Xi[e+4>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function wa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+64|0;f=a;Wl(f,i,8,r);l=0;do{n=Zi(l,r)|0;t=i+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l<<3;s=f+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);n=n+4|0;t=i+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+(o|4)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=8);Ue=a;return}function ka(e,i,r){e=e|0;i=i|0;r=r|0;Wl(e,i,r,r);return}function ba(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+64|0;f=a;Wl(f,i,8,r);l=0;do{n=Zi(l,r)|0;t=i+(n+1)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l<<3;s=f+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);t=i+(n+5)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+(o|4)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=8);Ue=a;return}function ca(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Ue;Ue=Ue+176|0;a=t+64|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(n,a+16|0,8,8);i=0;do{l=i<<3;o=a+(l+16)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+s>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|4;o=a+(l+16)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+4)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=t;return}function da(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i,8,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{a=i<<3;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function va(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+336|0;f=a+272|0;l=a+208|0;Wl(f,i,8,r);ia(l,a,i,8,8,r);i=0;do{o=i<<3;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=Zi(i,r)|0;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);o=o|4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=a;return}function Ea(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i,8,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{a=i<<3;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Sa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=Ue;Ue=Ue+112|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=o;Wi[f+1>>0]=o>>8;Wi[f+2>>0]=o>>16;Wi[f+3>>0]=o>>24;o=i+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(e,a+16|0,r,8);Ue=n;return}function _a(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+448|0;a=u+336|0;t=u;s=u+272|0;o=u+208|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+8|0}}Zl(s,a+16|0,8,8);ia(o,t,i,8,8,r);f=0;do{t=f<<3;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+t|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+w>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+4)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=8);Ue=u;return}function ma(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+208|0;ia(e,f,i,r,8,r);Ue=f;return}function pa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+448|0;a=u+336|0;t=u;s=u+272|0;o=u+208|0;f=i+(0-(r<<1)|1)|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+8|0}}Zl(s,a+16|0,8,8);ia(o,t,i,8,8,r);f=0;do{t=f<<3;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;i=o+t|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=Zi(f,r)|0;Xi[e+w>>2]=(i|h)-((i^h)>>>1&2139062143);t=t|4;h=s+t|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=o+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(w+4)>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=8);Ue=u;return}function Fa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Ue;Ue=Ue+176|0;a=t+64|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(n,a+16|0,8,8);i=0;do{l=i<<3;o=a+(l+24)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=Zi(i,r)|0;Xi[e+s>>2]=(f|o)-((f^o)>>>1&2139062143);l=l|4;o=a+(l+24)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;l=n+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[e+(s+4)>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=t;return}function ya(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i+r|0,8,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{a=i<<3;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Oa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+336|0;f=a+272|0;l=a+208|0;Wl(f,i+r|0,8,r);ia(l,a,i,8,8,r);i=0;do{o=i<<3;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=Zi(i,r)|0;Xi[e+n>>2]=(s|t)-((s^t)>>>1&2139062143);o=o|4;t=f+o|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(n+4)>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=a;return}function Aa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i+r|0,8,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{a=i<<3;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=t+a|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=Zi(i,r)|0;Xi[e+u>>2]=(l|s)-((l^s)>>>1&2139062143);a=a|4;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[e+(u+4)>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function ga(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;f=i+r|0;Xi[e+r>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;f=r<<1;l=i+f|0;Xi[e+f>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;r=r*3|0;i=i+r|0;Xi[e+r>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;return}function Ma(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;a=Ue;Ue=Ue+16|0;f=a;Ra(f,i,4,r);l=0;do{n=Zi(l,r)|0;t=i+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+(l<<2)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=4);Ue=a;return}function Ra(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=0;while(1){n=i+1|0;s=i+-1|0;a=i+2|0;u=Zi((qi[a>>0]|0)+(qi[s>>0]|0)|0,-5)|0;t=i+3|0;u=(((qi[n>>0]|0)+(qi[i>>0]|0)|0)*20|0)+16+(qi[i+-2>>0]|0)+u+(qi[t>>0]|0)>>5;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[t>>0]|0)+(qi[i>>0]|0)|0,-5)|0;o=i+4|0;u=(((qi[a>>0]|0)+(qi[n>>0]|0)|0)*20|0)+16+(qi[s>>0]|0)+u+(qi[o>>0]|0)>>5;Wi[e+1>>0]=u>>>0>255?0-u>>31:u;u=Zi((qi[o>>0]|0)+(qi[n>>0]|0)|0,-5)|0;s=i+5|0;u=(((qi[t>>0]|0)+(qi[a>>0]|0)|0)*20|0)+16+(qi[i>>0]|0)+u+(qi[s>>0]|0)>>5;Wi[e+2>>0]=u>>>0>255?0-u>>31:u;a=Zi((qi[s>>0]|0)+(qi[a>>0]|0)|0,-5)|0;a=(((qi[o>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[n>>0]|0)+a+(qi[i+6>>0]|0)>>5;Wi[e+3>>0]=a>>>0>255?0-a>>31:a;l=l+1|0;if((l|0)==4)break;else{e=e+r|0;i=i+f|0}}return}function Ta(e,i,r){e=e|0;i=i|0;r=r|0;Ra(e,i,r,r);return}function Na(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;a=Ue;Ue=Ue+16|0;f=a;Ra(f,i,4,r);l=0;do{n=Zi(l,r)|0;t=i+(n+1)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+(l<<2)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=4);Ue=a;return}function Da(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;a=Ue;Ue=Ue+64|0;f=a;l=a+40|0;n=f+8|0;t=r<<1;o=i+(0-t)|0;Xi[f>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(0-r)|0;Xi[f+4>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;o=i+r|0;Xi[f+12>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=i+t|0;Xi[f+16>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*3|0)|0;Xi[f+20>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r<<2)|0;Xi[f+24>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*5|0)|0;Xi[f+28>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=i+(r*6|0)|0;Xi[f+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{t=i<<2;o=Xi[f+(t+8)>>2]|0;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Ca(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=r<<1;a=r*3|0;f=0;while(1){k=qi[i+-4>>0]|0;w=qi[i>>0]|0;h=qi[i+4>>0]|0;n=qi[i+8>>0]|0;o=qi[i+12>>0]|0;s=qi[i+16>>0]|0;t=qi[i+20>>0]|0;u=qi[i+24>>0]|0;b=(qi[i+-8>>0]|0)+16+o+((h+w|0)*20|0)+(Zi(n+k|0,-5)|0)>>5;Wi[e>>0]=b>>>0>255?0-b>>31:b;k=k+16+s+((n+h|0)*20|0)+(Zi(o+w|0,-5)|0)>>5;Wi[e+r>>0]=k>>>0>255?0-k>>31:k;w=w+16+t+((o+n|0)*20|0)+(Zi(s+h|0,-5)|0)>>5;Wi[e+l>>0]=w>>>0>255?0-w>>31:w;n=h+16+u+((s+o|0)*20|0)+(Zi(t+n|0,-5)|0)>>5;Wi[e+a>>0]=n>>>0>255?0-n>>31:n;f=f+1|0;if((f|0)==4)break;else{e=e+1|0;i=i+1|0}}return}function Pa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r*6|0)|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{o=i<<2;s=f+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function La(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=Ue;Ue=Ue+112|0;f=a+88|0;l=a+72|0;Ra(f,i,4,r);Ia(l,a,i,4,r);i=0;do{t=i<<2;n=f+t|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(t|n)-((t^n)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Ia(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=i;n=0;r=r+(0-(l<<1))|0;while(1){u=r+1|0;h=r+-1|0;t=r+2|0;w=Zi((qi[t>>0]|0)+(qi[h>>0]|0)|0,-5)|0;o=r+3|0;Gi[a>>1]=(qi[r+-2>>0]|0)+(((qi[u>>0]|0)+(qi[r>>0]|0)|0)*20|0)+w+(qi[o>>0]|0);w=Zi((qi[o>>0]|0)+(qi[r>>0]|0)|0,-5)|0;s=r+4|0;Gi[a+2>>1]=(qi[h>>0]|0)+(((qi[t>>0]|0)+(qi[u>>0]|0)|0)*20|0)+w+(qi[s>>0]|0);w=Zi((qi[s>>0]|0)+(qi[u>>0]|0)|0,-5)|0;h=r+5|0;Gi[a+4>>1]=(qi[r>>0]|0)+(((qi[o>>0]|0)+(qi[t>>0]|0)|0)*20|0)+w+(qi[h>>0]|0);t=Zi((qi[h>>0]|0)+(qi[t>>0]|0)|0,-5)|0;Gi[a+6>>1]=(qi[u>>0]|0)+(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+t+(qi[r+6>>0]|0);n=n+1|0;if((n|0)==9)break;else{a=a+8|0;r=r+l|0}}n=f<<1;l=f*3|0;a=i+16|0;r=0;while(1){k=Gi[a+-8>>1]|0;i=Gi[a>>1]|0;t=Gi[a+8>>1]|0;w=Gi[a+16>>1]|0;u=Gi[a+24>>1]|0;s=Gi[a+32>>1]|0;h=Gi[a+40>>1]|0;o=Gi[a+48>>1]|0;b=(Gi[a+-16>>1]|0)+512+u+((t+i|0)*20|0)+(Zi(w+k|0,-5)|0)>>10;Wi[e>>0]=b>>>0>255?0-b>>31:b;k=k+512+s+((w+t|0)*20|0)+(Zi(u+i|0,-5)|0)>>10;Wi[e+f>>0]=k>>>0>255?0-k>>31:k;i=i+512+h+((u+w|0)*20|0)+(Zi(s+t|0,-5)|0)>>10;Wi[e+n>>0]=i>>>0>255?0-i>>31:i;w=t+512+o+((s+u|0)*20|0)+(Zi(h+w|0,-5)|0)>>10;Wi[e+l>>0]=w>>>0>255?0-w>>31:w;r=r+1|0;if((r|0)==4)break;else{a=a+2|0;e=e+1|0}}return}function Ha(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i,4,r);s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{s=i<<2;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Ba(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+48|0;a=f;l=a+8|0;n=r<<1;t=i+(0-n)|0;Xi[a>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(0-r)|0;Xi[a+4>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[l>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=i+r|0;Xi[a+12>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=i+n|0;Xi[a+16>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*3|0)|0;Xi[a+20>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r<<2)|0;Xi[a+24>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*5|0)|0;Xi[a+28>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;i=i+(r*6|0)|0;Xi[a+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(e,l,r);Ue=f;return}function Ua(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+144|0;t=a;l=a+128|0;f=a+112|0;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*6|0)|0;Xi[t+32>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Ca(l,n,4);Ia(f,a+40|0,i,4,r);i=0;do{o=i<<2;s=l+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function xa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+80|0;Ia(e,f,i,r,r);Ue=f;return}function za(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+144|0;t=a;l=a+128|0;f=a+112|0;n=t+8|0;s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Ca(l,n,4);Ia(f,a+40|0,i,4,r);i=0;do{s=i<<2;u=l+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Va(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;a=Ue;Ue=Ue+64|0;f=a;l=a+40|0;n=f+8|0;t=r<<1;o=i+(0-t)|0;Xi[f>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(0-r)|0;Xi[f+4>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;o=i+r|0;Xi[f+12>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=i+t|0;Xi[f+16>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*3|0)|0;Xi[f+20>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r<<2)|0;Xi[f+24>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*5|0)|0;Xi[f+28>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=i+(r*6|0)|0;Xi[f+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{t=i<<2;o=Xi[f+(t+12)>>2]|0;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Ya(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;s=i+r|0;Ra(f,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r*6|0)|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{s=i<<2;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function ja(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=Ue;Ue=Ue+112|0;f=a+88|0;l=a+72|0;Ra(f,i+r|0,4,r);Ia(l,a,i,4,r);i=0;do{t=i<<2;n=f+t|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(t|n)-((t^n)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Ka(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i+r|0,4,r);s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{s=i<<2;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[e+(Zi(i,r)|0)>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Wa(e,i,r){e=e|0;i=i|0;r=r|0;Gi[e>>1]=qi[i>>0]|qi[i+1>>0]<<8;i=i+r|0;Gi[e+r>>1]=qi[i>>0]|qi[i+1>>0]<<8;return}function Ga(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Xa(l,i,2,r);a=qi[i>>0]|qi[i+1>>0]<<8;n=Gi[l>>1]|0;Gi[e>>1]=((n|a)&65535)-(((n^a)&65535)>>>1&32639);i=i+r|0;i=qi[i>>0]|qi[i+1>>0]<<8;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function Xa(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;l=0;while(1){t=i+1|0;n=i+-1|0;o=i+2|0;s=Zi((qi[o>>0]|0)+(qi[n>>0]|0)|0,-5)|0;a=i+3|0;s=(((qi[t>>0]|0)+(qi[i>>0]|0)|0)*20|0)+16+(qi[i+-2>>0]|0)+s+(qi[a>>0]|0)>>5;Wi[e>>0]=s>>>0>255?0-s>>31:s;a=Zi((qi[a>>0]|0)+(qi[i>>0]|0)|0,-5)|0;a=(((qi[o>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[n>>0]|0)+a+(qi[i+4>>0]|0)>>5;Wi[e+1>>0]=a>>>0>255?0-a>>31:a;l=l+1|0;if((l|0)==2)break;else{e=e+r|0;i=i+f|0}}return}function qa(e,i,r){e=e|0;i=i|0;r=r|0;Xa(e,i,r,r);return}function Ja(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Xa(l,i,2,r);a=i+1|0;a=qi[a>>0]|qi[a+1>>0]<<8;n=Gi[l>>1]|0;Gi[e>>1]=((n|a)&65535)-(((n^a)&65535)>>>1&32639);i=i+(r+1)|0;i=qi[i>>0]|qi[i+1>>0]<<8;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function Za(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+32|0;o=f+4|0;a=f;t=o+4|0;s=r<<1;n=i+(0-s)|0;Gi[o>>1]=qi[n>>0]|qi[n+1>>0]<<8;n=i+(0-r)|0;Gi[o+2>>1]=qi[n>>0]|qi[n+1>>0]<<8;n=qi[i>>0]|qi[i+1>>0]<<8;Gi[t>>1]=n;l=i+r|0;l=qi[l>>0]|qi[l+1>>0]<<8;Gi[o+6>>1]=l;s=i+s|0;Gi[o+8>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(r*3|0)|0;Gi[o+10>>1]=qi[s>>0]|qi[s+1>>0]<<8;i=i+(r<<2)|0;Gi[o+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(a,t,2);i=Gi[a>>1]|0;Gi[e>>1]=((i|n)&65535)-(((i^n)&65535)>>>1&32639);i=Gi[a+2>>1]|0;Gi[e+r>>1]=((i|l)&65535)-(((i^l)&65535)>>>1&32639);Ue=f;return}function Qa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=0;while(1){s=qi[i+-2>>0]|0;l=qi[i>>0]|0;n=qi[i+2>>0]|0;t=qi[i+4>>0]|0;a=qi[i+6>>0]|0;o=qi[i+8>>0]|0;u=(qi[i+-4>>0]|0)+16+a+((n+l|0)*20|0)+(Zi(t+s|0,-5)|0)>>5;Wi[e>>0]=u>>>0>255?0-u>>31:u;l=s+16+o+((t+n|0)*20|0)+(Zi(a+l|0,-5)|0)>>5;Wi[e+r>>0]=l>>>0>255?0-l>>31:l;f=f+1|0;if((f|0)==2)break;else{e=e+1|0;i=i+1|0}}return}function $a(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+32|0;t=f+8|0;a=f+4|0;l=f;n=t+4|0;Xa(a,i,2,r);o=r<<1;s=i+(0-o)|0;Gi[t>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(0-r)|0;Gi[t+2>>1]=qi[s>>0]|qi[s+1>>0]<<8;Gi[n>>1]=qi[i>>0]|qi[i+1>>0]<<8;s=i+r|0;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;o=i+o|0;Gi[t+8>>1]=qi[o>>0]|qi[o+1>>0]<<8;o=i+(r*3|0)|0;Gi[t+10>>1]=qi[o>>0]|qi[o+1>>0]<<8;i=i+(r<<2)|0;Gi[t+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(l,n,2);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function en(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+48|0;a=f+4|0;l=f;Xa(a,i,2,r);rn(l,f+8|0,i,2,r);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function rn(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=i;n=0;r=r+(0-(l<<1))|0;while(1){o=r+1|0;u=r+-1|0;s=r+2|0;h=Zi((qi[s>>0]|0)+(qi[u>>0]|0)|0,-5)|0;t=r+3|0;Gi[a>>1]=(qi[r+-2>>0]|0)+(((qi[o>>0]|0)+(qi[r>>0]|0)|0)*20|0)+h+(qi[t>>0]|0);t=Zi((qi[t>>0]|0)+(qi[r>>0]|0)|0,-5)|0;Gi[a+2>>1]=(qi[u>>0]|0)+(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+t+(qi[r+4>>0]|0);n=n+1|0;if((n|0)==7)break;else{a=a+4|0;r=r+l|0}}a=i+8|0;r=0;while(1){i=Gi[a+-4>>1]|0;h=Gi[a>>1]|0;s=Gi[a+4>>1]|0;o=Gi[a+8>>1]|0;u=Gi[a+12>>1]|0;t=Gi[a+16>>1]|0;l=(Gi[a+-8>>1]|0)+512+u+((s+h|0)*20|0)+(Zi(o+i|0,-5)|0)>>10;Wi[e>>0]=l>>>0>255?0-l>>31:l;h=i+512+t+((o+s|0)*20|0)+(Zi(u+h|0,-5)|0)>>10;Wi[e+f>>0]=h>>>0>255?0-h>>31:h;r=r+1|0;if((r|0)==2)break;else{a=a+2|0;e=e+1|0}}return}function fn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+32|0;t=f+8|0;a=f+4|0;l=f;n=t+4|0;Xa(a,i,2,r);s=r<<1;o=0-s|1;u=i+o|0;Gi[t>>1]=qi[u>>0]|qi[u+1>>0]<<8;u=i+(o+r)|0;Gi[t+2>>1]=qi[u>>0]|qi[u+1>>0]<<8;s=i+(o+s)|0;Gi[n>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*3|0))|0;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r<<2))|0;Gi[t+8>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*5|0))|0;Gi[t+10>>1]=qi[s>>0]|qi[s+1>>0]<<8;i=i+(o+(r*6|0))|0;Gi[t+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(l,n,2);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function ln(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+16|0;a=f;l=a+4|0;n=r<<1;t=i+(0-n)|0;Gi[a>>1]=qi[t>>0]|qi[t+1>>0]<<8;t=i+(0-r)|0;Gi[a+2>>1]=qi[t>>0]|qi[t+1>>0]<<8;Gi[l>>1]=qi[i>>0]|qi[i+1>>0]<<8;t=i+r|0;Gi[a+6>>1]=qi[t>>0]|qi[t+1>>0]<<8;n=i+n|0;Gi[a+8>>1]=qi[n>>0]|qi[n+1>>0]<<8;n=i+(r*3|0)|0;Gi[a+10>>1]=qi[n>>0]|qi[n+1>>0]<<8;i=i+(r<<2)|0;Gi[a+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(e,l,r);Ue=f;return}function an(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+64|0;t=f+36|0;a=f+4|0;l=f;n=t+4|0;o=r<<1;s=i+(0-o)|0;Gi[t>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(0-r)|0;Gi[t+2>>1]=qi[s>>0]|qi[s+1>>0]<<8;Gi[n>>1]=qi[i>>0]|qi[i+1>>0]<<8;s=i+r|0;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;o=i+o|0;Gi[t+8>>1]=qi[o>>0]|qi[o+1>>0]<<8;o=i+(r*3|0)|0;Gi[t+10>>1]=qi[o>>0]|qi[o+1>>0]<<8;o=i+(r<<2)|0;Gi[t+12>>1]=qi[o>>0]|qi[o+1>>0]<<8;Qa(a,n,2);rn(l,f+8|0,i,2,r);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function nn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+32|0;rn(e,f,i,r,r);Ue=f;return}function tn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+64|0;t=f+36|0;a=f+4|0;l=f;n=t+4|0;s=r<<1;o=0-s|1;u=i+o|0;Gi[t>>1]=qi[u>>0]|qi[u+1>>0]<<8;u=i+(o+r)|0;Gi[t+2>>1]=qi[u>>0]|qi[u+1>>0]<<8;s=i+(o+s)|0;Gi[n>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*3|0))|0;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r<<2))|0;Gi[t+8>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*5|0))|0;Gi[t+10>>1]=qi[s>>0]|qi[s+1>>0]<<8;o=i+(o+(r*6|0))|0;Gi[t+12>>1]=qi[o>>0]|qi[o+1>>0]<<8;Qa(a,n,2);rn(l,f+8|0,i,2,r);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function on(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+32|0;o=f+4|0;a=f;t=o+4|0;l=r<<1;n=i+(0-l)|0;Gi[o>>1]=qi[n>>0]|qi[n+1>>0]<<8;n=i+(0-r)|0;Gi[o+2>>1]=qi[n>>0]|qi[n+1>>0]<<8;Gi[t>>1]=qi[i>>0]|qi[i+1>>0]<<8;n=i+r|0;n=qi[n>>0]|qi[n+1>>0]<<8;Gi[o+6>>1]=n;l=i+l|0;l=qi[l>>0]|qi[l+1>>0]<<8;Gi[o+8>>1]=l;s=i+(r*3|0)|0;Gi[o+10>>1]=qi[s>>0]|qi[s+1>>0]<<8;i=i+(r<<2)|0;Gi[o+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(a,t,2);i=Gi[a>>1]|0;Gi[e>>1]=((i|n)&65535)-(((i^n)&65535)>>>1&32639);i=Gi[a+2>>1]|0;Gi[e+r>>1]=((i|l)&65535)-(((i^l)&65535)>>>1&32639);Ue=f;return}function sn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+32|0;t=f+8|0;a=f+4|0;l=f;n=t+4|0;s=i+r|0;Xa(a,s,2,r);o=r<<1;u=i+(0-o)|0;Gi[t>>1]=qi[u>>0]|qi[u+1>>0]<<8;u=i+(0-r)|0;Gi[t+2>>1]=qi[u>>0]|qi[u+1>>0]<<8;Gi[n>>1]=qi[i>>0]|qi[i+1>>0]<<8;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;o=i+o|0;Gi[t+8>>1]=qi[o>>0]|qi[o+1>>0]<<8;o=i+(r*3|0)|0;Gi[t+10>>1]=qi[o>>0]|qi[o+1>>0]<<8;i=i+(r<<2)|0;Gi[t+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(l,n,2);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function un(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+48|0;a=f+4|0;l=f;Xa(a,i+r|0,2,r);rn(l,f+8|0,i,2,r);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function hn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+32|0;t=f+8|0;a=f+4|0;l=f;n=t+4|0;Xa(a,i+r|0,2,r);s=r<<1;o=0-s|1;u=i+o|0;Gi[t>>1]=qi[u>>0]|qi[u+1>>0]<<8;u=i+(o+r)|0;Gi[t+2>>1]=qi[u>>0]|qi[u+1>>0]<<8;s=i+(o+s)|0;Gi[n>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*3|0))|0;Gi[t+6>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r<<2))|0;Gi[t+8>>1]=qi[s>>0]|qi[s+1>>0]<<8;s=i+(o+(r*5|0))|0;Gi[t+10>>1]=qi[s>>0]|qi[s+1>>0]<<8;i=i+(o+(r*6|0))|0;Gi[t+12>>1]=qi[i>>0]|qi[i+1>>0]<<8;Qa(l,n,2);i=Gi[a>>1]|0;n=Gi[l>>1]|0;Gi[e>>1]=((n|i)&65535)-(((n^i)&65535)>>>1&32639);i=Gi[a+2>>1]|0;l=Gi[l+2>>1]|0;Gi[e+r>>1]=((l|i)&65535)-(((l^i)&65535)>>>1&32639);Ue=f;return}function wn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=i;l=e;a=0;while(1){n=Xi[l>>2]|0;t=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[l>>2]=(t|n)-((t^n)>>>1&2139062143);n=l+4|0;t=Xi[n>>2]|0;o=f+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+8|0;f=e+8|0;l=0;while(1){o=Xi[f>>2]|0;t=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f>>2]=(t|o)-((t^o)>>>1&2139062143);o=f+4|0;t=Xi[o>>2]|0;n=a+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o>>2]=(n|t)-((n^t)>>>1&2139062143);l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function kn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+256|0;l=a;Kl(l,i,16,r);f=0;do{n=Zi(f,r)|0;u=i+n|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<4;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);n=n+4|0;o=i+n|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|4)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+n|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{h=Zi(f,r)|0;s=h+8|0;t=i+s|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f<<4;n=l+(o|8)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=e+s|0;u=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|u)-((t^u)>>>1&2139062143);h=h+12|0;s=i+h|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+(o|12)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+h|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=a;return}function bn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;cn(e,i,r,r);cn(e+8|0,i+8|0,r,r);f=r<<3;cn(e+f|0,i+f|0,r,r);f=f+8|0;cn(e+f|0,i+f|0,r,r);return}function cn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;l=0;while(1){o=i+1|0;t=i+-1|0;s=i+2|0;a=Zi((qi[s>>0]|0)+(qi[t>>0]|0)|0,-5)|0;u=i+3|0;a=(((qi[o>>0]|0)+(qi[i>>0]|0)|0)*20|0)+16+(qi[i+-2>>0]|0)+a+(qi[u>>0]|0)>>5;Wi[e>>0]=((qi[e>>0]|0)+1+((a>>>0>255?0-a>>31:a)&255)|0)>>>1;a=e+1|0;h=Zi((qi[u>>0]|0)+(qi[i>>0]|0)|0,-5)|0;w=i+4|0;h=(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+16+(qi[t>>0]|0)+h+(qi[w>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+2|0;h=Zi((qi[w>>0]|0)+(qi[o>>0]|0)|0,-5)|0;t=i+5|0;h=(((qi[u>>0]|0)+(qi[s>>0]|0)|0)*20|0)+16+(qi[i>>0]|0)+h+(qi[t>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+3|0;h=Zi((qi[t>>0]|0)+(qi[s>>0]|0)|0,-5)|0;n=i+6|0;h=(((qi[w>>0]|0)+(qi[u>>0]|0)|0)*20|0)+16+(qi[o>>0]|0)+h+(qi[n>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+4|0;h=Zi((qi[n>>0]|0)+(qi[u>>0]|0)|0,-5)|0;o=i+7|0;h=(((qi[t>>0]|0)+(qi[w>>0]|0)|0)*20|0)+16+(qi[s>>0]|0)+h+(qi[o>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+5|0;h=Zi((qi[o>>0]|0)+(qi[w>>0]|0)|0,-5)|0;s=i+8|0;h=(((qi[n>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[u>>0]|0)+h+(qi[s>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+6|0;h=Zi((qi[s>>0]|0)+(qi[t>>0]|0)|0,-5)|0;u=i+9|0;h=(((qi[o>>0]|0)+(qi[n>>0]|0)|0)*20|0)+16+(qi[w>>0]|0)+h+(qi[u>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((h>>>0>255?0-h>>31:h)&255)|0)>>>1;a=e+7|0;n=Zi((qi[u>>0]|0)+(qi[n>>0]|0)|0,-5)|0;n=(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+16+(qi[t>>0]|0)+n+(qi[i+10>>0]|0)>>5;Wi[a>>0]=((qi[a>>0]|0)+1+((n>>>0>255?0-n>>31:n)&255)|0)>>>1;l=l+1|0;if((l|0)==8)break;else{e=e+r|0;i=i+f|0}}return}function dn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+256|0;l=a;Kl(l,i,16,r);f=0;do{n=Zi(f,r)|0;u=i+(n+1)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<4;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);o=i+(n+5)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|4)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{h=Zi(f,r)|0;t=i+(h+9)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f<<4;n=l+(o|8)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=e+(h+8)|0;u=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|u)-((t^u)>>>1&2139062143);s=i+(h+13)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+(o|12)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=a;return}function vn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+592|0;a=t+256|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;o=i+8|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+8|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;s=i+12|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+12|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(n,a+32|0,16);i=0;do{f=i<<4;u=a+(f+32)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n+f|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=Zi(i,r)|0;l=e+s|0;o=Xi[l>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[l>>2]=(u|o)-((u^o)>>>1&2139062143);f=f|4;l=a+(f+32)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=e+(s+4)|0;o=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{o=i<<4;l=a+(o+40)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+(o|8)|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);s=a+((o|4)+40)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+(o|12)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=t;return}function En(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{l=i<<4;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;f=a|8;l=n+f|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=t+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(a|s)-((a^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function Sn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1184|0;f=a+928|0;l=a+672|0;Kl(f,i,16,r);ea(l,a,i,16,r);i=0;do{s=i<<4;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=Zi(i,r)|0;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);s=s|4;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{o=i<<4;n=o|8;t=f+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|u)-((t^u)>>>1&2139062143);o=o|12;s=f+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=a;return}function _n(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i,16,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{l=i<<4;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;f=a|8;l=n+f|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=t+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(a|s)-((a^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function mn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=Ue;Ue=Ue+336|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=o;Wi[f+1>>0]=o>>8;Wi[f+2>>0]=o>>16;Wi[f+3>>0]=o>>24;o=i+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;t=i+8|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;o=i+12|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+12|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}pn(e,a+32|0,r,16);pn(e+8|0,a+40|0,r,16);o=r<<3;pn(e+o|0,a+160|0,r,16);pn(e+(o+8)|0,a+168|0,r,16);Ue=n;return}function pn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;a=Zi(f,-2)|0;n=0-f|0;b=f<<1;c=f*3|0;d=f<<2;v=f*5|0;E=f*6|0;S=f*7|0;_=f<<3;m=f*9|0;t=f*10|0;o=r<<1;s=r*3|0;u=r<<2;h=r*5|0;w=r*6|0;k=r*7|0;l=0;while(1){P=qi[i+n>>0]|0;C=qi[i>>0]|0;D=qi[i+f>>0]|0;N=qi[i+b>>0]|0;T=qi[i+c>>0]|0;R=qi[i+d>>0]|0;M=qi[i+v>>0]|0;F=qi[i+E>>0]|0;O=qi[i+S>>0]|0;A=qi[i+_>>0]|0;y=qi[i+m>>0]|0;g=qi[i+t>>0]|0;p=(qi[i+a>>0]|0)+16+T+((D+C|0)*20|0)+(Zi(N+P|0,-5)|0)>>5;Wi[e>>0]=(((p>>>0>255?0-p>>31:p)&255)+1+(qi[e>>0]|0)|0)>>>1;p=e+r|0;P=P+16+R+((N+D|0)*20|0)+(Zi(T+C|0,-5)|0)>>5;Wi[p>>0]=(((P>>>0>255?0-P>>31:P)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+o|0;C=C+16+M+((T+N|0)*20|0)+(Zi(R+D|0,-5)|0)>>5;Wi[p>>0]=(((C>>>0>255?0-C>>31:C)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+s|0;D=D+16+F+((R+T|0)*20|0)+(Zi(M+N|0,-5)|0)>>5;Wi[p>>0]=(((D>>>0>255?0-D>>31:D)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+u|0;N=N+16+O+((M+R|0)*20|0)+(Zi(F+T|0,-5)|0)>>5;Wi[p>>0]=(((N>>>0>255?0-N>>31:N)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+h|0;T=T+16+A+((F+M|0)*20|0)+(Zi(O+R|0,-5)|0)>>5;Wi[p>>0]=(((T>>>0>255?0-T>>31:T)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+w|0;R=R+16+y+((O+F|0)*20|0)+(Zi(A+M|0,-5)|0)>>5;Wi[p>>0]=(((R>>>0>255?0-R>>31:R)&255)+1+(qi[p>>0]|0)|0)>>>1;p=e+k|0;F=M+16+g+((A+O|0)*20|0)+(Zi(y+F|0,-5)|0)>>5;Wi[p>>0]=(((F>>>0>255?0-F>>31:F)&255)+1+(qi[p>>0]|0)|0)>>>1;l=l+1|0;if((l|0)==8)break;else{e=e+1|0;i=i+1|0}}return}function Fn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+1520|0;a=u+1184|0;t=u;s=u+928|0;o=u+672|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;h=f+8|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=l+8|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=f+12|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+12|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+16|0}}Jl(s,a+32|0,16);ea(o,t,i,16,r);f=0;do{i=f<<4;n=s+i|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+i|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+w|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|4;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+4)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{i=f<<4;a=i|8;n=s+a|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+(w+8)|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|12;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+12)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=u;return}function yn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+672|0;n=f;On(e,n,i,r,16,r);a=n+16|0;On(e+8|0,a,i+8|0,r,16,r);l=r<<3;On(e+l|0,n,i+l|0,r,16,r);l=l+8|0;On(e+l|0,a,i+l|0,r,16,r);Ue=f;return}function On(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;n=i;t=0;r=r+(0-(a<<1))|0;while(1){p=r+1|0;_=r+-1|0;m=r+2|0;E=Zi((qi[m>>0]|0)+(qi[_>>0]|0)|0,-5)|0;S=r+3|0;Gi[n>>1]=(qi[r+-2>>0]|0)+(((qi[p>>0]|0)+(qi[r>>0]|0)|0)*20|0)+E+(qi[S>>0]|0);E=Zi((qi[S>>0]|0)+(qi[r>>0]|0)|0,-5)|0;v=r+4|0;Gi[n+2>>1]=(qi[_>>0]|0)+(((qi[m>>0]|0)+(qi[p>>0]|0)|0)*20|0)+E+(qi[v>>0]|0);E=Zi((qi[v>>0]|0)+(qi[p>>0]|0)|0,-5)|0;_=r+5|0;Gi[n+4>>1]=(qi[r>>0]|0)+(((qi[S>>0]|0)+(qi[m>>0]|0)|0)*20|0)+E+(qi[_>>0]|0);E=Zi((qi[_>>0]|0)+(qi[m>>0]|0)|0,-5)|0;F=r+6|0;Gi[n+6>>1]=(qi[p>>0]|0)+(((qi[v>>0]|0)+(qi[S>>0]|0)|0)*20|0)+E+(qi[F>>0]|0);E=Zi((qi[F>>0]|0)+(qi[S>>0]|0)|0,-5)|0;p=r+7|0;Gi[n+8>>1]=(qi[m>>0]|0)+(((qi[_>>0]|0)+(qi[v>>0]|0)|0)*20|0)+E+(qi[p>>0]|0);E=Zi((qi[p>>0]|0)+(qi[v>>0]|0)|0,-5)|0;m=r+8|0;Gi[n+10>>1]=(qi[S>>0]|0)+(((qi[F>>0]|0)+(qi[_>>0]|0)|0)*20|0)+E+(qi[m>>0]|0);E=Zi((qi[m>>0]|0)+(qi[_>>0]|0)|0,-5)|0;S=r+9|0;Gi[n+12>>1]=(qi[v>>0]|0)+(((qi[p>>0]|0)+(qi[F>>0]|0)|0)*20|0)+E+(qi[S>>0]|0);F=Zi((qi[S>>0]|0)+(qi[F>>0]|0)|0,-5)|0;Gi[n+14>>1]=(qi[_>>0]|0)+(((qi[m>>0]|0)+(qi[p>>0]|0)|0)*20|0)+F+(qi[r+10>>0]|0);t=t+1|0;if((t|0)==13)break;else{n=n+(l<<1)|0;r=r+a|0}}a=Zi(l,-2)|0;o=0-l|0;s=l<<1;u=l*3|0;h=l<<2;w=l*5|0;k=l*6|0;b=l*7|0;c=l<<3;d=l*9|0;v=l*10|0;E=f<<1;S=f*3|0;_=f<<2;m=f*5|0;p=f*6|0;F=f*7|0;t=i+(l<<1<<1)|0;r=e;n=0;while(1){P=Gi[t+(o<<1)>>1]|0;C=Gi[t>>1]|0;D=Gi[t+(l<<1)>>1]|0;N=Gi[t+(s<<1)>>1]|0;T=Gi[t+(u<<1)>>1]|0;R=Gi[t+(h<<1)>>1]|0;M=Gi[t+(w<<1)>>1]|0;i=Gi[t+(k<<1)>>1]|0;O=Gi[t+(b<<1)>>1]|0;A=Gi[t+(c<<1)>>1]|0;y=Gi[t+(d<<1)>>1]|0;g=Gi[t+(v<<1)>>1]|0;e=(Gi[t+(a<<1)>>1]|0)+512+T+((D+C|0)*20|0)+(Zi(N+P|0,-5)|0)>>10;Wi[r>>0]=(((e>>>0>255?0-e>>31:e)&255)+1+(qi[r>>0]|0)|0)>>>1;e=r+f|0;P=P+512+R+((N+D|0)*20|0)+(Zi(T+C|0,-5)|0)>>10;Wi[e>>0]=(((P>>>0>255?0-P>>31:P)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+E|0;C=C+512+M+((T+N|0)*20|0)+(Zi(R+D|0,-5)|0)>>10;Wi[e>>0]=(((C>>>0>255?0-C>>31:C)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+S|0;D=D+512+i+((R+T|0)*20|0)+(Zi(M+N|0,-5)|0)>>10;Wi[e>>0]=(((D>>>0>255?0-D>>31:D)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+_|0;N=N+512+O+((M+R|0)*20|0)+(Zi(i+T|0,-5)|0)>>10;Wi[e>>0]=(((N>>>0>255?0-N>>31:N)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+m|0;T=T+512+A+((i+M|0)*20|0)+(Zi(O+R|0,-5)|0)>>10;Wi[e>>0]=(((T>>>0>255?0-T>>31:T)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+p|0;R=R+512+y+((O+i|0)*20|0)+(Zi(A+M|0,-5)|0)>>10;Wi[e>>0]=(((R>>>0>255?0-R>>31:R)&255)+1+(qi[e>>0]|0)|0)>>>1;e=r+F|0;i=M+512+g+((A+O|0)*20|0)+(Zi(y+i|0,-5)|0)>>10;Wi[e>>0]=(((i>>>0>255?0-i>>31:i)&255)+1+(qi[e>>0]|0)|0)>>>1;n=n+1|0;if((n|0)==8)break;else{t=t+2|0;r=r+1|0}}return}function An(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+1520|0;a=u+1184|0;t=u;s=u+928|0;o=u+672|0;f=i+(0-(r<<1)|1)|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;h=f+8|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=l+8|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=f+12|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+12|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+16|0}}Jl(s,a+32|0,16);ea(o,t,i,16,r);f=0;do{i=f<<4;n=s+i|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+i|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+w|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|4;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+4)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);f=0;do{i=f<<4;a=i|8;n=s+a|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+(w+8)|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|12;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+12)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=16);Ue=u;return}function gn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+592|0;a=t+256|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;o=i+8|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+8|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;s=i+12|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+12|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(n,a+32|0,16);i=0;do{f=i<<4;u=a+(f+48)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n+f|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=Zi(i,r)|0;l=e+s|0;o=Xi[l>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[l>>2]=(u|o)-((u^o)>>>1&2139062143);f=f|4;l=a+(f+48)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=e+(s+4)|0;o=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{o=i<<4;l=a+(o+56)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+(o|8)|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);s=a+((o|4)+56)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+(o|12)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=t;return}function Mn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{l=i<<4;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;f=a|8;l=n+f|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=t+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(a|s)-((a^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function Rn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1184|0;f=a+928|0;l=a+672|0;Kl(f,i+r|0,16,r);ea(l,a,i,16,r);i=0;do{s=i<<4;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=Zi(i,r)|0;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);s=s|4;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{o=i<<4;n=o|8;t=f+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|u)-((t^u)>>>1&2139062143);o=o|12;s=f+o|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(o|s)-((o^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=a;return}function Tn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+848|0;a=o+512|0;n=o+256|0;t=o;Kl(n,i+r|0,16,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;s=i+8|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+12|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+12|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+16|0}}Jl(t,a+32|0,16);i=0;do{l=i<<4;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=16);i=0;do{a=i<<4;f=a|8;l=n+f|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=t+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=Zi(i,r)|0;s=e+(h+8)|0;u=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|u)-((l^u)>>>1&2139062143);a=a|12;s=n+a|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=t+a|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;h=e+(h+12)|0;u=Xi[h>>2]|0;s=(a|s)-((a^s)>>>1&2139062143)|0;Xi[h>>2]=(s|u)-((s^u)>>>1&2139062143);i=i+1|0}while((i|0)!=16);Ue=o;return}function Nn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=0;while(1){l=Xi[e>>2]|0;a=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[e>>2]=(a|l)-((a^l)>>>1&2139062143);l=e+4|0;a=Xi[l>>2]|0;n=i+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[l>>2]=(n|a)-((n^a)>>>1&2139062143);f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Dn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+64|0;f=a;Wl(f,i,8,r);l=0;do{n=Zi(l,r)|0;u=i+n|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l<<3;h=f+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);n=n+4|0;o=i+n|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|4)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+n|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=8);Ue=a;return}function Cn(e,i,r){e=e|0;i=i|0;r=r|0;cn(e,i,r,r);return}function Pn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+64|0;f=a;Wl(f,i,8,r);l=0;do{n=Zi(l,r)|0;u=i+(n+1)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l<<3;h=f+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);o=i+(n+5)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|4)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=8);Ue=a;return}function Ln(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+176|0;a=t+64|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(n,a+16|0,8,8);i=0;do{f=i<<3;u=a+(f+16)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n+f|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=Zi(i,r)|0;l=e+s|0;o=Xi[l>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[l>>2]=(u|o)-((u^o)>>>1&2139062143);f=f|4;l=a+(f+16)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=e+(s+4)|0;o=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=t;return}function In(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i,8,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{l=i<<3;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Hn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+336|0;f=a+272|0;l=a+208|0;Wl(f,i,8,r);ia(l,a,i,8,8,r);i=0;do{s=i<<3;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=Zi(i,r)|0;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);s=s|4;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=a;return}function Bn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i,8,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{l=i<<3;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Un(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=Ue;Ue=Ue+112|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=o;Wi[f+1>>0]=o>>8;Wi[f+2>>0]=o>>16;Wi[f+3>>0]=o>>24;o=i+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}pn(e,a+16|0,r,8);Ue=n;return}function xn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+448|0;a=u+336|0;t=u;s=u+272|0;o=u+208|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+8|0}}Zl(s,a+16|0,8,8);ia(o,t,i,8,8,r);f=0;do{i=f<<3;n=s+i|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+i|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+w|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|4;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+4)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=8);Ue=u;return}function zn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+208|0;On(e,f,i,r,8,r);Ue=f;return}function Vn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+448|0;a=u+336|0;t=u;s=u+272|0;o=u+208|0;f=i+(0-(r<<1)|1)|0;l=a;n=0;while(1){w=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Wi[l>>0]=w;Wi[l+1>>0]=w>>8;Wi[l+2>>0]=w>>16;Wi[l+3>>0]=w>>24;w=f+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+8|0}}Zl(s,a+16|0,8,8);ia(o,t,i,8,8,r);f=0;do{i=f<<3;n=s+i|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=o+i|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;w=Zi(f,r)|0;t=e+w|0;h=Xi[t>>2]|0;n=(a|n)-((a^n)>>>1&2139062143)|0;Xi[t>>2]=(n|h)-((n^h)>>>1&2139062143);i=i|4;t=s+i|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=o+i|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=e+(w+4)|0;h=Xi[w>>2]|0;t=(i|t)-((i^t)>>>1&2139062143)|0;Xi[w>>2]=(t|h)-((t^h)>>>1&2139062143);f=f+1|0}while((f|0)!=8);Ue=u;return}function Yn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+176|0;a=t+64|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=s;Wi[f+1>>0]=s>>8;Wi[f+2>>0]=s>>16;Wi[f+3>>0]=s>>24;s=i+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(n,a+16|0,8,8);i=0;do{f=i<<3;u=a+(f+24)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n+f|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=Zi(i,r)|0;l=e+s|0;o=Xi[l>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[l>>2]=(u|o)-((u^o)>>>1&2139062143);f=f|4;l=a+(f+24)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=n+f|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=e+(s+4)|0;o=Xi[s>>2]|0;l=(f|l)-((f^l)>>>1&2139062143)|0;Xi[s>>2]=(l|o)-((l^o)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=t;return}function jn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i+r|0,8,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{l=i<<3;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Kn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+336|0;f=a+272|0;l=a+208|0;Wl(f,i+r|0,8,r);ia(l,a,i,8,8,r);i=0;do{s=i<<3;u=f+s|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=l+s|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=Zi(i,r)|0;o=e+n|0;t=Xi[o>>2]|0;u=(h|u)-((h^u)>>>1&2139062143)|0;Xi[o>>2]=(u|t)-((u^t)>>>1&2139062143);s=s|4;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(n+4)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=a;return}function Wn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;o=Ue;Ue=Ue+240|0;a=o+128|0;n=o+64|0;t=o;Wl(n,i+r|0,8,r);i=i+(0-(r<<1)|1)|0;f=a;l=0;while(1){u=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Wi[f>>0]=u;Wi[f+1>>0]=u>>8;Wi[f+2>>0]=u>>16;Wi[f+3>>0]=u>>24;u=i+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+8|0}}Zl(t,a+16|0,8,8);i=0;do{l=i<<3;f=n+l|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=t+l|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=Zi(i,r)|0;a=e+u|0;s=Xi[a>>2]|0;f=(h|f)-((h^f)>>>1&2139062143)|0;Xi[a>>2]=(f|s)-((f^s)>>>1&2139062143);l=l|4;a=n+l|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=t+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;u=e+(u+4)|0;s=Xi[u>>2]|0;a=(l|a)-((l^a)>>>1&2139062143)|0;Xi[u>>2]=(a|s)-((a^s)>>>1&2139062143);i=i+1|0}while((i|0)!=8);Ue=o;return}function Gn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=Xi[e>>2]|0;f=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[e>>2]=(f|l)-((f^l)>>>1&2139062143);l=i+r|0;f=e+r|0;a=Xi[f>>2]|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[f>>2]=(l|a)-((l^a)>>>1&2139062143);f=r<<1;a=i+f|0;f=e+f|0;l=Xi[f>>2]|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f>>2]=(a|l)-((a^l)>>>1&2139062143);r=r*3|0;f=i+r|0;r=e+r|0;i=Xi[r>>2]|0;e=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[r>>2]=(e|i)-((e^i)>>>1&2139062143);return}function Xn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+16|0;f=a;Ra(f,i,4,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<2)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+n|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=4);Ue=a;return}function qn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=0;while(1){t=i+1|0;n=i+-1|0;a=i+2|0;o=i+3|0;l=(((qi[t>>0]|0)+(qi[i>>0]|0)|0)*20|0)+16+(qi[i+-2>>0]|0)+(Zi((qi[a>>0]|0)+(qi[n>>0]|0)|0,-5)|0)+(qi[o>>0]|0)>>5;Wi[e>>0]=((qi[e>>0]|0)+1+((l>>>0>255?0-l>>31:l)&255)|0)>>>1;l=e+1|0;s=i+4|0;n=(((qi[a>>0]|0)+(qi[t>>0]|0)|0)*20|0)+16+(qi[n>>0]|0)+(Zi((qi[o>>0]|0)+(qi[i>>0]|0)|0,-5)|0)+(qi[s>>0]|0)>>5;Wi[l>>0]=((qi[l>>0]|0)+1+((n>>>0>255?0-n>>31:n)&255)|0)>>>1;l=e+2|0;n=i+5|0;u=(((qi[o>>0]|0)+(qi[a>>0]|0)|0)*20|0)+16+(qi[i>>0]|0)+(Zi((qi[s>>0]|0)+(qi[t>>0]|0)|0,-5)|0)+(qi[n>>0]|0)>>5;Wi[l>>0]=((qi[l>>0]|0)+1+((u>>>0>255?0-u>>31:u)&255)|0)>>>1;l=e+3|0;a=(((qi[s>>0]|0)+(qi[o>>0]|0)|0)*20|0)+16+(qi[t>>0]|0)+(Zi((qi[n>>0]|0)+(qi[a>>0]|0)|0,-5)|0)+(qi[i+6>>0]|0)>>5;Wi[l>>0]=((qi[l>>0]|0)+1+((a>>>0>255?0-a>>31:a)&255)|0)>>>1;f=f+1|0;if((f|0)==4)break;else{e=e+r|0;i=i+r|0}}return}function Jn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+16|0;f=a;Ra(f,i,4,r);l=0;do{n=Zi(l,r)|0;o=i+(n+1)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<2)|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+n|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);l=l+1|0}while((l|0)!=4);Ue=a;return}function Zn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+64|0;f=a;l=a+40|0;n=f+8|0;t=r<<1;o=i+(0-t)|0;Xi[f>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(0-r)|0;Xi[f+4>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;o=i+r|0;Xi[f+12>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=i+t|0;Xi[f+16>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*3|0)|0;Xi[f+20>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r<<2)|0;Xi[f+24>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*5|0)|0;Xi[f+28>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=i+(r*6|0)|0;Xi[f+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{s=i<<2;n=Xi[f+(s+8)>>2]|0;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=e+(Zi(i,r)|0)|0;t=Xi[o>>2]|0;n=(s|n)-((s^n)>>>1&2139062143)|0;Xi[o>>2]=(n|t)-((n^t)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function Qn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r*6|0)|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{n=i<<2;t=f+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=e+(Zi(i,r)|0)|0;o=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function $n(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+112|0;f=a+88|0;l=a+72|0;Ra(f,i,4,r);Ia(l,a,i,4,r);i=0;do{s=i<<2;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(Zi(i,r)|0)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function et(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i,4,r);s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{t=i<<2;o=f+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=e+(Zi(i,r)|0)|0;s=Xi[u>>2]|0;o=(t|o)-((t^o)>>>1&2139062143)|0;Xi[u>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function it(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+48|0;o=t;f=o+8|0;n=r<<1;l=i+(0-n)|0;Xi[o>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;l=i+(0-r)|0;Xi[o+4>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;l=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[f>>2]=l;a=i+r|0;Xi[o+12>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;a=i+n|0;Xi[o+16>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;a=r*3|0;s=i+a|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r<<2)|0;Xi[o+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r*5|0)|0;Xi[o+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r*6|0)|0;Xi[o+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=l&255;i=0;while(1){c=qi[f+-4>>0]|0;b=l&255;h=qi[f+4>>0]|0;o=qi[f+8>>0]|0;w=qi[f+12>>0]|0;k=qi[f+16>>0]|0;l=qi[f+20>>0]|0;u=qi[f+24>>0]|0;s=((h+b|0)*20|0)+((qi[f+-8>>0]|0)+16+w)+(Zi(o+c|0,-5)|0)>>5;Wi[e>>0]=((qi[e>>0]|0)+1+((s>>>0>255?0-s>>31:s)&255)|0)>>>1;s=e+r|0;c=((o+h|0)*20|0)+(c+16+k)+(Zi(w+b|0,-5)|0)>>5;Wi[s>>0]=((qi[s>>0]|0)+1+((c>>>0>255?0-c>>31:c)&255)|0)>>>1;s=e+n|0;b=((w+o|0)*20|0)+(b+16+l)+(Zi(k+h|0,-5)|0)>>5;Wi[s>>0]=((qi[s>>0]|0)+1+((b>>>0>255?0-b>>31:b)&255)|0)>>>1;s=e+a|0;o=((k+w|0)*20|0)+(h+16+u)+(Zi(l+o|0,-5)|0)>>5;Wi[s>>0]=((qi[s>>0]|0)+1+((o>>>0>255?0-o>>31:o)&255)|0)>>>1;f=f+1|0;i=i+1|0;if((i|0)==4)break;l=Wi[f>>0]|0;e=e+1|0}Ue=t;return}function rt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+144|0;t=a;l=a+128|0;f=a+112|0;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*6|0)|0;Xi[t+32>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Ca(l,n,4);Ia(f,a+40|0,i,4,r);i=0;do{n=i<<2;t=l+n|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=f+n|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=e+(Zi(i,r)|0)|0;o=Xi[s>>2]|0;t=(n|t)-((n^t)>>>1&2139062143)|0;Xi[s>>2]=(t|o)-((t^o)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function ft(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+80|0;a=t;n=r<<1;f=a;l=0;i=i+(0-n)|0;while(1){k=qi[i>>0]|0;w=qi[i+1>>0]|0;s=qi[i+-1>>0]|0;o=qi[i+2>>0]|0;u=qi[i+3>>0]|0;Gi[f>>1]=(qi[i+-2>>0]|0)+((w+k|0)*20|0)+(Zi(o+s|0,-5)|0)+u;h=qi[i+4>>0]|0;Gi[f+2>>1]=s+((o+w|0)*20|0)+(Zi(u+k|0,-5)|0)+h;s=qi[i+5>>0]|0;Gi[f+4>>1]=k+((u+o|0)*20|0)+(Zi(h+w|0,-5)|0)+s;Gi[f+6>>1]=w+((h+u|0)*20|0)+(Zi(s+o|0,-5)|0)+(qi[i+6>>0]|0);l=l+1|0;if((l|0)==9)break;else{f=f+8|0;i=i+r|0}}l=r*3|0;f=a+16|0;i=0;while(1){c=Gi[f+-8>>1]|0;b=Gi[f>>1]|0;s=Gi[f+8>>1]|0;w=Gi[f+16>>1]|0;o=Gi[f+24>>1]|0;a=Gi[f+32>>1]|0;h=Gi[f+40>>1]|0;u=Gi[f+48>>1]|0;k=((s+b|0)*20|0)+((Gi[f+-16>>1]|0)+512+o)+(Zi(w+c|0,-5)|0)>>10;Wi[e>>0]=((qi[e>>0]|0)+1+((k>>>0>255?0-k>>31:k)&255)|0)>>>1;k=e+r|0;c=((w+s|0)*20|0)+(c+512+a)+(Zi(o+b|0,-5)|0)>>10;Wi[k>>0]=((qi[k>>0]|0)+1+((c>>>0>255?0-c>>31:c)&255)|0)>>>1;k=e+n|0;b=((o+w|0)*20|0)+(b+512+h)+(Zi(a+s|0,-5)|0)>>10;Wi[k>>0]=((qi[k>>0]|0)+1+((b>>>0>255?0-b>>31:b)&255)|0)>>>1;k=e+l|0;w=((a+o|0)*20|0)+(s+512+u)+(Zi(h+w|0,-5)|0)>>10;Wi[k>>0]=((qi[k>>0]|0)+1+((w>>>0>255?0-w>>31:w)&255)|0)>>>1;i=i+1|0;if((i|0)==4)break;else{f=f+2|0;e=e+1|0}}Ue=t;return}function lt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+144|0;t=a;l=a+128|0;f=a+112|0;n=t+8|0;s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Ca(l,n,4);Ia(f,a+40|0,i,4,r);i=0;do{t=i<<2;o=l+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=e+(Zi(i,r)|0)|0;s=Xi[u>>2]|0;o=(t|o)-((t^o)>>>1&2139062143)|0;Xi[u>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function at(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+64|0;f=a;l=a+40|0;n=f+8|0;t=r<<1;o=i+(0-t)|0;Xi[f>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(0-r)|0;Xi[f+4>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;o=i+r|0;Xi[f+12>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=i+t|0;Xi[f+16>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*3|0)|0;Xi[f+20>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r<<2)|0;Xi[f+24>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(r*5|0)|0;Xi[f+28>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=i+(r*6|0)|0;Xi[f+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{s=i<<2;n=Xi[f+(s+12)>>2]|0;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=e+(Zi(i,r)|0)|0;t=Xi[o>>2]|0;n=(s|n)-((s^n)>>>1&2139062143)|0;Xi[o>>2]=(n|t)-((n^t)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function nt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;s=i+r|0;Ra(f,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*5|0)|0;Xi[t+28>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r*6|0)|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{t=i<<2;o=f+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=e+(Zi(i,r)|0)|0;s=Xi[u>>2]|0;o=(t|o)-((t^o)>>>1&2139062143)|0;Xi[u>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function tt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+112|0;f=a+88|0;l=a+72|0;Ra(f,i+r|0,4,r);Ia(l,a,i,4,r);i=0;do{s=i<<2;o=f+s|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=e+(Zi(i,r)|0)|0;t=Xi[n>>2]|0;o=(s|o)-((s^o)>>>1&2139062143)|0;Xi[n>>2]=(o|t)-((o^t)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function ot(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+80|0;t=a;f=a+56|0;l=a+40|0;n=t+8|0;Ra(f,i+r|0,4,r);s=r<<1;o=0-s|1;u=i+o|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(o+r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=i+(o+s)|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*7|0))|0;Xi[t+28>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r<<3))|0;Xi[t+32>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Ca(l,n,4);i=0;do{t=i<<2;o=f+t|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l+t|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=e+(Zi(i,r)|0)|0;s=Xi[u>>2]|0;o=(t|o)-((t^o)>>>1&2139062143)|0;Xi[u>>2]=(o|s)-((o^s)>>>1&2139062143);i=i+1|0}while((i|0)!=4);Ue=a;return}function st(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=i;l=e;a=0;while(1){o=f;n=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l;Xi[t>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t+4>>2]=o;t=f+8|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+8|0;Xi[n>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n+4>>2]=t;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){n=a;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f;Xi[t>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[t+4>>2]=n;t=a+8|0;n=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=t;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function ut(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+512|0;l=a;ht(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=w+16|0;t=i+u|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f<<5;h=l+(s|16)|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=XT(k^n|0,h^t|0,1)|0;o=YT(k|n|0,h|t|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+u|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;w=w+24|0;u=i+w|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+w|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function ht(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;wt(e,i,r,f);wt(e+16|0,i+16|0,r,f);l=f<<3;a=r<<3;wt(e+a|0,i+l|0,r,f);wt(e+(a+16)|0,i+(l+16)|0,r,f);return}function wt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=r>>1;w=f>>1;h=0;while(1){l=i+2|0;f=i+-2|0;n=i+4|0;r=Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;o=i+6|0;r=(((Ji[l>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi((Ji[o>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;u=i+8|0;r=(((Ji[n>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+2>>1]=r;r=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;s=i+10|0;r=(((Ji[o>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+4>>1]=r;r=Zi((Ji[s>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;t=i+12|0;r=(((Ji[u>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[l>>1]|0)+r+(Ji[t>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+6>>1]=r;r=Zi((Ji[t>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;a=i+14|0;r=(((Ji[s>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+8>>1]=r;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+16|0;r=(((Ji[t>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+10>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;f=i+18|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+12>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+14>>1]=r;h=h+1|0;if((h|0)==8)break;else{e=e+(k<<1)|0;i=i+(w<<1)|0}}return}function kt(e,i,r){e=e|0;i=i|0;r=r|0;ht(e,i,r,r);return}function bt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+512|0;l=a;ht(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=i+(w+18)|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<5;t=l+(s|16)|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=XT(n^h|0,t^u|0,1)|0;o=YT(n|h|0,t|u|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+(w+16)|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;u=i+(w+26)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function ct(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function dt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;vt(e,i,r,32);vt(e+16|0,i+16|0,r,32);f=r<<3;vt(e+f|0,i+256|0,r,32);vt(e+(f+16)|0,i+272|0,r,32);return}function vt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;P=r>>1;d=f>>1;A=Zi(d,-2)|0;g=0-d|0;M=d<<1;R=d*3|0;T=d<<2;N=d*5|0;D=d*6|0;C=d*7|0;v=d<<3;E=d*9|0;S=d*10|0;_=P<<1;m=P*3|0;p=P<<2;F=P*5|0;y=P*6|0;O=P*7|0;c=0;while(1){f=Ji[i+(g<<1)>>1]|0;l=Ji[i>>1]|0;a=Ji[i+(d<<1)>>1]|0;n=Ji[i+(M<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(v<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;r=(Ji[i+(A<<1)>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(P<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(_<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(m<<1)>>1]=r;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(p<<1)>>1]=r;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(F<<1)>>1]=r;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(y<<1)>>1]=r;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(O<<1)>>1]=r;c=c+1|0;if((c|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function Et(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function St(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;ht(f,i,32,r);_t(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function _t(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;mt(e,i,r,f,32,l);n=i+16|0;mt(e+16|0,n,r+16|0,f,32,l);a=l<<3;t=f<<3;mt(e+t|0,i,r+a|0,f,32,l);mt(e+(t+16)|0,n,r+(a+16)|0,f,32,l);return}function mt(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){C=a+2|0;N=a+-2|0;D=a+4|0;R=Zi((Ji[D>>1]|0)+(Ji[N>>1]|0)|0,-5)|0;T=a+6|0;Gi[n>>1]=(Ji[a+-4>>1]|0)+(((Ji[C>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+R+(Ji[T>>1]|0);R=Zi((Ji[T>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;M=a+8|0;Gi[n+2>>1]=(Ji[N>>1]|0)+(((Ji[D>>1]|0)+(Ji[C>>1]|0)|0)*20|0)+R+(Ji[M>>1]|0);R=Zi((Ji[M>>1]|0)+(Ji[C>>1]|0)|0,-5)|0;N=a+10|0;Gi[n+4>>1]=(Ji[a>>1]|0)+(((Ji[T>>1]|0)+(Ji[D>>1]|0)|0)*20|0)+R+(Ji[N>>1]|0);R=Zi((Ji[N>>1]|0)+(Ji[D>>1]|0)|0,-5)|0;P=a+12|0;Gi[n+6>>1]=(Ji[C>>1]|0)+(((Ji[M>>1]|0)+(Ji[T>>1]|0)|0)*20|0)+R+(Ji[P>>1]|0);R=Zi((Ji[P>>1]|0)+(Ji[T>>1]|0)|0,-5)|0;C=a+14|0;Gi[n+8>>1]=(Ji[D>>1]|0)+(((Ji[N>>1]|0)+(Ji[M>>1]|0)|0)*20|0)+R+(Ji[C>>1]|0);R=Zi((Ji[C>>1]|0)+(Ji[M>>1]|0)|0,-5)|0;D=a+16|0;Gi[n+10>>1]=(Ji[T>>1]|0)+(((Ji[P>>1]|0)+(Ji[N>>1]|0)|0)*20|0)+R+(Ji[D>>1]|0);R=Zi((Ji[D>>1]|0)+(Ji[N>>1]|0)|0,-5)|0;T=a+18|0;Gi[n+12>>1]=(Ji[M>>1]|0)+(((Ji[C>>1]|0)+(Ji[P>>1]|0)|0)*20|0)+R+(Ji[T>>1]|0);P=Zi((Ji[T>>1]|0)+(Ji[P>>1]|0)|0,-5)|0;Gi[n+14>>1]=(Ji[N>>1]|0)+(((Ji[D>>1]|0)+(Ji[C>>1]|0)|0)*20|0)+P+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<1)|0;a=a+(t<<1)|0}}v=f>>1;E=Zi(l,-2)|0;S=0-l|0;_=l<<1;m=l*3|0;p=l<<2;F=l*5|0;y=l*6|0;O=l*7|0;A=l<<3;g=l*9|0;M=l*10|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;d=i+(l<<1<<1)|0;c=0;while(1){n=Gi[d+(S<<1)>>1]|0;t=Gi[d>>1]|0;r=Gi[d+(l<<1)>>1]|0;o=Gi[d+(_<<1)>>1]|0;f=Gi[d+(m<<1)>>1]|0;i=Gi[d+(p<<1)>>1]|0;s=Gi[d+(F<<1)>>1]|0;u=Gi[d+(y<<1)>>1]|0;h=Gi[d+(O<<1)>>1]|0;w=Gi[d+(A<<1)>>1]|0;k=Gi[d+(g<<1)>>1]|0;b=Gi[d+(M<<1)>>1]|0;a=(Gi[d+(E<<1)>>1]|0)+512+f+((r+t|0)*20|0)+(Zi(o+n|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=a;a=n+512+i+((o+r|0)*20|0)+(Zi(f+t|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(v<<1)>>1]=a;a=t+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(R<<1)>>1]=a;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(T<<1)>>1]=a;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(N<<1)>>1]=a;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(D<<1)>>1]=a;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(C<<1)>>1]=a;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e+(P<<1)>>1]=a;c=c+1|0;if((c|0)==8)break;else{d=d+2|0;e=e+2|0}}return}function pt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Ft(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(e,a+64|0,r);Ue=n;return}function yt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}dt(s,a+64|0,32);_t(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Ot(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+1344|0;_t(e,f,i,r,r);Ue=f;return}function At(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}dt(s,a+64|0,32);_t(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function gt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Mt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Rt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;ht(f,i+r|0,32,r);_t(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Tt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Nt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=0;while(1){n=i;l=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=e;Xi[a>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[a+4>>2]=n;a=i+8|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e+8|0;Xi[l>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[l+4>>2]=a;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Dt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;wt(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Ct(e,i,r){e=e|0;i=i|0;r=r|0;wt(e,i,r,r);return}function Pt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;wt(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Lt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+32)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+32)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function It(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Ht(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;wt(f,i,16,r);mt(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Bt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Ut(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(e,a+32|0,r,16);Ue=n;return}function xt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}vt(s,a+32|0,16,16);mt(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function zt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+416|0;mt(e,f,i,r,16,r);Ue=f;return}function Vt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}vt(s,a+32|0,16,16);mt(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Yt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+48)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+48)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function jt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Kt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;wt(f,i+r|0,16,r);mt(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Wt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Gt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=i;f=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e;Xi[l>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[l+4>>2]=a;l=i+r|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+r|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;f=r<<1;l=i+f|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+f|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;r=r*3|0;i=i+r|0;f=i;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;r=e+r|0;Xi[r>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[r+4>>2]=i;return}function Xt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;qt(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function qt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=f>>1;o=0;while(1){t=i+2|0;f=i+-2|0;a=i+4|0;r=Zi((Ji[a>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;n=i+6|0;r=(((Ji[t>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi((Ji[n>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;l=i+8|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+2>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;f=i+10|0;r=(((Ji[n>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+4>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[i+12>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+6>>1]=r;o=o+1|0;if((o|0)==4)break;else{e=e+(u<<1)|0;i=i+(s<<1)|0}}return}function Jt(e,i,r){e=e|0;i=i|0;r=r|0;qt(e,i,r,r);return}function Zt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;qt(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Qt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{o=i<<3;u=f+(o+16)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function $t(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=r>>1;k=w<<1;b=w*3|0;h=0;while(1){f=Ji[i+-8>>1]|0;l=Ji[i>>1]|0;a=Ji[i+8>>1]|0;n=Ji[i+16>>1]|0;t=Ji[i+24>>1]|0;o=Ji[i+32>>1]|0;s=Ji[i+40>>1]|0;u=Ji[i+48>>1]|0;r=(Ji[i+-16>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(w<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(k<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(b<<1)>>1]=r;h=h+1|0;if((h|0)==4)break;else{e=e+2|0;i=i+2|0}}return}function eo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function io(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;qt(f,i,8,r);ro(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ro(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){h=l+2|0;u=l+-2|0;b=l+4|0;s=Zi((Ji[b>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;k=l+6|0;Gi[a>>1]=(Ji[l+-4>>1]|0)+(((Ji[h>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+s+(Ji[k>>1]|0);s=Zi((Ji[k>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;w=l+8|0;Gi[a+2>>1]=(Ji[u>>1]|0)+(((Ji[b>>1]|0)+(Ji[h>>1]|0)|0)*20|0)+s+(Ji[w>>1]|0);s=Zi((Ji[w>>1]|0)+(Ji[h>>1]|0)|0,-5)|0;u=l+10|0;Gi[a+4>>1]=(Ji[l>>1]|0)+(((Ji[k>>1]|0)+(Ji[b>>1]|0)|0)*20|0)+s+(Ji[u>>1]|0);b=Zi((Ji[u>>1]|0)+(Ji[b>>1]|0)|0,-5)|0;Gi[a+6>>1]=(Ji[h>>1]|0)+(((Ji[w>>1]|0)+(Ji[k>>1]|0)|0)*20|0)+b+(Ji[l+12>>1]|0);t=t+1|0;if((t|0)==9)break;else{a=a+16|0;l=l+(n<<1)|0}}b=f>>1;w=b<<1;k=b*3|0;h=i+32|0;u=0;while(1){a=Gi[h+-16>>1]|0;n=Gi[h>>1]|0;r=Gi[h+16>>1]|0;t=Gi[h+32>>1]|0;f=Gi[h+48>>1]|0;i=Gi[h+64>>1]|0;o=Gi[h+80>>1]|0;s=Gi[h+96>>1]|0;l=(Gi[h+-32>>1]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e+(b<<1)>>1]=l;l=n+512+o+((f+t|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e+(w<<1)>>1]=l;l=r+512+s+((i+f|0)*20|0)+(Zi(o+t|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e+(k<<1)>>1]=l;u=u+1|0;if((u|0)==4)break;else{h=h+2|0;e=e+2|0}}return}function fo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function lo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+80|0;t=f;l=t+16|0;n=r<<1;a=i+(0-n)|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;o=i+(0-r)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[s+4>>2]=o;s=i;o=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=l;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=s;a=i+r|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+24|0;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;n=i+n|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+32|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*3|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+40|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=a;o=i+(r<<2)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=t+48|0;Xi[n>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[n+4>>2]=o;n=i+(r*5|0)|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+56|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*6|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;i=t+64|0;Xi[i>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[i+4>>2]=a;$t(e,l,r);Ue=f;return}function ao(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;$t(l,n,8);ro(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function no(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+144|0;ro(e,f,i,r,r);Ue=f;return}function to(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;$t(l,n,8);ro(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function oo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{o=i<<3;u=f+(o+24)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function so(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;qt(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{u=i<<3;w=f+u|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=l+u|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=XT(o^s|0,u^w|0,1)|0;h=YT(o|s|0,u|w|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(Zi(i,r)|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function uo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;qt(f,i+r|0,8,r);ro(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ho(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function wo(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;i=i+r|0;Xi[e+r>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;return}function ko(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;bo(l,i,4,r);a=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+r|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function bo(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;s=r>>1;o=f>>1;t=0;while(1){a=i+2|0;n=i+-2|0;f=i+4|0;r=Zi((Ji[f>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;l=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;r=(((Ji[f>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[i+8>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+2>>1]=r;t=t+1|0;if((t|0)==2)break;else{e=e+(s<<1)|0;i=i+(o<<1)|0}}return}function co(e,i,r){e=e|0;i=i|0;r=r|0;bo(e,i,r,r);return}function vo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;bo(l,i,4,r);a=i+2|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+(r+2)|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Eo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;s=r<<1;n=i+(0-s)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t>>2]=n;l=i+r|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+12>>2]=l;s=i+s|0;Xi[o+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function So(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){t=Ji[i+-4>>1]|0;o=Ji[i>>1]|0;f=Ji[i+4>>1]|0;l=Ji[i+8>>1]|0;a=Ji[i+12>>1]|0;n=Ji[i+16>>1]|0;r=(Ji[i+-8>>1]|0)+16+a+((f+o|0)*20|0)+(Zi(l+t|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=t+16+n+((l+f|0)*20|0)+(Zi(a+o|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(u<<1)>>1]=r;s=s+1|0;if((s|0)==2)break;else{e=e+2|0;i=i+2|0}}return}function _o(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;bo(a,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function mo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+80|0;a=f+8|0;l=f;bo(a,i,4,r);po(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function po(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){s=l+2|0;r=l+-2|0;o=l+4|0;h=Zi((Ji[o>>1]|0)+(Ji[r>>1]|0)|0,-5)|0;u=l+6|0;Gi[a>>1]=(Ji[l+-4>>1]|0)+(((Ji[s>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+h+(Ji[u>>1]|0);u=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;Gi[a+2>>1]=(Ji[r>>1]|0)+(((Ji[o>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+u+(Ji[l+8>>1]|0);t=t+1|0;if((t|0)==7)break;else{a=a+8|0;l=l+(n<<1)|0}}u=f>>1;s=i+16|0;o=0;while(1){a=Gi[s+-8>>1]|0;n=Gi[s>>1]|0;r=Gi[s+8>>1]|0;t=Gi[s+16>>1]|0;f=Gi[s+24>>1]|0;i=Gi[s+32>>1]|0;l=(Gi[s+-16>>1]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=512)l=0-l>>31&511;Gi[e+(u<<1)>>1]=l;o=o+1|0;if((o|0)==2)break;else{s=s+2|0;e=e+2|0}}return}function Fo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;bo(a,i,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function yo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+32|0;a=f;l=a+8|0;n=r<<1;t=i+(0-n)|0;Xi[a>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(0-r)|0;Xi[a+4>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[l>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=i+r|0;Xi[a+12>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=i+n|0;Xi[a+16>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*3|0)|0;Xi[a+20>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;i=i+(r<<2)|0;Xi[a+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(e,l,r);Ue=f;return}function Oo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+112|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;So(a,n,4);po(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Ao(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+64|0;po(e,f,i,r,r);Ue=f;return}function go(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+112|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;So(a,n,4);po(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Mo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;l=r<<1;n=i+(0-l)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=i+r|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+12>>2]=n;l=i+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+16>>2]=l;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function Ro(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;s=i+r|0;bo(a,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function To(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+80|0;a=f+8|0;l=f;bo(a,i+r|0,4,r);po(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function No(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;bo(a,i+r|0,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;So(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Do(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;f=i;l=e;a=0;while(1){n=l;s=Xi[n>>2]|0;n=Xi[n+4>>2]|0;u=f;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=XT(h^s|0,u^n|0,1)|0;o=YT(h|s|0,u|n|0,o&2147450879|0,Ie&2147450879|0)|0;n=l;Xi[n>>2]=o;Xi[n+4>>2]=Ie;n=l+8|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;s=f+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){h=f;o=Xi[h>>2]|0;h=Xi[h+4>>2]|0;t=a;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=XT(n^o|0,t^h|0,1)|0;s=YT(n|o|0,t|h|0,s&2147450879|0,Ie&2147450879|0)|0;h=f;Xi[h>>2]=s;Xi[h+4>>2]=Ie;h=f+8|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;o=a+8|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function Co(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;ht(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;w=c+16|0;k=i+w|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+w|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;c=c+24|0;w=i+c|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+c|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Po(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;Lo(e,i,r,r);Lo(e+16|0,i+16|0,r,r);f=r<<3;Lo(e+f|0,i+f|0,r,r);f=f+16|0;Lo(e+f|0,i+f|0,r,r);return}function Lo(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=r>>1;k=f>>1;w=0;while(1){a=i+2|0;f=i+-2|0;t=i+4|0;r=Zi((Ji[t>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;s=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;r=Zi((Ji[s>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;h=i+8|0;r=(((Ji[t>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[h>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;r=Zi((Ji[h>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;u=i+10|0;r=(((Ji[s>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=Zi((Ji[u>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;o=i+12|0;r=(((Ji[h>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[a>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+8|0;r=Zi((Ji[o>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;n=i+14|0;r=(((Ji[u>>1]|0)+(Ji[h>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+10|0;r=Zi((Ji[n>>1]|0)+(Ji[h>>1]|0)|0,-5)|0;a=i+16|0;r=(((Ji[o>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+12|0;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+18|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[h>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+14|0;r=Zi((Ji[l>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;r=(((Ji[a>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;w=w+1|0;if((w|0)==8)break;else{e=e+(b<<1)|0;i=i+(k<<1)|0}}return}function Io(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;ht(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;k=i+(c+18)|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=i+(c+26)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Ho(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+64)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+64)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+80)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+80)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Bo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Uo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;ht(f,i,32,r);_t(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function xo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function zo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Vo(e,a+64|0,r,32);Vo(e+16|0,a+80|0,r,32);u=r<<3;Vo(e+u|0,a+320|0,r,32);Vo(e+(u+16)|0,a+336|0,r,32);Ue=n;return}function Vo(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;L=r>>1;v=f>>1;g=Zi(v,-2)|0;M=0-v|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;E=v<<3;S=v*9|0;_=v*10|0;m=L<<1;p=L*3|0;F=L<<2;y=L*5|0;O=L*6|0;A=L*7|0;d=0;while(1){f=Ji[i+(M<<1)>>1]|0;a=Ji[i>>1]|0;n=Ji[i+(v<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(P<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;c=Ji[i+(_<<1)>>1]|0;r=(Ji[i+(g<<1)>>1]|0)+16+o+((n+a|0)*20|0)+(Zi(t+f|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+(L<<1)|0;r=f+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+(m<<1)|0;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(p<<1)|0;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(F<<1)|0;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(y<<1)|0;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(O<<1)|0;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(A<<1)|0;r=u+16+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;d=d+1|0;if((d|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function Yo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}dt(s,a+64|0,32);_t(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function jo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+1344|0;n=f;Ko(e,n,i,r,32,r);a=n+16|0;Ko(e+16|0,a,i+16|0,r,32,r);l=r<<3;Ko(e+l|0,n,i+l|0,r,32,r);l=l+16|0;Ko(e+l|0,a,i+l|0,r,32,r);Ue=f;return}function Ko(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){P=a+2|0;D=a+-2|0;C=a+4|0;T=Zi((Ji[C>>1]|0)+(Ji[D>>1]|0)|0,-5)|0;N=a+6|0;Gi[n>>1]=(Ji[a+-4>>1]|0)+(((Ji[P>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+T+(Ji[N>>1]|0);T=Zi((Ji[N>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;R=a+8|0;Gi[n+2>>1]=(Ji[D>>1]|0)+(((Ji[C>>1]|0)+(Ji[P>>1]|0)|0)*20|0)+T+(Ji[R>>1]|0);T=Zi((Ji[R>>1]|0)+(Ji[P>>1]|0)|0,-5)|0;D=a+10|0;Gi[n+4>>1]=(Ji[a>>1]|0)+(((Ji[N>>1]|0)+(Ji[C>>1]|0)|0)*20|0)+T+(Ji[D>>1]|0);T=Zi((Ji[D>>1]|0)+(Ji[C>>1]|0)|0,-5)|0;L=a+12|0;Gi[n+6>>1]=(Ji[P>>1]|0)+(((Ji[R>>1]|0)+(Ji[N>>1]|0)|0)*20|0)+T+(Ji[L>>1]|0);T=Zi((Ji[L>>1]|0)+(Ji[N>>1]|0)|0,-5)|0;P=a+14|0;Gi[n+8>>1]=(Ji[C>>1]|0)+(((Ji[D>>1]|0)+(Ji[R>>1]|0)|0)*20|0)+T+(Ji[P>>1]|0);T=Zi((Ji[P>>1]|0)+(Ji[R>>1]|0)|0,-5)|0;C=a+16|0;Gi[n+10>>1]=(Ji[N>>1]|0)+(((Ji[L>>1]|0)+(Ji[D>>1]|0)|0)*20|0)+T+(Ji[C>>1]|0);T=Zi((Ji[C>>1]|0)+(Ji[D>>1]|0)|0,-5)|0;N=a+18|0;Gi[n+12>>1]=(Ji[R>>1]|0)+(((Ji[P>>1]|0)+(Ji[L>>1]|0)|0)*20|0)+T+(Ji[N>>1]|0);L=Zi((Ji[N>>1]|0)+(Ji[L>>1]|0)|0,-5)|0;Gi[n+14>>1]=(Ji[D>>1]|0)+(((Ji[C>>1]|0)+(Ji[P>>1]|0)|0)*20|0)+L+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<1)|0;a=a+(t<<1)|0}}E=f>>1;S=Zi(l,-2)|0;_=0-l|0;m=l<<1;p=l*3|0;F=l<<2;y=l*5|0;O=l*6|0;A=l*7|0;g=l<<3;M=l*9|0;R=l*10|0;T=E<<1;N=E*3|0;D=E<<2;C=E*5|0;P=E*6|0;L=E*7|0;v=i+(l<<1<<1)|0;d=0;while(1){n=Gi[v+(_<<1)>>1]|0;r=Gi[v>>1]|0;o=Gi[v+(l<<1)>>1]|0;f=Gi[v+(m<<1)>>1]|0;i=Gi[v+(p<<1)>>1]|0;s=Gi[v+(F<<1)>>1]|0;u=Gi[v+(y<<1)>>1]|0;h=Gi[v+(O<<1)>>1]|0;w=Gi[v+(A<<1)>>1]|0;k=Gi[v+(g<<1)>>1]|0;b=Gi[v+(M<<1)>>1]|0;c=Gi[v+(R<<1)>>1]|0;a=(Gi[v+(S<<1)>>1]|0)+512+i+((o+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+a|0)>>>1;t=e+(E<<1)|0;a=n+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[t>>1]=((Ji[t>>1]|0)+1+a|0)>>>1;n=e+(T<<1)|0;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(N<<1)|0;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(D<<1)|0;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(C<<1)|0;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(P<<1)|0;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(L<<1)|0;a=u+512+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>10;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;d=d+1|0;if((d|0)==8)break;else{v=v+2|0;e=e+2|0}}return}function Wo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}dt(s,a+64|0,32);_t(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Go(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+96)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+96)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+112)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+112)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Xo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function qo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;ht(f,i+r|0,32,r);_t(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Jo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;ht(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}dt(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Zo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=0;while(1){l=e;t=Xi[l>>2]|0;l=Xi[l+4>>2]|0;o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=XT(s^t|0,o^l|0,1)|0;n=YT(s|t|0,o|l|0,n&2147450879|0,Ie&2147450879|0)|0;l=e;Xi[l>>2]=n;Xi[l+4>>2]=Ie;l=e+8|0;n=l;o=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=i+8|0;s=t;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;a=XT(s^o|0,t^n|0,1)|0;a=YT(s|o|0,t|n|0,a&2147450879|0,Ie&2147450879|0)|0;Xi[l>>2]=a;Xi[l+4>>2]=Ie;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Qo(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;wt(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function $o(e,i,r){e=e|0;i=i|0;r=r|0;Lo(e,i,r,r);return}function es(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;wt(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function is(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+32)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+32)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function rs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function fs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;wt(f,i,16,r);mt(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function ls(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function as(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Vo(e,a+32|0,r,16);Ue=n;return}function ns(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}vt(s,a+32|0,16,16);mt(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function ts(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+416|0;Ko(e,f,i,r,16,r);Ue=f;return}function os(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}vt(s,a+32|0,16,16);mt(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function ss(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+48)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+48)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function us(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function hs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;wt(f,i+r|0,16,r);mt(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function ws(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;wt(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}vt(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function ks(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=e;t=Xi[n>>2]|0;n=Xi[n+4>>2]|0;o=i;l=o;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;a=XT(l^t|0,o^n|0,1)|0;a=YT(l|t|0,o|n|0,a&2147450879|0,Ie&2147450879|0)|0;n=e;Xi[n>>2]=a;Xi[n+4>>2]=Ie;n=e+r|0;a=n;o=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=i+r|0;l=t;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;f=XT(l^o|0,t^a|0,1)|0;f=YT(l|o|0,t|a|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=f;Xi[n+4>>2]=Ie;n=r<<1;f=e+n|0;a=f;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;n=i+n|0;o=n;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;l=XT(o^t|0,n^a|0,1)|0;l=YT(o|t|0,n|a|0,l&2147450879|0,Ie&2147450879|0)|0;Xi[f>>2]=l;Xi[f+4>>2]=Ie;f=r*3|0;r=e+f|0;e=r;l=Xi[e>>2]|0;e=Xi[e+4>>2]|0;f=i+f|0;a=f;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;i=XT(a^l|0,f^e|0,1)|0;i=YT(a|l|0,f|e|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[r>>2]=i;Xi[r+4>>2]=Ie;return}function bs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;qt(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function cs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){o=i+2|0;f=i+-2|0;n=i+4|0;t=i+6|0;r=(((Ji[o>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+(Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0)+(Ji[t>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;a=i+8|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+(Zi((Ji[t>>1]|0)+(Ji[i>>1]|0)|0,-5)|0)+(Ji[a>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;l=i+10|0;r=(((Ji[t>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+(Zi((Ji[a>>1]|0)+(Ji[o>>1]|0)|0,-5)|0)+(Ji[l>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+(Zi((Ji[l>>1]|0)+(Ji[n>>1]|0)|0,-5)|0)+(Ji[i+12>>1]|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;s=s+1|0;if((s|0)==4)break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}return}function ds(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;qt(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+(n+2)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function vs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{s=i<<3;t=f+(s+16)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Es(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Ss(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;qt(f,i,8,r);ro(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function _s(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ms(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+80|0;k=d;w=k+16|0;c=r<<1;b=i+(0-c)|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;f=k;Xi[f>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[f+4>>2]=b;f=i+(0-r)|0;b=f;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=k+8|0;Xi[u>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[u+4>>2]=f;u=i;f=u;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;b=w;Xi[b>>2]=f;Xi[b+4>>2]=u;b=i+r|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+24|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=b;c=i+c|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+32|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*3|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+40|0;Xi[h>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[h+4>>2]=b;h=i+(r<<2)|0;b=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;c=k+48|0;Xi[c>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[c+4>>2]=h;c=i+(r*5|0)|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+56|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*6|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;k=k+64|0;Xi[k>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[k+4>>2]=b;k=r>>1;b=k<<1;c=k*3|0;f=f&65535;i=0;while(1){l=Ji[w+-8>>1]|0;a=f&65535;n=Ji[w+8>>1]|0;t=Ji[w+16>>1]|0;o=Ji[w+24>>1]|0;s=Ji[w+32>>1]|0;u=Ji[w+40>>1]|0;h=Ji[w+48>>1]|0;r=((n+a|0)*20|0)+((Ji[w+-16>>1]|0)+16+o)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((t+n|0)*20|0)+(l+16+s)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((o+t|0)*20|0)+(a+16+u)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((s+o|0)*20|0)+(n+16+h)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;r=w+2|0;i=i+1|0;if((i|0)==4)break;f=Gi[r>>1]|0;e=e+2|0;w=r}Ue=d;return}function ps(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;$t(l,n,8);ro(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Fs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+144|0;a=d;b=r>>1;c=b<<1;f=a;l=0;r=i+(0-c<<1)|0;while(1){o=Ji[r>>1]|0;s=Ji[r+2>>1]|0;w=Ji[r+-2>>1]|0;k=Ji[r+4>>1]|0;h=Ji[r+6>>1]|0;Gi[f>>1]=(Ji[r+-4>>1]|0)+((s+o|0)*20|0)+(Zi(k+w|0,-5)|0)+h;u=Ji[r+8>>1]|0;Gi[f+2>>1]=w+((k+s|0)*20|0)+(Zi(h+o|0,-5)|0)+u;w=Ji[r+10>>1]|0;Gi[f+4>>1]=o+((h+k|0)*20|0)+(Zi(u+s|0,-5)|0)+w;Gi[f+6>>1]=s+((u+h|0)*20|0)+(Zi(w+k|0,-5)|0)+(Ji[r+12>>1]|0);l=l+1|0;if((l|0)==9)break;else{f=f+16|0;r=r+(b<<1)|0}}k=b*3|0;w=a+32|0;h=0;while(1){l=Gi[w+-16>>1]|0;i=Gi[w>>1]|0;a=Gi[w+16>>1]|0;n=Gi[w+32>>1]|0;t=Gi[w+48>>1]|0;o=Gi[w+64>>1]|0;s=Gi[w+80>>1]|0;u=Gi[w+96>>1]|0;r=((a+i|0)*20|0)+((Gi[w+-32>>1]|0)+512+t)+(Zi(n+l|0,-5)|0)>>10;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((n+a|0)*20|0)+(l+512+o)+(Zi(t+i|0,-5)|0)>>10;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((t+n|0)*20|0)+(i+512+s)+(Zi(o+a|0,-5)|0)>>10;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((o+t|0)*20|0)+(a+512+u)+(Zi(s+n|0,-5)|0)>>10;if(r>>>0>=512)r=0-r>>31&511;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;h=h+1|0;if((h|0)==4)break;else{w=w+2|0;e=e+2|0}}Ue=d;return}function ys(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;$t(l,n,8);ro(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Os(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{s=i<<3;t=f+(s+24)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function As(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;qt(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{h=i<<3;s=f+h|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=l+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(Zi(i,r)|0)|0;u=w;o=Xi[u>>2]|0;u=Xi[u+4>>2]|0;t=XT(k^n|0,h^s|0,1)|0;t=YT(k|n|0,h|s|0,t&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function gs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;qt(f,i+r|0,8,r);ro(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Ms(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;qt(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;$t(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Rs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=i;l=e;a=0;while(1){o=f;n=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l;Xi[t>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t+4>>2]=o;t=f+8|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+8|0;Xi[n>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n+4>>2]=t;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){n=a;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f;Xi[t>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[t+4>>2]=n;t=a+8|0;n=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=t;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function Ts(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+512|0;l=a;Ns(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=w+16|0;t=i+u|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f<<5;h=l+(s|16)|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=XT(k^n|0,h^t|0,1)|0;o=YT(k|n|0,h|t|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+u|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;w=w+24|0;u=i+w|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+w|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Ns(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;Ds(e,i,r,f);Ds(e+16|0,i+16|0,r,f);l=f<<3;a=r<<3;Ds(e+a|0,i+l|0,r,f);Ds(e+(a+16)|0,i+(l+16)|0,r,f);return}function Ds(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=r>>1;w=f>>1;h=0;while(1){l=i+2|0;f=i+-2|0;n=i+4|0;r=Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;o=i+6|0;r=(((Ji[l>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi((Ji[o>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;u=i+8|0;r=(((Ji[n>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+2>>1]=r;r=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;s=i+10|0;r=(((Ji[o>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+4>>1]=r;r=Zi((Ji[s>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;t=i+12|0;r=(((Ji[u>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[l>>1]|0)+r+(Ji[t>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+6>>1]=r;r=Zi((Ji[t>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;a=i+14|0;r=(((Ji[s>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+8>>1]=r;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+16|0;r=(((Ji[t>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+10>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;f=i+18|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+12>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+14>>1]=r;h=h+1|0;if((h|0)==8)break;else{e=e+(k<<1)|0;i=i+(w<<1)|0}}return}function Cs(e,i,r){e=e|0;i=i|0;r=r|0;Ns(e,i,r,r);return}function Ps(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+512|0;l=a;Ns(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=i+(w+18)|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<5;t=l+(s|16)|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=XT(n^h|0,t^u|0,1)|0;o=YT(n|h|0,t|u|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+(w+16)|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;u=i+(w+26)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Ls(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Is(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;Hs(e,i,r,32);Hs(e+16|0,i+16|0,r,32);f=r<<3;Hs(e+f|0,i+256|0,r,32);Hs(e+(f+16)|0,i+272|0,r,32);return}function Hs(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;P=r>>1;d=f>>1;A=Zi(d,-2)|0;g=0-d|0;M=d<<1;R=d*3|0;T=d<<2;N=d*5|0;D=d*6|0;C=d*7|0;v=d<<3;E=d*9|0;S=d*10|0;_=P<<1;m=P*3|0;p=P<<2;F=P*5|0;y=P*6|0;O=P*7|0;c=0;while(1){f=Ji[i+(g<<1)>>1]|0;l=Ji[i>>1]|0;a=Ji[i+(d<<1)>>1]|0;n=Ji[i+(M<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(v<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;r=(Ji[i+(A<<1)>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(P<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(_<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(m<<1)>>1]=r;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(p<<1)>>1]=r;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(F<<1)>>1]=r;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(y<<1)>>1]=r;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(O<<1)>>1]=r;c=c+1|0;if((c|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function Bs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Us(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;Ns(f,i,32,r);xs(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function xs(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;zs(e,i,r,f,32,l);n=i+16|0;zs(e+16|0,n,r+16|0,f,32,l);a=l<<3;t=f<<3;zs(e+t|0,i,r+a|0,f,32,l);zs(e+(t+16)|0,n,r+(a+16)|0,f,32,l);return}function zs(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){B=a+2|0;U=a+-2|0;H=a+4|0;L=Zi((Ji[H>>1]|0)+(Ji[U>>1]|0)|0,-5)|0;I=a+6|0;Gi[n>>1]=(((Ji[B>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+55306+(Ji[a+-4>>1]|0)+L+(Ji[I>>1]|0);L=Zi((Ji[I>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;P=a+8|0;Gi[n+2>>1]=(((Ji[H>>1]|0)+(Ji[B>>1]|0)|0)*20|0)+55306+(Ji[U>>1]|0)+L+(Ji[P>>1]|0);L=Zi((Ji[P>>1]|0)+(Ji[B>>1]|0)|0,-5)|0;U=a+10|0;Gi[n+4>>1]=(((Ji[I>>1]|0)+(Ji[H>>1]|0)|0)*20|0)+55306+(Ji[a>>1]|0)+L+(Ji[U>>1]|0);L=Zi((Ji[U>>1]|0)+(Ji[H>>1]|0)|0,-5)|0;x=a+12|0;Gi[n+6>>1]=(((Ji[P>>1]|0)+(Ji[I>>1]|0)|0)*20|0)+55306+(Ji[B>>1]|0)+L+(Ji[x>>1]|0);L=Zi((Ji[x>>1]|0)+(Ji[I>>1]|0)|0,-5)|0;B=a+14|0;Gi[n+8>>1]=(((Ji[U>>1]|0)+(Ji[P>>1]|0)|0)*20|0)+55306+(Ji[H>>1]|0)+L+(Ji[B>>1]|0);L=Zi((Ji[B>>1]|0)+(Ji[P>>1]|0)|0,-5)|0;H=a+16|0;Gi[n+10>>1]=(((Ji[x>>1]|0)+(Ji[U>>1]|0)|0)*20|0)+55306+(Ji[I>>1]|0)+L+(Ji[H>>1]|0);L=Zi((Ji[H>>1]|0)+(Ji[U>>1]|0)|0,-5)|0;I=a+18|0;Gi[n+12>>1]=(((Ji[B>>1]|0)+(Ji[x>>1]|0)|0)*20|0)+55306+(Ji[P>>1]|0)+L+(Ji[I>>1]|0);x=Zi((Ji[I>>1]|0)+(Ji[x>>1]|0)|0,-5)|0;Gi[n+14>>1]=(((Ji[H>>1]|0)+(Ji[B>>1]|0)|0)*20|0)+55306+(Ji[U>>1]|0)+x+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<1)|0;a=a+(t<<1)|0}}F=f>>1;y=Zi(l,-2)|0;O=0-l|0;A=l<<1;g=l*3|0;M=l<<2;R=l*5|0;T=l*6|0;N=l*7|0;D=l<<3;C=l*9|0;P=l*10|0;L=F<<1;I=F*3|0;H=F<<2;B=F*5|0;U=F*6|0;x=F*7|0;p=i+(l<<1<<1)|0;m=0;while(1){n=Gi[p+(O<<1)>>1]|0;r=Gi[p>>1]|0;t=r+10230|0;f=Gi[p+(l<<1)>>1]|0;o=f+10230|0;s=Gi[p+(A<<1)>>1]|0;i=s+10230|0;h=Gi[p+(g<<1)>>1]|0;u=h+10230|0;k=Gi[p+(M<<1)>>1]|0;w=k+10230|0;c=Gi[p+(R<<1)>>1]|0;b=c+10230|0;d=(Gi[p+(T<<1)>>1]|0)+10230|0;v=(Gi[p+(N<<1)>>1]|0)+10230|0;E=(Gi[p+(D<<1)>>1]|0)+10230|0;S=(Gi[p+(C<<1)>>1]|0)+10230|0;_=Gi[p+(P<<1)>>1]|0;a=(Gi[p+(y<<1)>>1]|0)+10742+u+((o+t|0)*20|0)+(Zi(i+(n+10230)|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=a;a=n+10742+w+((i+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(F<<1)>>1]=a;a=r+10742+b+((u+i|0)*20|0)+(Zi(w+o|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(L<<1)>>1]=a;a=f+10742+d+((w+u|0)*20|0)+(Zi(b+i|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(I<<1)>>1]=a;a=s+10742+v+((b+w|0)*20|0)+(Zi(d+u|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(H<<1)>>1]=a;a=h+10742+E+((d+b|0)*20|0)+(Zi(v+w|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(B<<1)>>1]=a;a=k+10742+S+((v+d|0)*20|0)+(Zi(E+b|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(U<<1)>>1]=a;a=c+20972+_+((E+v|0)*20|0)+(Zi(S+d|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e+(x<<1)>>1]=a;m=m+1|0;if((m|0)==8)break;else{p=p+2|0;e=e+2|0}}return}function Vs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Ys(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(e,a+64|0,r);Ue=n;return}function js(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}Is(s,a+64|0,32);xs(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Ks(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+1344|0;xs(e,f,i,r,r);Ue=f;return}function Ws(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}Is(s,a+64|0,32);xs(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Gs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Xs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function qs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;Ns(f,i+r|0,32,r);xs(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Js(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Zs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=0;while(1){n=i;l=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=e;Xi[a>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[a+4>>2]=n;a=i+8|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e+8|0;Xi[l>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[l+4>>2]=a;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Qs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;Ds(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function $s(e,i,r){e=e|0;i=i|0;r=r|0;Ds(e,i,r,r);return}function eu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;Ds(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function iu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+32)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+32)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function ru(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function fu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;Ds(f,i,16,r);zs(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function lu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function au(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(e,a+32|0,r,16);Ue=n;return}function nu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}Hs(s,a+32|0,16,16);zs(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function tu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+416|0;zs(e,f,i,r,16,r);Ue=f;return}function ou(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}Hs(s,a+32|0,16,16);zs(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function su(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+48)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+48)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function uu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function hu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;Ds(f,i+r|0,16,r);zs(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function wu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function ku(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=i;f=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e;Xi[l>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[l+4>>2]=a;l=i+r|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+r|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;f=r<<1;l=i+f|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+f|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;r=r*3|0;i=i+r|0;f=i;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;r=e+r|0;Xi[r>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[r+4>>2]=i;return}function bu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;cu(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function cu(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=f>>1;o=0;while(1){t=i+2|0;f=i+-2|0;a=i+4|0;r=Zi((Ji[a>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;n=i+6|0;r=(((Ji[t>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi((Ji[n>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;l=i+8|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+2>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;f=i+10|0;r=(((Ji[n>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+4>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[i+12>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+6>>1]=r;o=o+1|0;if((o|0)==4)break;else{e=e+(u<<1)|0;i=i+(s<<1)|0}}return}function du(e,i,r){e=e|0;i=i|0;r=r|0;cu(e,i,r,r);return}function vu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;cu(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Eu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{o=i<<3;u=f+(o+16)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Su(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=r>>1;k=w<<1;b=w*3|0;h=0;while(1){f=Ji[i+-8>>1]|0;l=Ji[i>>1]|0;a=Ji[i+8>>1]|0;n=Ji[i+16>>1]|0;t=Ji[i+24>>1]|0;o=Ji[i+32>>1]|0;s=Ji[i+40>>1]|0;u=Ji[i+48>>1]|0;r=(Ji[i+-16>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(w<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(k<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(b<<1)>>1]=r;h=h+1|0;if((h|0)==4)break;else{e=e+2|0;i=i+2|0}}return}function _u(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function mu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;cu(f,i,8,r);pu(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function pu(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){c=l+2|0;w=l+-2|0;d=l+4|0;h=Zi((Ji[d>>1]|0)+(Ji[w>>1]|0)|0,-5)|0;b=l+6|0;Gi[a>>1]=(((Ji[c>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+55306+(Ji[l+-4>>1]|0)+h+(Ji[b>>1]|0);h=Zi((Ji[b>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;k=l+8|0;Gi[a+2>>1]=(((Ji[d>>1]|0)+(Ji[c>>1]|0)|0)*20|0)+55306+(Ji[w>>1]|0)+h+(Ji[k>>1]|0);h=Zi((Ji[k>>1]|0)+(Ji[c>>1]|0)|0,-5)|0;w=l+10|0;Gi[a+4>>1]=(((Ji[b>>1]|0)+(Ji[d>>1]|0)|0)*20|0)+55306+(Ji[l>>1]|0)+h+(Ji[w>>1]|0);d=Zi((Ji[w>>1]|0)+(Ji[d>>1]|0)|0,-5)|0;Gi[a+6>>1]=(((Ji[k>>1]|0)+(Ji[b>>1]|0)|0)*20|0)+55306+(Ji[c>>1]|0)+d+(Ji[l+12>>1]|0);t=t+1|0;if((t|0)==9)break;else{a=a+16|0;l=l+(n<<1)|0}}b=f>>1;c=b<<1;d=b*3|0;k=i+32|0;w=0;while(1){a=Gi[k+-16>>1]|0;r=Gi[k>>1]|0;n=r+10230|0;f=Gi[k+16>>1]|0;t=f+10230|0;i=(Gi[k+32>>1]|0)+10230|0;o=(Gi[k+48>>1]|0)+10230|0;s=(Gi[k+64>>1]|0)+10230|0;u=(Gi[k+80>>1]|0)+10230|0;h=Gi[k+96>>1]|0;l=(Gi[k+-32>>1]|0)+10742+o+((t+n|0)*20|0)+(Zi(i+(a+10230)|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e>>1]=l;l=a+10742+s+((i+t|0)*20|0)+(Zi(o+n|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e+(b<<1)>>1]=l;l=r+10742+u+((o+i|0)*20|0)+(Zi(s+t|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e+(c<<1)>>1]=l;l=f+20972+h+((s+o|0)*20|0)+(Zi(u+i|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e+(d<<1)>>1]=l;w=w+1|0;if((w|0)==4)break;else{k=k+2|0;e=e+2|0}}return}function Fu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function yu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+80|0;t=f;l=t+16|0;n=r<<1;a=i+(0-n)|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;o=i+(0-r)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[s+4>>2]=o;s=i;o=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=l;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=s;a=i+r|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+24|0;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;n=i+n|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+32|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*3|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+40|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=a;o=i+(r<<2)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=t+48|0;Xi[n>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[n+4>>2]=o;n=i+(r*5|0)|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+56|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*6|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;i=t+64|0;Xi[i>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[i+4>>2]=a;Su(e,l,r);Ue=f;return}function Ou(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Su(l,n,8);pu(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Au(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+144|0;pu(e,f,i,r,r);Ue=f;return}function gu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Su(l,n,8);pu(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Mu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{o=i<<3;u=f+(o+24)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Ru(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;cu(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{u=i<<3;w=f+u|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=l+u|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=XT(o^s|0,u^w|0,1)|0;h=YT(o|s|0,u|w|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(Zi(i,r)|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Tu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;cu(f,i+r|0,8,r);pu(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Nu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Du(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;i=i+r|0;Xi[e+r>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;return}function Cu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Pu(l,i,4,r);a=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+r|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Pu(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;s=r>>1;o=f>>1;t=0;while(1){a=i+2|0;n=i+-2|0;f=i+4|0;r=Zi((Ji[f>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;l=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;r=(((Ji[f>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[i+8>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+2>>1]=r;t=t+1|0;if((t|0)==2)break;else{e=e+(s<<1)|0;i=i+(o<<1)|0}}return}function Lu(e,i,r){e=e|0;i=i|0;r=r|0;Pu(e,i,r,r);return}function Iu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Pu(l,i,4,r);a=i+2|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+(r+2)|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Hu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;s=r<<1;n=i+(0-s)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t>>2]=n;l=i+r|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+12>>2]=l;s=i+s|0;Xi[o+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function Bu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){t=Ji[i+-4>>1]|0;o=Ji[i>>1]|0;f=Ji[i+4>>1]|0;l=Ji[i+8>>1]|0;a=Ji[i+12>>1]|0;n=Ji[i+16>>1]|0;r=(Ji[i+-8>>1]|0)+16+a+((f+o|0)*20|0)+(Zi(l+t|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=t+16+n+((l+f|0)*20|0)+(Zi(a+o|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(u<<1)>>1]=r;s=s+1|0;if((s|0)==2)break;else{e=e+2|0;i=i+2|0}}return}function Uu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Pu(a,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function xu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+80|0;a=f+8|0;l=f;Pu(a,i,4,r);zu(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function zu(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){o=l+2|0;s=l+-2|0;r=l+4|0;h=Zi((Ji[r>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;u=l+6|0;Gi[a>>1]=(((Ji[o>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+55306+(Ji[l+-4>>1]|0)+h+(Ji[u>>1]|0);u=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;Gi[a+2>>1]=(((Ji[r>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+55306+(Ji[s>>1]|0)+u+(Ji[l+8>>1]|0);t=t+1|0;if((t|0)==7)break;else{a=a+8|0;l=l+(n<<1)|0}}u=f>>1;s=i+16|0;o=0;while(1){a=Gi[s+-8>>1]|0;n=(Gi[s>>1]|0)+10230|0;r=(Gi[s+8>>1]|0)+10230|0;t=(Gi[s+16>>1]|0)+10230|0;f=(Gi[s+24>>1]|0)+10230|0;i=Gi[s+32>>1]|0;l=(Gi[s+-16>>1]|0)+10742+f+((r+n|0)*20|0)+(Zi(t+(a+10230)|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e>>1]=l;l=a+20972+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=1024)l=0-l>>31&1023;Gi[e+(u<<1)>>1]=l;o=o+1|0;if((o|0)==2)break;else{s=s+2|0;e=e+2|0}}return}function Vu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Pu(a,i,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Yu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+32|0;a=f;l=a+8|0;n=r<<1;t=i+(0-n)|0;Xi[a>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(0-r)|0;Xi[a+4>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[l>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=i+r|0;Xi[a+12>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=i+n|0;Xi[a+16>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*3|0)|0;Xi[a+20>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;i=i+(r<<2)|0;Xi[a+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(e,l,r);Ue=f;return}function ju(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+112|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Bu(a,n,4);zu(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Ku(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+64|0;zu(e,f,i,r,r);Ue=f;return}function Wu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+112|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Bu(a,n,4);zu(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Gu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;l=r<<1;n=i+(0-l)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=i+r|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+12>>2]=n;l=i+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+16>>2]=l;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function Xu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;s=i+r|0;Pu(a,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function qu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+80|0;a=f+8|0;l=f;Pu(a,i+r|0,4,r);zu(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Ju(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Pu(a,i+r|0,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Bu(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Zu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;f=i;l=e;a=0;while(1){n=l;s=Xi[n>>2]|0;n=Xi[n+4>>2]|0;u=f;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=XT(h^s|0,u^n|0,1)|0;o=YT(h|s|0,u|n|0,o&2147450879|0,Ie&2147450879|0)|0;n=l;Xi[n>>2]=o;Xi[n+4>>2]=Ie;n=l+8|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;s=f+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){h=f;o=Xi[h>>2]|0;h=Xi[h+4>>2]|0;t=a;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=XT(n^o|0,t^h|0,1)|0;s=YT(n|o|0,t|h|0,s&2147450879|0,Ie&2147450879|0)|0;h=f;Xi[h>>2]=s;Xi[h+4>>2]=Ie;h=f+8|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;o=a+8|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function Qu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;Ns(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;w=c+16|0;k=i+w|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+w|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;c=c+24|0;w=i+c|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+c|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function $u(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;eh(e,i,r,r);eh(e+16|0,i+16|0,r,r);f=r<<3;eh(e+f|0,i+f|0,r,r);f=f+16|0;eh(e+f|0,i+f|0,r,r);return}function eh(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=r>>1;k=f>>1;w=0;while(1){a=i+2|0;f=i+-2|0;t=i+4|0;r=Zi((Ji[t>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;s=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;r=Zi((Ji[s>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;h=i+8|0;r=(((Ji[t>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[h>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;r=Zi((Ji[h>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;u=i+10|0;r=(((Ji[s>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=Zi((Ji[u>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;o=i+12|0;r=(((Ji[h>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[a>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+8|0;r=Zi((Ji[o>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;n=i+14|0;r=(((Ji[u>>1]|0)+(Ji[h>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+10|0;r=Zi((Ji[n>>1]|0)+(Ji[h>>1]|0)|0,-5)|0;a=i+16|0;r=(((Ji[o>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+12|0;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+18|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[h>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+14|0;r=Zi((Ji[l>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;r=(((Ji[a>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;w=w+1|0;if((w|0)==8)break;else{e=e+(b<<1)|0;i=i+(k<<1)|0}}return}function ih(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;Ns(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;k=i+(c+18)|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=i+(c+26)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function rh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+64)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+64)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+80)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+80)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function fh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function lh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;Ns(f,i,32,r);xs(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function ah(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function nh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}th(e,a+64|0,r,32);th(e+16|0,a+80|0,r,32);u=r<<3;th(e+u|0,a+320|0,r,32);th(e+(u+16)|0,a+336|0,r,32);Ue=n;return}function th(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;L=r>>1;v=f>>1;g=Zi(v,-2)|0;M=0-v|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;E=v<<3;S=v*9|0;_=v*10|0;m=L<<1;p=L*3|0;F=L<<2;y=L*5|0;O=L*6|0;A=L*7|0;d=0;while(1){f=Ji[i+(M<<1)>>1]|0;a=Ji[i>>1]|0;n=Ji[i+(v<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(P<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;c=Ji[i+(_<<1)>>1]|0;r=(Ji[i+(g<<1)>>1]|0)+16+o+((n+a|0)*20|0)+(Zi(t+f|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+(L<<1)|0;r=f+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+(m<<1)|0;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(p<<1)|0;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(F<<1)|0;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(y<<1)|0;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(O<<1)|0;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(A<<1)|0;r=u+16+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;d=d+1|0;if((d|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function oh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}Is(s,a+64|0,32);xs(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function sh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+1344|0;n=f;uh(e,n,i,r,32,r);a=n+16|0;uh(e+16|0,a,i+16|0,r,32,r);l=r<<3;uh(e+l|0,n,i+l|0,r,32,r);l=l+16|0;uh(e+l|0,a,i+l|0,r,32,r);Ue=f;return}function uh(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){U=a+2|0;x=a+-2|0;B=a+4|0;I=Zi((Ji[B>>1]|0)+(Ji[x>>1]|0)|0,-5)|0;H=a+6|0;Gi[n>>1]=(((Ji[U>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+55306+(Ji[a+-4>>1]|0)+I+(Ji[H>>1]|0);I=Zi((Ji[H>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;L=a+8|0;Gi[n+2>>1]=(((Ji[B>>1]|0)+(Ji[U>>1]|0)|0)*20|0)+55306+(Ji[x>>1]|0)+I+(Ji[L>>1]|0);I=Zi((Ji[L>>1]|0)+(Ji[U>>1]|0)|0,-5)|0;x=a+10|0;Gi[n+4>>1]=(((Ji[H>>1]|0)+(Ji[B>>1]|0)|0)*20|0)+55306+(Ji[a>>1]|0)+I+(Ji[x>>1]|0);I=Zi((Ji[x>>1]|0)+(Ji[B>>1]|0)|0,-5)|0;z=a+12|0;Gi[n+6>>1]=(((Ji[L>>1]|0)+(Ji[H>>1]|0)|0)*20|0)+55306+(Ji[U>>1]|0)+I+(Ji[z>>1]|0);I=Zi((Ji[z>>1]|0)+(Ji[H>>1]|0)|0,-5)|0;U=a+14|0;Gi[n+8>>1]=(((Ji[x>>1]|0)+(Ji[L>>1]|0)|0)*20|0)+55306+(Ji[B>>1]|0)+I+(Ji[U>>1]|0);I=Zi((Ji[U>>1]|0)+(Ji[L>>1]|0)|0,-5)|0;B=a+16|0;Gi[n+10>>1]=(((Ji[z>>1]|0)+(Ji[x>>1]|0)|0)*20|0)+55306+(Ji[H>>1]|0)+I+(Ji[B>>1]|0);I=Zi((Ji[B>>1]|0)+(Ji[x>>1]|0)|0,-5)|0;H=a+18|0;Gi[n+12>>1]=(((Ji[U>>1]|0)+(Ji[z>>1]|0)|0)*20|0)+55306+(Ji[L>>1]|0)+I+(Ji[H>>1]|0);z=Zi((Ji[H>>1]|0)+(Ji[z>>1]|0)|0,-5)|0;Gi[n+14>>1]=(((Ji[B>>1]|0)+(Ji[U>>1]|0)|0)*20|0)+55306+(Ji[x>>1]|0)+z+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<1)|0;a=a+(t<<1)|0}}y=f>>1;O=Zi(l,-2)|0;A=0-l|0;g=l<<1;M=l*3|0;R=l<<2;T=l*5|0;N=l*6|0;D=l*7|0;C=l<<3;P=l*9|0;L=l*10|0;I=y<<1;H=y*3|0;B=y<<2;U=y*5|0;x=y*6|0;z=y*7|0;F=i+(l<<1<<1)|0;p=0;while(1){n=Gi[F+(A<<1)>>1]|0;o=Gi[F>>1]|0;t=o+10230|0;i=Gi[F+(l<<1)>>1]|0;f=i+10230|0;u=Gi[F+(g<<1)>>1]|0;s=u+10230|0;w=Gi[F+(M<<1)>>1]|0;h=w+10230|0;b=Gi[F+(R<<1)>>1]|0;k=b+10230|0;d=Gi[F+(T<<1)>>1]|0;c=d+10230|0;v=(Gi[F+(N<<1)>>1]|0)+10230|0;E=(Gi[F+(D<<1)>>1]|0)+10230|0;S=(Gi[F+(C<<1)>>1]|0)+10230|0;_=(Gi[F+(P<<1)>>1]|0)+10230|0;m=Gi[F+(L<<1)>>1]|0;a=(Gi[F+(O<<1)>>1]|0)+10742+h+((f+t|0)*20|0)+(Zi(s+(n+10230)|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+a|0)>>>1;r=e+(y<<1)|0;a=n+10742+k+((s+f|0)*20|0)+(Zi(h+t|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[r>>1]=((Ji[r>>1]|0)+1+a|0)>>>1;n=e+(I<<1)|0;a=o+10742+c+((h+s|0)*20|0)+(Zi(k+f|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(H<<1)|0;a=i+10742+v+((k+h|0)*20|0)+(Zi(c+s|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(B<<1)|0;a=u+10742+E+((c+k|0)*20|0)+(Zi(v+h|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(U<<1)|0;a=w+10742+S+((v+c|0)*20|0)+(Zi(E+k|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(x<<1)|0;a=b+10742+_+((E+v|0)*20|0)+(Zi(S+c|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(z<<1)|0;a=d+20972+m+((S+E|0)*20|0)+(Zi(_+v|0,-5)|0)>>10;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;p=p+1|0;if((p|0)==8)break;else{F=F+2|0;e=e+2|0}}return}function hh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+3040|0;a=u+2368|0;t=u;s=u+1856|0;o=u+1344|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}Is(s,a+64|0,32);xs(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function wh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+96)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+96)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+112)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+112)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function kh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function bh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+2368|0;f=a+1856|0;l=a+1344|0;Ns(f,i+r|0,32,r);xs(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function ch(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Ns(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Is(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function dh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=0;while(1){l=e;t=Xi[l>>2]|0;l=Xi[l+4>>2]|0;o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=XT(s^t|0,o^l|0,1)|0;n=YT(s|t|0,o|l|0,n&2147450879|0,Ie&2147450879|0)|0;l=e;Xi[l>>2]=n;Xi[l+4>>2]=Ie;l=e+8|0;n=l;o=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=i+8|0;s=t;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;a=XT(s^o|0,t^n|0,1)|0;a=YT(s|o|0,t|n|0,a&2147450879|0,Ie&2147450879|0)|0;Xi[l>>2]=a;Xi[l+4>>2]=Ie;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function vh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;Ds(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Eh(e,i,r){e=e|0;i=i|0;r=r|0;eh(e,i,r,r);return}function Sh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;Ds(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function _h(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+32)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+32)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function mh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function ph(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;Ds(f,i,16,r);zs(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Fh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function yh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}th(e,a+32|0,r,16);Ue=n;return}function Oh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}Hs(s,a+32|0,16,16);zs(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Ah(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+416|0;uh(e,f,i,r,16,r);Ue=f;return}function gh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+880|0;a=u+672|0;t=u;s=u+544|0;o=u+416|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}Hs(s,a+32|0,16,16);zs(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Mh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+48)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+48)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function Rh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Th(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+672|0;f=a+544|0;l=a+416|0;Ds(f,i+r|0,16,r);zs(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Nh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Ds(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Hs(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Dh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=e;t=Xi[n>>2]|0;n=Xi[n+4>>2]|0;o=i;l=o;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;a=XT(l^t|0,o^n|0,1)|0;a=YT(l|t|0,o|n|0,a&2147450879|0,Ie&2147450879|0)|0;n=e;Xi[n>>2]=a;Xi[n+4>>2]=Ie;n=e+r|0;a=n;o=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=i+r|0;l=t;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;f=XT(l^o|0,t^a|0,1)|0;f=YT(l|o|0,t|a|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=f;Xi[n+4>>2]=Ie;n=r<<1;f=e+n|0;a=f;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;n=i+n|0;o=n;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;l=XT(o^t|0,n^a|0,1)|0;l=YT(o|t|0,n|a|0,l&2147450879|0,Ie&2147450879|0)|0;Xi[f>>2]=l;Xi[f+4>>2]=Ie;f=r*3|0;r=e+f|0;e=r;l=Xi[e>>2]|0;e=Xi[e+4>>2]|0;f=i+f|0;a=f;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;i=XT(a^l|0,f^e|0,1)|0;i=YT(a|l|0,f|e|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[r>>2]=i;Xi[r+4>>2]=Ie;return}function Ch(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;cu(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Ph(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){o=i+2|0;f=i+-2|0;n=i+4|0;t=i+6|0;r=(((Ji[o>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+(Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0)+(Ji[t>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;a=i+8|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+(Zi((Ji[t>>1]|0)+(Ji[i>>1]|0)|0,-5)|0)+(Ji[a>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;l=i+10|0;r=(((Ji[t>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+(Zi((Ji[a>>1]|0)+(Ji[o>>1]|0)|0,-5)|0)+(Ji[l>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+(Zi((Ji[l>>1]|0)+(Ji[n>>1]|0)|0,-5)|0)+(Ji[i+12>>1]|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;s=s+1|0;if((s|0)==4)break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}return}function Lh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;cu(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+(n+2)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Ih(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{s=i<<3;t=f+(s+16)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Hh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Bh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;cu(f,i,8,r);pu(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Uh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function xh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+80|0;k=d;w=k+16|0;c=r<<1;b=i+(0-c)|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;f=k;Xi[f>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[f+4>>2]=b;f=i+(0-r)|0;b=f;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=k+8|0;Xi[u>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[u+4>>2]=f;u=i;f=u;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;b=w;Xi[b>>2]=f;Xi[b+4>>2]=u;b=i+r|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+24|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=b;c=i+c|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+32|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*3|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+40|0;Xi[h>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[h+4>>2]=b;h=i+(r<<2)|0;b=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;c=k+48|0;Xi[c>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[c+4>>2]=h;c=i+(r*5|0)|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+56|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*6|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;k=k+64|0;Xi[k>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[k+4>>2]=b;k=r>>1;b=k<<1;c=k*3|0;f=f&65535;i=0;while(1){l=Ji[w+-8>>1]|0;a=f&65535;n=Ji[w+8>>1]|0;t=Ji[w+16>>1]|0;o=Ji[w+24>>1]|0;s=Ji[w+32>>1]|0;u=Ji[w+40>>1]|0;h=Ji[w+48>>1]|0;r=((n+a|0)*20|0)+((Ji[w+-16>>1]|0)+16+o)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((t+n|0)*20|0)+(l+16+s)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((o+t|0)*20|0)+(a+16+u)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((s+o|0)*20|0)+(n+16+h)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;r=w+2|0;i=i+1|0;if((i|0)==4)break;f=Gi[r>>1]|0;e=e+2|0;w=r}Ue=d;return}function zh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Su(l,n,8);pu(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Vh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+144|0;a=E;d=r>>1;v=d<<1;f=a;l=0;r=i+(0-v<<1)|0;while(1){u=Ji[r>>1]|0;k=Ji[r+2>>1]|0;b=Ji[r+-2>>1]|0;c=Ji[r+4>>1]|0;w=Ji[r+6>>1]|0;Gi[f>>1]=((k+u|0)*20|0)+55306+(Ji[r+-4>>1]|0)+(Zi(c+b|0,-5)|0)+w;h=Ji[r+8>>1]|0;Gi[f+2>>1]=((c+k|0)*20|0)+55306+b+(Zi(w+u|0,-5)|0)+h;b=Ji[r+10>>1]|0;Gi[f+4>>1]=((w+c|0)*20|0)+55306+u+(Zi(h+k|0,-5)|0)+b;Gi[f+6>>1]=((h+w|0)*20|0)+55306+k+(Zi(b+c|0,-5)|0)+(Ji[r+12>>1]|0);l=l+1|0;if((l|0)==9)break;else{f=f+16|0;r=r+(d<<1)|0}}c=d*3|0;b=a+32|0;k=0;while(1){l=Gi[b+-16>>1]|0;a=Gi[b>>1]|0;i=a+10230|0;s=Gi[b+16>>1]|0;n=s+10230|0;u=(Gi[b+32>>1]|0)+10230|0;h=(Gi[b+48>>1]|0)+10230|0;w=(Gi[b+64>>1]|0)+10230|0;t=(Gi[b+80>>1]|0)+10230|0;o=Gi[b+96>>1]|0;r=((n+i|0)*20|0)+((Gi[b+-32>>1]|0)+10742+h)+(Zi(l+10230+u|0,-5)|0)>>10;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(d<<1)|0;r=((u+n|0)*20|0)+(l+10742+w)+(Zi(h+i|0,-5)|0)>>10;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(v<<1)|0;r=((h+u|0)*20|0)+(a+10742+t)+(Zi(w+n|0,-5)|0)>>10;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=s+20972+o+((w+h|0)*20|0)+(Zi(t+u|0,-5)|0)>>10;if(r>>>0>=1024)r=0-r>>31&1023;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;k=k+1|0;if((k|0)==4)break;else{b=b+2|0;e=e+2|0}}Ue=E;return}function Yh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+288|0;t=a;l=a+248|0;f=a+216|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Su(l,n,8);pu(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function jh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{s=i<<3;t=f+(s+24)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Kh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;cu(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{h=i<<3;s=f+h|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=l+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(Zi(i,r)|0)|0;u=w;o=Xi[u>>2]|0;u=Xi[u+4>>2]|0;t=XT(k^n|0,h^s|0,1)|0;t=YT(k|n|0,h|s|0,t&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Wh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+208|0;f=a+176|0;l=a+144|0;cu(f,i+r|0,8,r);pu(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Gh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;cu(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Su(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Xh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=i;l=e;a=0;while(1){o=f;n=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l;Xi[t>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t+4>>2]=o;t=f+8|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+8|0;Xi[n>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n+4>>2]=t;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){n=a;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f;Xi[t>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[t+4>>2]=n;t=a+8|0;n=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=t;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function qh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+512|0;l=a;Jh(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=w+16|0;t=i+u|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f<<5;h=l+(s|16)|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=XT(k^n|0,h^t|0,1)|0;o=YT(k|n|0,h|t|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+u|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;w=w+24|0;u=i+w|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+w|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Jh(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;Zh(e,i,r,f);Zh(e+16|0,i+16|0,r,f);l=f<<3;a=r<<3;Zh(e+a|0,i+l|0,r,f);Zh(e+(a+16)|0,i+(l+16)|0,r,f);return}function Zh(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=r>>1;w=f>>1;h=0;while(1){l=i+2|0;f=i+-2|0;n=i+4|0;r=Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;o=i+6|0;r=(((Ji[l>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi((Ji[o>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;u=i+8|0;r=(((Ji[n>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+2>>1]=r;r=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;s=i+10|0;r=(((Ji[o>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+4>>1]=r;r=Zi((Ji[s>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;t=i+12|0;r=(((Ji[u>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[l>>1]|0)+r+(Ji[t>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+6>>1]=r;r=Zi((Ji[t>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;a=i+14|0;r=(((Ji[s>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+8>>1]=r;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+16|0;r=(((Ji[t>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+10>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;f=i+18|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+12>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+14>>1]=r;h=h+1|0;if((h|0)==8)break;else{e=e+(k<<1)|0;i=i+(w<<1)|0}}return}function Qh(e,i,r){e=e|0;i=i|0;r=r|0;Jh(e,i,r,r);return}function $h(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+512|0;l=a;Jh(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=i+(w+18)|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<5;t=l+(s|16)|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=XT(n^h|0,t^u|0,1)|0;o=YT(n|h|0,t|u|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+(w+16)|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;u=i+(w+26)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function ew(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function iw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;rw(e,i,r,32);rw(e+16|0,i+16|0,r,32);f=r<<3;rw(e+f|0,i+256|0,r,32);rw(e+(f+16)|0,i+272|0,r,32);return}function rw(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;P=r>>1;d=f>>1;A=Zi(d,-2)|0;g=0-d|0;M=d<<1;R=d*3|0;T=d<<2;N=d*5|0;D=d*6|0;C=d*7|0;v=d<<3;E=d*9|0;S=d*10|0;_=P<<1;m=P*3|0;p=P<<2;F=P*5|0;y=P*6|0;O=P*7|0;c=0;while(1){f=Ji[i+(g<<1)>>1]|0;l=Ji[i>>1]|0;a=Ji[i+(d<<1)>>1]|0;n=Ji[i+(M<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(v<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;r=(Ji[i+(A<<1)>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(P<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(_<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(m<<1)>>1]=r;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(p<<1)>>1]=r;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(F<<1)>>1]=r;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(y<<1)>>1]=r;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(O<<1)>>1]=r;c=c+1|0;if((c|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function fw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function lw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;Jh(f,i,32,r);aw(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function aw(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;nw(e,i,r,f,32,l);n=i+32|0;nw(e+16|0,n,r+16|0,f,32,l);a=l<<3;t=f<<3;nw(e+t|0,i,r+a|0,f,32,l);nw(e+(t+16)|0,n,r+(a+16)|0,f,32,l);return}function nw(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){P=Ji[a>>1]|0;C=Ji[a+2>>1]|0;N=Ji[a+-2>>1]|0;D=Ji[a+4>>1]|0;R=Zi(D+N|0,-5)|0;T=Ji[a+6>>1]|0;Xi[n>>2]=(Ji[a+-4>>1]|0)+((C+P|0)*20|0)+R+T;R=Zi(T+P|0,-5)|0;M=Ji[a+8>>1]|0;Xi[n+4>>2]=N+((D+C|0)*20|0)+R+M;R=Zi(M+C|0,-5)|0;N=Ji[a+10>>1]|0;Xi[n+8>>2]=P+((T+D|0)*20|0)+R+N;R=Zi(N+D|0,-5)|0;P=Ji[a+12>>1]|0;Xi[n+12>>2]=C+((M+T|0)*20|0)+R+P;R=Zi(P+T|0,-5)|0;C=Ji[a+14>>1]|0;Xi[n+16>>2]=D+((N+M|0)*20|0)+R+C;R=Zi(C+M|0,-5)|0;D=Ji[a+16>>1]|0;Xi[n+20>>2]=T+((P+N|0)*20|0)+R+D;R=Zi(D+N|0,-5)|0;T=Ji[a+18>>1]|0;Xi[n+24>>2]=M+((C+P|0)*20|0)+R+T;P=Zi(T+P|0,-5)|0;Xi[n+28>>2]=N+((D+C|0)*20|0)+P+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<2)|0;a=a+(t<<1)|0}}v=f>>1;E=Zi(l,-2)|0;S=0-l|0;_=l<<1;m=l*3|0;p=l<<2;F=l*5|0;y=l*6|0;O=l*7|0;A=l<<3;g=l*9|0;M=l*10|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;d=i+(l<<1<<2)|0;c=0;while(1){n=Xi[d+(S<<2)>>2]|0;t=Xi[d>>2]|0;r=Xi[d+(l<<2)>>2]|0;o=Xi[d+(_<<2)>>2]|0;f=Xi[d+(m<<2)>>2]|0;i=Xi[d+(p<<2)>>2]|0;s=Xi[d+(F<<2)>>2]|0;u=Xi[d+(y<<2)>>2]|0;h=Xi[d+(O<<2)>>2]|0;w=Xi[d+(A<<2)>>2]|0;k=Xi[d+(g<<2)>>2]|0;b=Xi[d+(M<<2)>>2]|0;a=(Xi[d+(E<<2)>>2]|0)+512+f+((r+t|0)*20|0)+(Zi(o+n|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=a;a=n+512+i+((o+r|0)*20|0)+(Zi(f+t|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(v<<1)>>1]=a;a=t+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(R<<1)>>1]=a;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(T<<1)>>1]=a;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(N<<1)>>1]=a;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(D<<1)>>1]=a;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(C<<1)>>1]=a;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e+(P<<1)>>1]=a;c=c+1|0;if((c|0)==8)break;else{d=d+4|0;e=e+2|0}}return}function tw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function ow(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(e,a+64|0,r);Ue=n;return}function sw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}iw(s,a+64|0,32);aw(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function uw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+2688|0;aw(e,f,i,r,r);Ue=f;return}function hw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}iw(s,a+64|0,32);aw(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function ww(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function kw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function bw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;Jh(f,i+r|0,32,r);aw(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function cw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function dw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=0;while(1){n=i;l=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=e;Xi[a>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[a+4>>2]=n;a=i+8|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e+8|0;Xi[l>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[l+4>>2]=a;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function vw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;Zh(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Ew(e,i,r){e=e|0;i=i|0;r=r|0;Zh(e,i,r,r);return}function Sw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;Zh(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function _w(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+32)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+32)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function mw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function pw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;Zh(f,i,16,r);nw(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Fw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function yw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(e,a+32|0,r,16);Ue=n;return}function Ow(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}rw(s,a+32|0,16,16);nw(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Aw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+832|0;nw(e,f,i,r,16,r);Ue=f;return}function gw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}rw(s,a+32|0,16,16);nw(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Mw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+48)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+48)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function Rw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Tw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;Zh(f,i+r|0,16,r);nw(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Nw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Dw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=i;f=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e;Xi[l>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[l+4>>2]=a;l=i+r|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+r|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;f=r<<1;l=i+f|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+f|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;r=r*3|0;i=i+r|0;f=i;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;r=e+r|0;Xi[r>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[r+4>>2]=i;return}function Cw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;Pw(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Pw(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=f>>1;o=0;while(1){t=i+2|0;f=i+-2|0;a=i+4|0;r=Zi((Ji[a>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;n=i+6|0;r=(((Ji[t>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi((Ji[n>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;l=i+8|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+2>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;f=i+10|0;r=(((Ji[n>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+4>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[i+12>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+6>>1]=r;o=o+1|0;if((o|0)==4)break;else{e=e+(u<<1)|0;i=i+(s<<1)|0}}return}function Lw(e,i,r){e=e|0;i=i|0;r=r|0;Pw(e,i,r,r);return}function Iw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;Pw(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Hw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{o=i<<3;u=f+(o+16)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Bw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=r>>1;k=w<<1;b=w*3|0;h=0;while(1){f=Ji[i+-8>>1]|0;l=Ji[i>>1]|0;a=Ji[i+8>>1]|0;n=Ji[i+16>>1]|0;t=Ji[i+24>>1]|0;o=Ji[i+32>>1]|0;s=Ji[i+40>>1]|0;u=Ji[i+48>>1]|0;r=(Ji[i+-16>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(w<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(k<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(b<<1)>>1]=r;h=h+1|0;if((h|0)==4)break;else{e=e+2|0;i=i+2|0}}return}function Uw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function xw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;Pw(f,i,8,r);zw(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function zw(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){o=Ji[l>>1]|0;h=Ji[l+2>>1]|0;u=Ji[l+-2>>1]|0;b=Ji[l+4>>1]|0;s=Zi(b+u|0,-5)|0;k=Ji[l+6>>1]|0;Xi[a>>2]=(Ji[l+-4>>1]|0)+((h+o|0)*20|0)+s+k;s=Zi(k+o|0,-5)|0;w=Ji[l+8>>1]|0;Xi[a+4>>2]=u+((b+h|0)*20|0)+s+w;s=Zi(w+h|0,-5)|0;u=Ji[l+10>>1]|0;Xi[a+8>>2]=o+((k+b|0)*20|0)+s+u;b=Zi(u+b|0,-5)|0;Xi[a+12>>2]=h+((w+k|0)*20|0)+b+(Ji[l+12>>1]|0);t=t+1|0;if((t|0)==9)break;else{a=a+32|0;l=l+(n<<1)|0}}w=f>>1;k=w<<1;b=w*3|0;h=i+64|0;u=0;while(1){a=Xi[h+-32>>2]|0;n=Xi[h>>2]|0;r=Xi[h+32>>2]|0;t=Xi[h+64>>2]|0;f=Xi[h+96>>2]|0;i=Xi[h+128>>2]|0;o=Xi[h+160>>2]|0;s=Xi[h+192>>2]|0;l=(Xi[h+-64>>2]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e+(w<<1)>>1]=l;l=n+512+o+((f+t|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e+(k<<1)>>1]=l;l=r+512+s+((i+f|0)*20|0)+(Zi(o+t|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e+(b<<1)>>1]=l;u=u+1|0;if((u|0)==4)break;else{h=h+4|0;e=e+2|0}}return}function Vw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Yw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+80|0;t=f;l=t+16|0;n=r<<1;a=i+(0-n)|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;o=i+(0-r)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[s+4>>2]=o;s=i;o=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=l;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=s;a=i+r|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+24|0;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;n=i+n|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+32|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*3|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+40|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=a;o=i+(r<<2)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=t+48|0;Xi[n>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[n+4>>2]=o;n=i+(r*5|0)|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+56|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*6|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;i=t+64|0;Xi[i>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[i+4>>2]=a;Bw(e,l,r);Ue=f;return}function jw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Bw(l,n,8);zw(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Kw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+288|0;zw(e,f,i,r,r);Ue=f;return}function Ww(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Bw(l,n,8);zw(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Gw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{o=i<<3;u=f+(o+24)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Xw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;Pw(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{u=i<<3;w=f+u|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=l+u|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=XT(o^s|0,u^w|0,1)|0;h=YT(o|s|0,u|w|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(Zi(i,r)|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function qw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;Pw(f,i+r|0,8,r);zw(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Jw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Zw(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;i=i+r|0;Xi[e+r>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;return}function Qw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;$w(l,i,4,r);a=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+r|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function $w(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;s=r>>1;o=f>>1;t=0;while(1){a=i+2|0;n=i+-2|0;f=i+4|0;r=Zi((Ji[f>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;l=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;r=(((Ji[f>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[i+8>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+2>>1]=r;t=t+1|0;if((t|0)==2)break;else{e=e+(s<<1)|0;i=i+(o<<1)|0}}return}function ek(e,i,r){e=e|0;i=i|0;r=r|0;$w(e,i,r,r);return}function ik(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;$w(l,i,4,r);a=i+2|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+(r+2)|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function rk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;s=r<<1;n=i+(0-s)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t>>2]=n;l=i+r|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+12>>2]=l;s=i+s|0;Xi[o+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function fk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){t=Ji[i+-4>>1]|0;o=Ji[i>>1]|0;f=Ji[i+4>>1]|0;l=Ji[i+8>>1]|0;a=Ji[i+12>>1]|0;n=Ji[i+16>>1]|0;r=(Ji[i+-8>>1]|0)+16+a+((f+o|0)*20|0)+(Zi(l+t|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=t+16+n+((l+f|0)*20|0)+(Zi(a+o|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(u<<1)>>1]=r;s=s+1|0;if((s|0)==2)break;else{e=e+2|0;i=i+2|0}}return}function lk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;$w(a,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function ak(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+128|0;a=f+8|0;l=f;$w(a,i,4,r);nk(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function nk(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){u=Ji[l>>1]|0;s=Ji[l+2>>1]|0;r=Ji[l+-2>>1]|0;o=Ji[l+4>>1]|0;w=Zi(o+r|0,-5)|0;h=Ji[l+6>>1]|0;Xi[a>>2]=(Ji[l+-4>>1]|0)+((s+u|0)*20|0)+w+h;u=Zi(h+u|0,-5)|0;Xi[a+4>>2]=r+((o+s|0)*20|0)+u+(Ji[l+8>>1]|0);t=t+1|0;if((t|0)==7)break;else{a=a+16|0;l=l+(n<<1)|0}}u=f>>1;s=i+32|0;o=0;while(1){a=Xi[s+-16>>2]|0;n=Xi[s>>2]|0;r=Xi[s+16>>2]|0;t=Xi[s+32>>2]|0;f=Xi[s+48>>2]|0;i=Xi[s+64>>2]|0;l=(Xi[s+-32>>2]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=4096)l=0-l>>31&4095;Gi[e+(u<<1)>>1]=l;o=o+1|0;if((o|0)==2)break;else{s=s+4|0;e=e+2|0}}return}function tk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;$w(a,i,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function ok(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+32|0;a=f;l=a+8|0;n=r<<1;t=i+(0-n)|0;Xi[a>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(0-r)|0;Xi[a+4>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[l>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=i+r|0;Xi[a+12>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=i+n|0;Xi[a+16>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*3|0)|0;Xi[a+20>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;i=i+(r<<2)|0;Xi[a+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(e,l,r);Ue=f;return}function sk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+160|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;fk(a,n,4);nk(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function uk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+112|0;nk(e,f,i,r,r);Ue=f;return}function hk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+160|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;fk(a,n,4);nk(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function wk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;l=r<<1;n=i+(0-l)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=i+r|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+12>>2]=n;l=i+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+16>>2]=l;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function kk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;s=i+r|0;$w(a,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function bk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+128|0;a=f+8|0;l=f;$w(a,i+r|0,4,r);nk(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function ck(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;$w(a,i+r|0,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;fk(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function dk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;f=i;l=e;a=0;while(1){n=l;s=Xi[n>>2]|0;n=Xi[n+4>>2]|0;u=f;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=XT(h^s|0,u^n|0,1)|0;o=YT(h|s|0,u|n|0,o&2147450879|0,Ie&2147450879|0)|0;n=l;Xi[n>>2]=o;Xi[n+4>>2]=Ie;n=l+8|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;s=f+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){h=f;o=Xi[h>>2]|0;h=Xi[h+4>>2]|0;t=a;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=XT(n^o|0,t^h|0,1)|0;s=YT(n|o|0,t|h|0,s&2147450879|0,Ie&2147450879|0)|0;h=f;Xi[h>>2]=s;Xi[h+4>>2]=Ie;h=f+8|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;o=a+8|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function vk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;Jh(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;w=c+16|0;k=i+w|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+w|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;c=c+24|0;w=i+c|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+c|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Ek(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;Sk(e,i,r,r);Sk(e+16|0,i+16|0,r,r);f=r<<3;Sk(e+f|0,i+f|0,r,r);f=f+16|0;Sk(e+f|0,i+f|0,r,r);return}function Sk(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=r>>1;k=f>>1;w=0;while(1){a=i+2|0;f=i+-2|0;t=i+4|0;r=Zi((Ji[t>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;s=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;r=Zi((Ji[s>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;h=i+8|0;r=(((Ji[t>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[h>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;r=Zi((Ji[h>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;u=i+10|0;r=(((Ji[s>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=Zi((Ji[u>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;o=i+12|0;r=(((Ji[h>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[a>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+8|0;r=Zi((Ji[o>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;n=i+14|0;r=(((Ji[u>>1]|0)+(Ji[h>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+10|0;r=Zi((Ji[n>>1]|0)+(Ji[h>>1]|0)|0,-5)|0;a=i+16|0;r=(((Ji[o>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+12|0;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+18|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[h>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+14|0;r=Zi((Ji[l>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;r=(((Ji[a>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;w=w+1|0;if((w|0)==8)break;else{e=e+(b<<1)|0;i=i+(k<<1)|0}}return}function _k(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;Jh(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;k=i+(c+18)|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=i+(c+26)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function mk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+64)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+64)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+80)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+80)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function pk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Fk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;Jh(f,i,32,r);aw(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function yk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Ok(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Ak(e,a+64|0,r,32);Ak(e+16|0,a+80|0,r,32);u=r<<3;Ak(e+u|0,a+320|0,r,32);Ak(e+(u+16)|0,a+336|0,r,32);Ue=n;return}function Ak(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;L=r>>1;v=f>>1;g=Zi(v,-2)|0;M=0-v|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;E=v<<3;S=v*9|0;_=v*10|0;m=L<<1;p=L*3|0;F=L<<2;y=L*5|0;O=L*6|0;A=L*7|0;d=0;while(1){f=Ji[i+(M<<1)>>1]|0;a=Ji[i>>1]|0;n=Ji[i+(v<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(P<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;c=Ji[i+(_<<1)>>1]|0;r=(Ji[i+(g<<1)>>1]|0)+16+o+((n+a|0)*20|0)+(Zi(t+f|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+(L<<1)|0;r=f+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+(m<<1)|0;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(p<<1)|0;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(F<<1)|0;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(y<<1)|0;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(O<<1)|0;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(A<<1)|0;r=u+16+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;d=d+1|0;if((d|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function gk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}iw(s,a+64|0,32);aw(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Mk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+2688|0;n=f;Rk(e,n,i,r,32,r);a=n+32|0;Rk(e+16|0,a,i+16|0,r,32,r);l=r<<3;Rk(e+l|0,n,i+l|0,r,32,r);l=l+16|0;Rk(e+l|0,a,i+l|0,r,32,r);Ue=f;return}function Rk(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){L=Ji[a>>1]|0;P=Ji[a+2>>1]|0;D=Ji[a+-2>>1]|0;C=Ji[a+4>>1]|0;T=Zi(C+D|0,-5)|0;N=Ji[a+6>>1]|0;Xi[n>>2]=(Ji[a+-4>>1]|0)+((P+L|0)*20|0)+T+N;T=Zi(N+L|0,-5)|0;R=Ji[a+8>>1]|0;Xi[n+4>>2]=D+((C+P|0)*20|0)+T+R;T=Zi(R+P|0,-5)|0;D=Ji[a+10>>1]|0;Xi[n+8>>2]=L+((N+C|0)*20|0)+T+D;T=Zi(D+C|0,-5)|0;L=Ji[a+12>>1]|0;Xi[n+12>>2]=P+((R+N|0)*20|0)+T+L;T=Zi(L+N|0,-5)|0;P=Ji[a+14>>1]|0;Xi[n+16>>2]=C+((D+R|0)*20|0)+T+P;T=Zi(P+R|0,-5)|0;C=Ji[a+16>>1]|0;Xi[n+20>>2]=N+((L+D|0)*20|0)+T+C;T=Zi(C+D|0,-5)|0;N=Ji[a+18>>1]|0;Xi[n+24>>2]=R+((P+L|0)*20|0)+T+N;L=Zi(N+L|0,-5)|0;Xi[n+28>>2]=D+((C+P|0)*20|0)+L+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<2)|0;a=a+(t<<1)|0}}E=f>>1;S=Zi(l,-2)|0;_=0-l|0;m=l<<1;p=l*3|0;F=l<<2;y=l*5|0;O=l*6|0;A=l*7|0;g=l<<3;M=l*9|0;R=l*10|0;T=E<<1;N=E*3|0;D=E<<2;C=E*5|0;P=E*6|0;L=E*7|0;v=i+(l<<1<<2)|0;d=0;while(1){n=Xi[v+(_<<2)>>2]|0;r=Xi[v>>2]|0;o=Xi[v+(l<<2)>>2]|0;f=Xi[v+(m<<2)>>2]|0;i=Xi[v+(p<<2)>>2]|0;s=Xi[v+(F<<2)>>2]|0;u=Xi[v+(y<<2)>>2]|0;h=Xi[v+(O<<2)>>2]|0;w=Xi[v+(A<<2)>>2]|0;k=Xi[v+(g<<2)>>2]|0;b=Xi[v+(M<<2)>>2]|0;c=Xi[v+(R<<2)>>2]|0;a=(Xi[v+(S<<2)>>2]|0)+512+i+((o+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+a|0)>>>1;t=e+(E<<1)|0;a=n+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[t>>1]=((Ji[t>>1]|0)+1+a|0)>>>1;n=e+(T<<1)|0;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(N<<1)|0;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(D<<1)|0;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(C<<1)|0;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(P<<1)|0;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(L<<1)|0;a=u+512+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>10;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;d=d+1|0;if((d|0)==8)break;else{v=v+4|0;e=e+2|0}}return}function Tk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}iw(s,a+64|0,32);aw(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Nk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+96)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+96)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+112)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+112)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Dk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Ck(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;Jh(f,i+r|0,32,r);aw(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Pk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;Jh(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}iw(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Lk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=0;while(1){l=e;t=Xi[l>>2]|0;l=Xi[l+4>>2]|0;o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=XT(s^t|0,o^l|0,1)|0;n=YT(s|t|0,o|l|0,n&2147450879|0,Ie&2147450879|0)|0;l=e;Xi[l>>2]=n;Xi[l+4>>2]=Ie;l=e+8|0;n=l;o=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=i+8|0;s=t;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;a=XT(s^o|0,t^n|0,1)|0;a=YT(s|o|0,t|n|0,a&2147450879|0,Ie&2147450879|0)|0;Xi[l>>2]=a;Xi[l+4>>2]=Ie;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Ik(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;Zh(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Hk(e,i,r){e=e|0;i=i|0;r=r|0;Sk(e,i,r,r);return}function Bk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;Zh(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Uk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+32)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+32)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function xk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function zk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;Zh(f,i,16,r);nw(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Vk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Yk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Ak(e,a+32|0,r,16);Ue=n;return}function jk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}rw(s,a+32|0,16,16);nw(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Kk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+832|0;Rk(e,f,i,r,16,r);Ue=f;return}function Wk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}rw(s,a+32|0,16,16);nw(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Gk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+48)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+48)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function Xk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function qk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;Zh(f,i+r|0,16,r);nw(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Jk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;Zh(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}rw(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Zk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=e;t=Xi[n>>2]|0;n=Xi[n+4>>2]|0;o=i;l=o;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;a=XT(l^t|0,o^n|0,1)|0;a=YT(l|t|0,o|n|0,a&2147450879|0,Ie&2147450879|0)|0;n=e;Xi[n>>2]=a;Xi[n+4>>2]=Ie;n=e+r|0;a=n;o=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=i+r|0;l=t;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;f=XT(l^o|0,t^a|0,1)|0;f=YT(l|o|0,t|a|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=f;Xi[n+4>>2]=Ie;n=r<<1;f=e+n|0;a=f;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;n=i+n|0;o=n;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;l=XT(o^t|0,n^a|0,1)|0;l=YT(o|t|0,n|a|0,l&2147450879|0,Ie&2147450879|0)|0;Xi[f>>2]=l;Xi[f+4>>2]=Ie;f=r*3|0;r=e+f|0;e=r;l=Xi[e>>2]|0;e=Xi[e+4>>2]|0;f=i+f|0;a=f;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;i=XT(a^l|0,f^e|0,1)|0;i=YT(a|l|0,f|e|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[r>>2]=i;Xi[r+4>>2]=Ie;return}function Qk(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;Pw(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function $k(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){o=i+2|0;f=i+-2|0;n=i+4|0;t=i+6|0;r=(((Ji[o>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+(Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0)+(Ji[t>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;a=i+8|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+(Zi((Ji[t>>1]|0)+(Ji[i>>1]|0)|0,-5)|0)+(Ji[a>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;l=i+10|0;r=(((Ji[t>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+(Zi((Ji[a>>1]|0)+(Ji[o>>1]|0)|0,-5)|0)+(Ji[l>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+(Zi((Ji[l>>1]|0)+(Ji[n>>1]|0)|0,-5)|0)+(Ji[i+12>>1]|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;s=s+1|0;if((s|0)==4)break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}return}function eb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;Pw(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+(n+2)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function ib(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{s=i<<3;t=f+(s+16)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function rb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function fb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;Pw(f,i,8,r);zw(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function lb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ab(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+80|0;k=d;w=k+16|0;c=r<<1;b=i+(0-c)|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;f=k;Xi[f>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[f+4>>2]=b;f=i+(0-r)|0;b=f;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=k+8|0;Xi[u>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[u+4>>2]=f;u=i;f=u;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;b=w;Xi[b>>2]=f;Xi[b+4>>2]=u;b=i+r|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+24|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=b;c=i+c|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+32|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*3|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+40|0;Xi[h>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[h+4>>2]=b;h=i+(r<<2)|0;b=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;c=k+48|0;Xi[c>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[c+4>>2]=h;c=i+(r*5|0)|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+56|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*6|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;k=k+64|0;Xi[k>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[k+4>>2]=b;k=r>>1;b=k<<1;c=k*3|0;f=f&65535;i=0;while(1){l=Ji[w+-8>>1]|0;a=f&65535;n=Ji[w+8>>1]|0;t=Ji[w+16>>1]|0;o=Ji[w+24>>1]|0;s=Ji[w+32>>1]|0;u=Ji[w+40>>1]|0;h=Ji[w+48>>1]|0;r=((n+a|0)*20|0)+((Ji[w+-16>>1]|0)+16+o)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((t+n|0)*20|0)+(l+16+s)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((o+t|0)*20|0)+(a+16+u)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((s+o|0)*20|0)+(n+16+h)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;r=w+2|0;i=i+1|0;if((i|0)==4)break;f=Gi[r>>1]|0;e=e+2|0;w=r}Ue=d;return}function nb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Bw(l,n,8);zw(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function tb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+288|0;a=d;b=r>>1;c=b<<1;f=a;l=0;r=i+(0-c<<1)|0;while(1){o=Ji[r>>1]|0;h=Ji[r+2>>1]|0;w=Ji[r+-2>>1]|0;k=Ji[r+4>>1]|0;u=Ji[r+6>>1]|0;Xi[f>>2]=(Ji[r+-4>>1]|0)+((h+o|0)*20|0)+(Zi(k+w|0,-5)|0)+u;s=Ji[r+8>>1]|0;Xi[f+4>>2]=((k+h|0)*20|0)+w+s+(Zi(u+o|0,-5)|0);w=Ji[r+10>>1]|0;Xi[f+8>>2]=((u+k|0)*20|0)+o+w+(Zi(s+h|0,-5)|0);Xi[f+12>>2]=((s+u|0)*20|0)+h+(Ji[r+12>>1]|0)+(Zi(w+k|0,-5)|0);l=l+1|0;if((l|0)==9)break;else{f=f+32|0;r=r+(b<<1)|0}}k=b*3|0;w=a+64|0;h=0;while(1){l=Xi[w+-32>>2]|0;i=Xi[w>>2]|0;a=Xi[w+32>>2]|0;n=Xi[w+64>>2]|0;t=Xi[w+96>>2]|0;o=Xi[w+128>>2]|0;s=Xi[w+160>>2]|0;u=Xi[w+192>>2]|0;r=((a+i|0)*20|0)+((Xi[w+-64>>2]|0)+512+t)+(Zi(n+l|0,-5)|0)>>10;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((n+a|0)*20|0)+(l+512+o)+(Zi(t+i|0,-5)|0)>>10;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((t+n|0)*20|0)+(i+512+s)+(Zi(o+a|0,-5)|0)>>10;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((o+t|0)*20|0)+(a+512+u)+(Zi(s+n|0,-5)|0)>>10;if(r>>>0>=4096)r=0-r>>31&4095;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;h=h+1|0;if((h|0)==4)break;else{w=w+4|0;e=e+2|0}}Ue=d;return}function ob(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;Bw(l,n,8);zw(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function sb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{s=i<<3;t=f+(s+24)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ub(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;Pw(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{h=i<<3;s=f+h|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=l+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(Zi(i,r)|0)|0;u=w;o=Xi[u>>2]|0;u=Xi[u+4>>2]|0;t=XT(k^n|0,h^s|0,1)|0;t=YT(k|n|0,h|s|0,t&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function hb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;Pw(f,i+r|0,8,r);zw(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function wb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;Pw(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;Bw(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function kb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=i;l=e;a=0;while(1){o=f;n=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l;Xi[t>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t+4>>2]=o;t=f+8|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=l+8|0;Xi[n>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[n+4>>2]=t;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){n=a;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f;Xi[t>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[t+4>>2]=n;t=a+8|0;n=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=f+8|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=t;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function bb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+512|0;l=a;cb(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=w+16|0;t=i+u|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f<<5;h=l+(s|16)|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=XT(k^n|0,h^t|0,1)|0;o=YT(k|n|0,h|t|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+u|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;w=w+24|0;u=i+w|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+w|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function cb(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;db(e,i,r,f);db(e+16|0,i+16|0,r,f);l=f<<3;a=r<<3;db(e+a|0,i+l|0,r,f);db(e+(a+16)|0,i+(l+16)|0,r,f);return}function db(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=r>>1;w=f>>1;h=0;while(1){l=i+2|0;f=i+-2|0;n=i+4|0;r=Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;o=i+6|0;r=(((Ji[l>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi((Ji[o>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;u=i+8|0;r=(((Ji[n>>1]|0)+(Ji[l>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+2>>1]=r;r=Zi((Ji[u>>1]|0)+(Ji[l>>1]|0)|0,-5)|0;s=i+10|0;r=(((Ji[o>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+4>>1]=r;r=Zi((Ji[s>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;t=i+12|0;r=(((Ji[u>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[l>>1]|0)+r+(Ji[t>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+6>>1]=r;r=Zi((Ji[t>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;a=i+14|0;r=(((Ji[s>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+8>>1]=r;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+16|0;r=(((Ji[t>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+10>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;f=i+18|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+12>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+14>>1]=r;h=h+1|0;if((h|0)==8)break;else{e=e+(k<<1)|0;i=i+(w<<1)|0}}return}function vb(e,i,r){e=e|0;i=i|0;r=r|0;cb(e,i,r,r);return}function Eb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+512|0;l=a;cb(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f<<5;h=l+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{w=Zi(f,r)|0;u=i+(w+18)|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f<<5;t=l+(s|16)|0;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=XT(n^h|0,t^u|0,1)|0;o=YT(n|h|0,t|u|0,o&2147450879|0,Ie&2147450879|0)|0;u=e+(w+16)|0;Xi[u>>2]=o;Xi[u+4>>2]=Ie;u=i+(w+26)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=l+(s|24)|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Sb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+64)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+64)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function _b(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;mb(e,i,r,32);mb(e+16|0,i+16|0,r,32);f=r<<3;mb(e+f|0,i+256|0,r,32);mb(e+(f+16)|0,i+272|0,r,32);return}function mb(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;P=r>>1;d=f>>1;A=Zi(d,-2)|0;g=0-d|0;M=d<<1;R=d*3|0;T=d<<2;N=d*5|0;D=d*6|0;C=d*7|0;v=d<<3;E=d*9|0;S=d*10|0;_=P<<1;m=P*3|0;p=P<<2;F=P*5|0;y=P*6|0;O=P*7|0;c=0;while(1){f=Ji[i+(g<<1)>>1]|0;l=Ji[i>>1]|0;a=Ji[i+(d<<1)>>1]|0;n=Ji[i+(M<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(v<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;r=(Ji[i+(A<<1)>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(P<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(_<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(m<<1)>>1]=r;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(p<<1)>>1]=r;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(F<<1)>>1]=r;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(y<<1)>>1]=r;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(O<<1)>>1]=r;c=c+1|0;if((c|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function pb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Fb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;cb(f,i,32,r);yb(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function yb(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;Ob(e,i,r,f,32,l);n=i+32|0;Ob(e+16|0,n,r+16|0,f,32,l);a=l<<3;t=f<<3;Ob(e+t|0,i,r+a|0,f,32,l);Ob(e+(t+16)|0,n,r+(a+16)|0,f,32,l);return}function Ob(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){P=Ji[a>>1]|0;C=Ji[a+2>>1]|0;N=Ji[a+-2>>1]|0;D=Ji[a+4>>1]|0;R=Zi(D+N|0,-5)|0;T=Ji[a+6>>1]|0;Xi[n>>2]=(Ji[a+-4>>1]|0)+((C+P|0)*20|0)+R+T;R=Zi(T+P|0,-5)|0;M=Ji[a+8>>1]|0;Xi[n+4>>2]=N+((D+C|0)*20|0)+R+M;R=Zi(M+C|0,-5)|0;N=Ji[a+10>>1]|0;Xi[n+8>>2]=P+((T+D|0)*20|0)+R+N;R=Zi(N+D|0,-5)|0;P=Ji[a+12>>1]|0;Xi[n+12>>2]=C+((M+T|0)*20|0)+R+P;R=Zi(P+T|0,-5)|0;C=Ji[a+14>>1]|0;Xi[n+16>>2]=D+((N+M|0)*20|0)+R+C;R=Zi(C+M|0,-5)|0;D=Ji[a+16>>1]|0;Xi[n+20>>2]=T+((P+N|0)*20|0)+R+D;R=Zi(D+N|0,-5)|0;T=Ji[a+18>>1]|0;Xi[n+24>>2]=M+((C+P|0)*20|0)+R+T;P=Zi(T+P|0,-5)|0;Xi[n+28>>2]=N+((D+C|0)*20|0)+P+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<2)|0;a=a+(t<<1)|0}}v=f>>1;E=Zi(l,-2)|0;S=0-l|0;_=l<<1;m=l*3|0;p=l<<2;F=l*5|0;y=l*6|0;O=l*7|0;A=l<<3;g=l*9|0;M=l*10|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;d=i+(l<<1<<2)|0;c=0;while(1){n=Xi[d+(S<<2)>>2]|0;t=Xi[d>>2]|0;r=Xi[d+(l<<2)>>2]|0;o=Xi[d+(_<<2)>>2]|0;f=Xi[d+(m<<2)>>2]|0;i=Xi[d+(p<<2)>>2]|0;s=Xi[d+(F<<2)>>2]|0;u=Xi[d+(y<<2)>>2]|0;h=Xi[d+(O<<2)>>2]|0;w=Xi[d+(A<<2)>>2]|0;k=Xi[d+(g<<2)>>2]|0;b=Xi[d+(M<<2)>>2]|0;a=(Xi[d+(E<<2)>>2]|0)+512+f+((r+t|0)*20|0)+(Zi(o+n|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=a;a=n+512+i+((o+r|0)*20|0)+(Zi(f+t|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(v<<1)>>1]=a;a=t+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(R<<1)>>1]=a;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(T<<1)>>1]=a;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(N<<1)>>1]=a;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(D<<1)>>1]=a;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(C<<1)>>1]=a;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e+(P<<1)>>1]=a;c=c+1|0;if((c|0)==8)break;else{d=d+4|0;e=e+2|0}}return}function Ab(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function gb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(e,a+64|0,r);Ue=n;return}function Mb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}_b(s,a+64|0,32);yb(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Rb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+2688|0;yb(e,f,i,r,r);Ue=f;return}function Tb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}_b(s,a+64|0,32);yb(o,t,i,32,r);f=0;do{h=f<<5;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{h=f<<5;w=h|16;b=s+w|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+w|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+(b+16)|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|24;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+24)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Nb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(n,a+64|0,32);i=0;do{o=i<<5;h=a+(o+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=a+(s+96)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|24;s=a+(o+96)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Db(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Cb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;cb(f,i+r|0,32,r);yb(l,a,i,32,r);i=0;do{s=i<<5;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{o=i<<5;s=o|16;h=f+s|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(u^n|0,s^h|0,1)|0;t=YT(u|n|0,s|h|0,t&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+(h+16)|0;Xi[s>>2]=t;Xi[s+4>>2]=Ie;o=o|24;s=f+o|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+24)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Pb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{s=i<<5;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{s=i<<5;u=s|16;w=n+u|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+u|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+(w+16)|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|24;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+24)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Lb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=0;while(1){n=i;l=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=e;Xi[a>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[a+4>>2]=n;a=i+8|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e+8|0;Xi[l>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[l+4>>2]=a;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function Ib(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;db(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;n=n+8|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Hb(e,i,r){e=e|0;i=i|0;r=r|0;db(e,i,r,r);return}function Bb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+128|0;f=a;db(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l<<4;h=f+s|0;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=XT(w^t|0,h^o|0,1)|0;u=YT(w|t|0,h|o|0,u&2147450879|0,Ie&2147450879|0)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;o=i+(n+10)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(s|8)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function Ub(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+32)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+32)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function xb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function zb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;db(f,i,16,r);Ob(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Vb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Yb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(e,a+32|0,r,16);Ue=n;return}function jb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}mb(s,a+32|0,16,16);Ob(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Kb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+832|0;Ob(e,f,i,r,16,r);Ue=f;return}function Wb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}mb(s,a+32|0,16,16);Ob(o,t,i,16,16,r);f=0;do{h=f<<4;b=s+h|0;i=b;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=o+h|0;k=w;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;t=XT(k^i|0,w^b|0,1)|0;t=YT(k|i|0,w|b|0,t&2147450879|0,Ie&2147450879|0)|0;b=Zi(f,r)|0;w=e+b|0;Xi[w>>2]=t;Xi[w+4>>2]=Ie;h=h|8;w=s+h|0;t=w;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=o+h|0;i=h;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;b=e+(b+8)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function Gb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(n,a+32|0,16,16);i=0;do{o=i<<4;h=a+(o+48)|0;f=h;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=n+o|0;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;l=XT(u^f|0,s^h|0,1)|0;l=YT(u|f|0,s|h|0,l&2147450879|0,Ie&2147450879|0)|0;h=Zi(i,r)|0;s=e+h|0;Xi[s>>2]=l;Xi[s+4>>2]=Ie;o=o|8;s=a+(o+48)|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=n+o|0;f=o;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(h+8)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function Xb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function qb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;db(f,i+r|0,16,r);Ob(l,a,i,16,16,r);i=0;do{s=i<<4;n=f+s|0;h=n;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+s|0;t=o;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(t^h|0,o^n|0,1)|0;u=YT(t|h|0,o|n|0,u&2147450879|0,Ie&2147450879|0)|0;n=Zi(i,r)|0;o=e+n|0;Xi[o>>2]=u;Xi[o+4>>2]=Ie;s=s|8;o=f+s|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=l+s|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(n+8)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function Jb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{s=i<<4;w=n+s|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=t+s|0;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;a=XT(h^l|0,u^w|0,1)|0;a=YT(h|l|0,u|w|0,a&2147450879|0,Ie&2147450879|0)|0;w=Zi(i,r)|0;u=e+w|0;Xi[u>>2]=a;Xi[u+4>>2]=Ie;s=s|8;u=n+s|0;a=u;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+s|0;l=s;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(w+8)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function Zb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=i;f=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;l=e;Xi[l>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[l+4>>2]=a;l=i+r|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+r|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;f=r<<1;l=i+f|0;a=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;f=e+f|0;Xi[f>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[f+4>>2]=l;r=r*3|0;i=i+r|0;f=i;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;r=e+r|0;Xi[r>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[r+4>>2]=i;return}function Qb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;$b(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function $b(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=f>>1;o=0;while(1){t=i+2|0;f=i+-2|0;a=i+4|0;r=Zi((Ji[a>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;n=i+6|0;r=(((Ji[t>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi((Ji[n>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;l=i+8|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+2>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;f=i+10|0;r=(((Ji[n>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[f>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+4>>1]=r;r=Zi((Ji[f>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;r=(((Ji[l>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[i+12>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+6>>1]=r;o=o+1|0;if((o|0)==4)break;else{e=e+(u<<1)|0;i=i+(s<<1)|0}}return}function ec(e,i,r){e=e|0;i=i|0;r=r|0;$b(e,i,r,r);return}function ic(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+32|0;f=a;$b(f,i,8,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=f+(l<<3)|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+n|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function rc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{o=i<<3;u=f+(o+16)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function fc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=r>>1;k=w<<1;b=w*3|0;h=0;while(1){f=Ji[i+-8>>1]|0;l=Ji[i>>1]|0;a=Ji[i+8>>1]|0;n=Ji[i+16>>1]|0;t=Ji[i+24>>1]|0;o=Ji[i+32>>1]|0;s=Ji[i+40>>1]|0;u=Ji[i+48>>1]|0;r=(Ji[i+-16>>1]|0)+16+t+((a+l|0)*20|0)+(Zi(n+f|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=f+16+o+((n+a|0)*20|0)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(w<<1)>>1]=r;r=l+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(k<<1)>>1]=r;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(b<<1)>>1]=r;h=h+1|0;if((h|0)==4)break;else{e=e+2|0;i=i+2|0}}return}function lc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function ac(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;$b(f,i,8,r);nc(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function nc(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){o=Ji[l>>1]|0;h=Ji[l+2>>1]|0;u=Ji[l+-2>>1]|0;b=Ji[l+4>>1]|0;s=Zi(b+u|0,-5)|0;k=Ji[l+6>>1]|0;Xi[a>>2]=(Ji[l+-4>>1]|0)+((h+o|0)*20|0)+s+k;s=Zi(k+o|0,-5)|0;w=Ji[l+8>>1]|0;Xi[a+4>>2]=u+((b+h|0)*20|0)+s+w;s=Zi(w+h|0,-5)|0;u=Ji[l+10>>1]|0;Xi[a+8>>2]=o+((k+b|0)*20|0)+s+u;b=Zi(u+b|0,-5)|0;Xi[a+12>>2]=h+((w+k|0)*20|0)+b+(Ji[l+12>>1]|0);t=t+1|0;if((t|0)==9)break;else{a=a+32|0;l=l+(n<<1)|0}}w=f>>1;k=w<<1;b=w*3|0;h=i+64|0;u=0;while(1){a=Xi[h+-32>>2]|0;n=Xi[h>>2]|0;r=Xi[h+32>>2]|0;t=Xi[h+64>>2]|0;f=Xi[h+96>>2]|0;i=Xi[h+128>>2]|0;o=Xi[h+160>>2]|0;s=Xi[h+192>>2]|0;l=(Xi[h+-64>>2]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e+(w<<1)>>1]=l;l=n+512+o+((f+t|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e+(k<<1)>>1]=l;l=r+512+s+((i+f|0)*20|0)+(Zi(o+t|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e+(b<<1)>>1]=l;u=u+1|0;if((u|0)==4)break;else{h=h+4|0;e=e+2|0}}return}function tc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function oc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+80|0;t=f;l=t+16|0;n=r<<1;a=i+(0-n)|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;o=i+(0-r)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[s+4>>2]=o;s=i;o=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;a=l;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=s;a=i+r|0;s=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+24|0;Xi[o>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[o+4>>2]=a;n=i+n|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+32|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*3|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;o=t+40|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+4>>2]=a;o=i+(r<<2)|0;a=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=t+48|0;Xi[n>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[n+4>>2]=o;n=i+(r*5|0)|0;o=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=t+56|0;Xi[a>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[a+4>>2]=n;a=i+(r*6|0)|0;n=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;i=t+64|0;Xi[i>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[i+4>>2]=a;fc(e,l,r);Ue=f;return}function sc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;fc(l,n,8);nc(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function uc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+288|0;nc(e,f,i,r,r);Ue=f;return}function hc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;fc(l,n,8);nc(f,a+72|0,i,8,r);i=0;do{s=i<<3;h=l+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function wc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{o=i<<3;u=f+(o+24)|0;t=Xi[u>>2]|0;u=Xi[u+4>>2]|0;o=l+o|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=XT(n^t|0,o^u|0,1)|0;s=YT(n|t|0,o|u|0,s&2147450879|0,Ie&2147450879|0)|0;u=e+(Zi(i,r)|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function kc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;$b(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{u=i<<3;w=f+u|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=l+u|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=XT(o^s|0,u^w|0,1)|0;h=YT(o|s|0,u|w|0,h&2147450879|0,Ie&2147450879|0)|0;w=e+(Zi(i,r)|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function bc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;$b(f,i+r|0,8,r);nc(l,a,i,8,r);i=0;do{o=i<<3;n=f+o|0;s=n;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+o|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=XT(u^s|0,o^n|0,1)|0;t=YT(u|s|0,o|n|0,t&2147450879|0,Ie&2147450879|0)|0;n=e+(Zi(i,r)|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function cc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{s=i<<3;h=f+s|0;o=h;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=l+s|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=XT(t^o|0,s^h|0,1)|0;u=YT(t|o|0,s|h|0,u&2147450879|0,Ie&2147450879|0)|0;h=e+(Zi(i,r)|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function dc(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;i=i+r|0;Xi[e+r>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;return}function vc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Ec(l,i,4,r);a=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+r|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Ec(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;s=r>>1;o=f>>1;t=0;while(1){a=i+2|0;n=i+-2|0;f=i+4|0;r=Zi((Ji[f>>1]|0)+(Ji[n>>1]|0)|0,-5)|0;l=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi((Ji[l>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;r=(((Ji[f>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[n>>1]|0)+r+(Ji[i+8>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+2>>1]=r;t=t+1|0;if((t|0)==2)break;else{e=e+(s<<1)|0;i=i+(o<<1)|0}}return}function Sc(e,i,r){e=e|0;i=i|0;r=r|0;Ec(e,i,r,r);return}function _c(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+16|0;l=f;Ec(l,i,4,r);a=i+2|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;n=Xi[l>>2]|0;Xi[e>>2]=(n|a)-((n^a)>>>1&2147450879);i=i+(r+2)|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function mc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;s=r<<1;n=i+(0-s)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t>>2]=n;l=i+r|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+12>>2]=l;s=i+s|0;Xi[o+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function pc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){t=Ji[i+-4>>1]|0;o=Ji[i>>1]|0;f=Ji[i+4>>1]|0;l=Ji[i+8>>1]|0;a=Ji[i+12>>1]|0;n=Ji[i+16>>1]|0;r=(Ji[i+-8>>1]|0)+16+a+((f+o|0)*20|0)+(Zi(l+t|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=t+16+n+((l+f|0)*20|0)+(Zi(a+o|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e+(u<<1)>>1]=r;s=s+1|0;if((s|0)==2)break;else{e=e+2|0;i=i+2|0}}return}function Fc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Ec(a,i,4,r);o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function yc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+128|0;a=f+8|0;l=f;Ec(a,i,4,r);Oc(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Oc(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;n=l>>1;a=i;t=0;l=r+(0-(n<<1)<<1)|0;while(1){u=Ji[l>>1]|0;s=Ji[l+2>>1]|0;r=Ji[l+-2>>1]|0;o=Ji[l+4>>1]|0;w=Zi(o+r|0,-5)|0;h=Ji[l+6>>1]|0;Xi[a>>2]=(Ji[l+-4>>1]|0)+((s+u|0)*20|0)+w+h;u=Zi(h+u|0,-5)|0;Xi[a+4>>2]=r+((o+s|0)*20|0)+u+(Ji[l+8>>1]|0);t=t+1|0;if((t|0)==7)break;else{a=a+16|0;l=l+(n<<1)|0}}u=f>>1;s=i+32|0;o=0;while(1){a=Xi[s+-16>>2]|0;n=Xi[s>>2]|0;r=Xi[s+16>>2]|0;t=Xi[s+32>>2]|0;f=Xi[s+48>>2]|0;i=Xi[s+64>>2]|0;l=(Xi[s+-32>>2]|0)+512+f+((r+n|0)*20|0)+(Zi(t+a|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e>>1]=l;l=a+512+i+((t+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(l>>>0>=16384)l=0-l>>31&16383;Gi[e+(u<<1)>>1]=l;o=o+1|0;if((o|0)==2)break;else{s=s+4|0;e=e+2|0}}return}function Ac(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Ec(a,i,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function gc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Ue;Ue=Ue+32|0;a=f;l=a+8|0;n=r<<1;t=i+(0-n)|0;Xi[a>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;t=i+(0-r)|0;Xi[a+4>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[l>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=i+r|0;Xi[a+12>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=i+n|0;Xi[a+16>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(r*3|0)|0;Xi[a+20>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;i=i+(r<<2)|0;Xi[a+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(e,l,r);Ue=f;return}function Mc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+160|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=r<<1;s=i+(0-o)|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(0-r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;s=i+r|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r<<2)|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;pc(a,n,4);Oc(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Rc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+112|0;Oc(e,f,i,r,r);Ue=f;return}function Tc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+160|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;pc(a,n,4);Oc(l,f+48|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Nc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;o=f+8|0;a=f;t=o+8|0;l=r<<1;n=i+(0-l)|0;Xi[o>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;n=i+(0-r)|0;Xi[o+4>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[t>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;n=i+r|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[o+12>>2]=n;l=i+l|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[o+16>>2]=l;s=i+(r*3|0)|0;Xi[o+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(r<<2)|0;Xi[o+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(a,t,4);i=Xi[a>>2]|0;Xi[e>>2]=(i|n)-((i^n)>>>1&2147450879);i=Xi[a+4>>2]|0;Xi[e+r>>2]=(i|l)-((i^l)>>>1&2147450879);Ue=f;return}function Dc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;s=i+r|0;Ec(a,s,4,r);o=r<<1;u=i+(0-o)|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;u=i+(0-r)|0;Xi[t+4>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[n>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=i+o|0;Xi[t+16>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;o=i+(r*3|0)|0;Xi[t+20>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;i=i+(r<<2)|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Cc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+128|0;a=f+8|0;l=f;Ec(a,i+r|0,4,r);Oc(l,f+16|0,i,4,r);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Pc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=Ue;Ue=Ue+48|0;t=f+16|0;a=f+8|0;l=f;n=t+8|0;Ec(a,i+r|0,4,r);o=2-(r<<1)|0;s=i+o|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+r)|0;Xi[t+4>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+2|0;Xi[n>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*3|0))|0;Xi[t+12>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r<<2))|0;Xi[t+16>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;s=i+(o+(r*5|0))|0;Xi[t+20>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;i=i+(o+(r*6|0))|0;Xi[t+24>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;pc(l,n,4);i=Xi[a>>2]|0;n=Xi[l>>2]|0;Xi[e>>2]=(n|i)-((n^i)>>>1&2147450879);i=Xi[a+4>>2]|0;l=Xi[l+4>>2]|0;Xi[e+r>>2]=(l|i)-((l^i)>>>1&2147450879);Ue=f;return}function Lc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;f=i;l=e;a=0;while(1){n=l;s=Xi[n>>2]|0;n=Xi[n+4>>2]|0;u=f;h=u;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=XT(h^s|0,u^n|0,1)|0;o=YT(h|s|0,u|n|0,o&2147450879|0,Ie&2147450879|0)|0;n=l;Xi[n>>2]=o;Xi[n+4>>2]=Ie;n=l+8|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;s=f+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;a=a+1|0;if((a|0)==16)break;else{f=f+r|0;l=l+r|0}}a=i+16|0;f=e+16|0;l=0;while(1){h=f;o=Xi[h>>2]|0;h=Xi[h+4>>2]|0;t=a;n=t;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=XT(n^o|0,t^h|0,1)|0;s=YT(n|o|0,t|h|0,s&2147450879|0,Ie&2147450879|0)|0;h=f;Xi[h>>2]=s;Xi[h+4>>2]=Ie;h=f+8|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;o=a+8|0;n=o;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;l=l+1|0;if((l|0)==16)break;else{a=a+r|0;f=f+r|0}}return}function Ic(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;cb(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;w=c+16|0;k=i+w|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+w|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;c=c+24|0;w=i+c|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+c|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function Hc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;Bc(e,i,r,r);Bc(e+16|0,i+16|0,r,r);f=r<<3;Bc(e+f|0,i+f|0,r,r);f=f+16|0;Bc(e+f|0,i+f|0,r,r);return}function Bc(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=r>>1;k=f>>1;w=0;while(1){a=i+2|0;f=i+-2|0;t=i+4|0;r=Zi((Ji[t>>1]|0)+(Ji[f>>1]|0)|0,-5)|0;s=i+6|0;r=(((Ji[a>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+r+(Ji[s>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;r=Zi((Ji[s>>1]|0)+(Ji[i>>1]|0)|0,-5)|0;h=i+8|0;r=(((Ji[t>>1]|0)+(Ji[a>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+r+(Ji[h>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;r=Zi((Ji[h>>1]|0)+(Ji[a>>1]|0)|0,-5)|0;u=i+10|0;r=(((Ji[s>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+r+(Ji[u>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=Zi((Ji[u>>1]|0)+(Ji[t>>1]|0)|0,-5)|0;o=i+12|0;r=(((Ji[h>>1]|0)+(Ji[s>>1]|0)|0)*20|0)+16+(Ji[a>>1]|0)+r+(Ji[o>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+8|0;r=Zi((Ji[o>>1]|0)+(Ji[s>>1]|0)|0,-5)|0;n=i+14|0;r=(((Ji[u>>1]|0)+(Ji[h>>1]|0)|0)*20|0)+16+(Ji[t>>1]|0)+r+(Ji[n>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+10|0;r=Zi((Ji[n>>1]|0)+(Ji[h>>1]|0)|0,-5)|0;a=i+16|0;r=(((Ji[o>>1]|0)+(Ji[u>>1]|0)|0)*20|0)+16+(Ji[s>>1]|0)+r+(Ji[a>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+12|0;r=Zi((Ji[a>>1]|0)+(Ji[u>>1]|0)|0,-5)|0;l=i+18|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[h>>1]|0)+r+(Ji[l>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+14|0;r=Zi((Ji[l>>1]|0)+(Ji[o>>1]|0)|0,-5)|0;r=(((Ji[a>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[u>>1]|0)+r+(Ji[i+20>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;w=w+1|0;if((w|0)==8)break;else{e=e+(b<<1)|0;i=i+(k<<1)|0}}return}function Uc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+512|0;l=a;cb(l,i,32,r);f=0;do{n=Zi(f,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f<<5;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{c=Zi(f,r)|0;k=i+(c+18)|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=f<<5;s=l+(b|16)|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=i+(c+26)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=a;return}function xc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+64)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+64)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+80)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+80)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function zc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Vc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;cb(f,i,32,r);yb(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function Yc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function jc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+672|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){t=i;o=t;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;u=s;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;s=s+4|0;Wi[s>>0]=t;Wi[s+1>>0]=t>>8;Wi[s+2>>0]=t>>16;Wi[s+3>>0]=t>>24;s=i+8|0;t=s;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;o=u;Wi[o>>0]=t;Wi[o+1>>0]=t>>8;Wi[o+2>>0]=t>>16;Wi[o+3>>0]=t>>24;u=u+4|0;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;u=i+16|0;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f+16|0;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+24|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+24|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}Kc(e,a+64|0,r,32);Kc(e+16|0,a+80|0,r,32);u=r<<3;Kc(e+u|0,a+320|0,r,32);Kc(e+(u+16)|0,a+336|0,r,32);Ue=n;return}function Kc(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;L=r>>1;v=f>>1;g=Zi(v,-2)|0;M=0-v|0;R=v<<1;T=v*3|0;N=v<<2;D=v*5|0;C=v*6|0;P=v*7|0;E=v<<3;S=v*9|0;_=v*10|0;m=L<<1;p=L*3|0;F=L<<2;y=L*5|0;O=L*6|0;A=L*7|0;d=0;while(1){f=Ji[i+(M<<1)>>1]|0;a=Ji[i>>1]|0;n=Ji[i+(v<<1)>>1]|0;t=Ji[i+(R<<1)>>1]|0;o=Ji[i+(T<<1)>>1]|0;s=Ji[i+(N<<1)>>1]|0;u=Ji[i+(D<<1)>>1]|0;h=Ji[i+(C<<1)>>1]|0;w=Ji[i+(P<<1)>>1]|0;k=Ji[i+(E<<1)>>1]|0;b=Ji[i+(S<<1)>>1]|0;c=Ji[i+(_<<1)>>1]|0;r=(Ji[i+(g<<1)>>1]|0)+16+o+((n+a|0)*20|0)+(Zi(t+f|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+(L<<1)|0;r=f+16+s+((t+n|0)*20|0)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+(m<<1)|0;r=a+16+u+((o+t|0)*20|0)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(p<<1)|0;r=n+16+h+((s+o|0)*20|0)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(F<<1)|0;r=t+16+w+((u+s|0)*20|0)+(Zi(h+o|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(y<<1)|0;r=o+16+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(O<<1)|0;r=s+16+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(A<<1)|0;r=u+16+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;d=d+1|0;if((d|0)==8)break;else{e=e+2|0;i=i+2|0}}return}function Wc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}_b(s,a+64|0,32);yb(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Gc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+2688|0;n=f;Xc(e,n,i,r,32,r);a=n+32|0;Xc(e+16|0,a,i+16|0,r,32,r);l=r<<3;Xc(e+l|0,n,i+l|0,r,32,r);l=l+16|0;Xc(e+l|0,a,i+l|0,r,32,r);Ue=f;return}function Xc(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;t=a>>1;n=i;o=0;a=r+(0-(t<<1)<<1)|0;while(1){L=Ji[a>>1]|0;P=Ji[a+2>>1]|0;D=Ji[a+-2>>1]|0;C=Ji[a+4>>1]|0;T=Zi(C+D|0,-5)|0;N=Ji[a+6>>1]|0;Xi[n>>2]=(Ji[a+-4>>1]|0)+((P+L|0)*20|0)+T+N;T=Zi(N+L|0,-5)|0;R=Ji[a+8>>1]|0;Xi[n+4>>2]=D+((C+P|0)*20|0)+T+R;T=Zi(R+P|0,-5)|0;D=Ji[a+10>>1]|0;Xi[n+8>>2]=L+((N+C|0)*20|0)+T+D;T=Zi(D+C|0,-5)|0;L=Ji[a+12>>1]|0;Xi[n+12>>2]=P+((R+N|0)*20|0)+T+L;T=Zi(L+N|0,-5)|0;P=Ji[a+14>>1]|0;Xi[n+16>>2]=C+((D+R|0)*20|0)+T+P;T=Zi(P+R|0,-5)|0;C=Ji[a+16>>1]|0;Xi[n+20>>2]=N+((L+D|0)*20|0)+T+C;T=Zi(C+D|0,-5)|0;N=Ji[a+18>>1]|0;Xi[n+24>>2]=R+((P+L|0)*20|0)+T+N;L=Zi(N+L|0,-5)|0;Xi[n+28>>2]=D+((C+P|0)*20|0)+L+(Ji[a+20>>1]|0);o=o+1|0;if((o|0)==13)break;else{n=n+(l<<2)|0;a=a+(t<<1)|0}}E=f>>1;S=Zi(l,-2)|0;_=0-l|0;m=l<<1;p=l*3|0;F=l<<2;y=l*5|0;O=l*6|0;A=l*7|0;g=l<<3;M=l*9|0;R=l*10|0;T=E<<1;N=E*3|0;D=E<<2;C=E*5|0;P=E*6|0;L=E*7|0;v=i+(l<<1<<2)|0;d=0;while(1){n=Xi[v+(_<<2)>>2]|0;r=Xi[v>>2]|0;o=Xi[v+(l<<2)>>2]|0;f=Xi[v+(m<<2)>>2]|0;i=Xi[v+(p<<2)>>2]|0;s=Xi[v+(F<<2)>>2]|0;u=Xi[v+(y<<2)>>2]|0;h=Xi[v+(O<<2)>>2]|0;w=Xi[v+(A<<2)>>2]|0;k=Xi[v+(g<<2)>>2]|0;b=Xi[v+(M<<2)>>2]|0;c=Xi[v+(R<<2)>>2]|0;a=(Xi[v+(S<<2)>>2]|0)+512+i+((o+r|0)*20|0)+(Zi(f+n|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+a|0)>>>1;t=e+(E<<1)|0;a=n+512+s+((f+o|0)*20|0)+(Zi(i+r|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[t>>1]=((Ji[t>>1]|0)+1+a|0)>>>1;n=e+(T<<1)|0;a=r+512+u+((i+f|0)*20|0)+(Zi(s+o|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(N<<1)|0;a=o+512+h+((s+i|0)*20|0)+(Zi(u+f|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(D<<1)|0;a=f+512+w+((u+s|0)*20|0)+(Zi(h+i|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(C<<1)|0;a=i+512+k+((h+u|0)*20|0)+(Zi(w+s|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(P<<1)|0;a=s+512+b+((w+h|0)*20|0)+(Zi(k+u|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;n=e+(L<<1)|0;a=u+512+c+((k+w|0)*20|0)+(Zi(b+h|0,-5)|0)>>10;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=((Ji[n>>1]|0)+1+a|0)>>>1;d=d+1|0;if((d|0)==8)break;else{v=v+4|0;e=e+2|0}}return}function qc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+4384|0;a=u+3712|0;t=u;s=u+3200|0;o=u+2688|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){h=f;w=h;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=l;b=k;Wi[b>>0]=w;Wi[b+1>>0]=w>>8;Wi[b+2>>0]=w>>16;Wi[b+3>>0]=w>>24;k=k+4|0;Wi[k>>0]=h;Wi[k+1>>0]=h>>8;Wi[k+2>>0]=h>>16;Wi[k+3>>0]=h>>24;k=f+8|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=l+8|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;b=f+16|0;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l+16|0;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+24|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+24|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==21)break;else{f=f+r|0;l=l+32|0}}_b(s,a+64|0,32);yb(o,t,i,32,r);f=0;do{k=f<<5;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=16);f=0;do{b=f<<5;i=b|16;k=s+i|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;i=o+i|0;l=i;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;c=Zi(f,r)|0;w=e+(c+16)|0;n=w;h=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=XT(l^a|0,i^k|0,1)|0;t=YT(l|a|0,i|k|0,t&2147450879|0,Ie&2147450879|0)|0;k=Ie;i=XT(t^h|0,k^n|0,1)|0;i=YT(t|h|0,k|n|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=i;Xi[w+4>>2]=Ie;b=b|24;w=s+b|0;i=w;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=o+b|0;n=b;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;t=XT(n^i|0,b^w|0,1)|0;t=YT(n|i|0,b|w|0,t&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(t^h|0,w^k|0,1)|0;b=YT(t|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;f=f+1|0}while((f|0)!=16);Ue=u;return}function Jc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+1184|0;a=t+512|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f;h=u;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=i+8|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=f+8|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;h=i+16|0;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f+16|0;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+24|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+24|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(n,a+64|0,32);i=0;do{u=i<<5;s=a+(u+96)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+96)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;k=a+(b+112)|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=n+(b|16)|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;w=a+((b|8)+112)|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=n+(b|24)|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=t;return}function Zc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i+r|0,32,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function Qc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+3712|0;f=a+3200|0;l=a+2688|0;cb(f,i+r|0,32,r);yb(l,a,i,32,r);i=0;do{t=i<<5;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=f+s|0;t=k;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=l+s|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;o=w;h=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=XT(n^t|0,s^k|0,1)|0;u=YT(n|t|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^o|0,1)|0;s=YT(u|h|0,k|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=f+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=l+b|0;o=b;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(o^s|0,b^w|0,1)|0;u=YT(o|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=a;return}function $c(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+1696|0;a=o+1024|0;n=o+512|0;t=o;cb(n,i+r|0,32,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){s=i;u=s;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=f;w=h;Wi[w>>0]=u;Wi[w+1>>0]=u>>8;Wi[w+2>>0]=u>>16;Wi[w+3>>0]=u>>24;h=h+4|0;Wi[h>>0]=s;Wi[h+1>>0]=s>>8;Wi[h+2>>0]=s>>16;Wi[h+3>>0]=s>>24;h=i+8|0;s=h;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=f+8|0;u=w;Wi[u>>0]=s;Wi[u+1>>0]=s>>8;Wi[u+2>>0]=s>>16;Wi[u+3>>0]=s>>24;w=w+4|0;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;w=i+16|0;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f+16|0;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+24|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+24|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==21)break;else{i=i+r|0;f=f+32|0}}_b(t,a+64|0,32);i=0;do{h=i<<5;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=16);i=0;do{b=i<<5;s=b|16;k=n+s|0;l=k;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=t+s|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;c=Zi(i,r)|0;w=e+(c+16)|0;a=w;h=Xi[a>>2]|0;a=Xi[a+4>>2]|0;u=XT(f^l|0,s^k|0,1)|0;u=YT(f|l|0,s|k|0,u&2147450879|0,Ie&2147450879|0)|0;k=Ie;s=XT(u^h|0,k^a|0,1)|0;s=YT(u|h|0,k|a|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=s;Xi[w+4>>2]=Ie;b=b|24;w=n+b|0;s=w;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;b=t+b|0;a=b;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;c=e+(c+24)|0;k=c;h=Xi[k>>2]|0;k=Xi[k+4>>2]|0;u=XT(a^s|0,b^w|0,1)|0;u=YT(a|s|0,b|w|0,u&2147450879|0,Ie&2147450879|0)|0;w=Ie;b=XT(u^h|0,w^k|0,1)|0;b=YT(u|h|0,w|k|0,b&2147450879|0,Ie&2147450879|0)|0;Xi[c>>2]=b;Xi[c+4>>2]=Ie;i=i+1|0}while((i|0)!=16);Ue=o;return}function ed(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;f=0;while(1){l=e;t=Xi[l>>2]|0;l=Xi[l+4>>2]|0;o=i;s=o;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=XT(s^t|0,o^l|0,1)|0;n=YT(s|t|0,o|l|0,n&2147450879|0,Ie&2147450879|0)|0;l=e;Xi[l>>2]=n;Xi[l+4>>2]=Ie;l=e+8|0;n=l;o=Xi[n>>2]|0;n=Xi[n+4>>2]|0;t=i+8|0;s=t;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;a=XT(s^o|0,t^n|0,1)|0;a=YT(s|o|0,t|n|0,a&2147450879|0,Ie&2147450879|0)|0;Xi[l>>2]=a;Xi[l+4>>2]=Ie;f=f+1|0;if((f|0)==8)break;else{i=i+r|0;e=e+r|0}}return}function id(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;db(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+n|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;n=n+8|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function rd(e,i,r){e=e|0;i=i|0;r=r|0;Bc(e,i,r,r);return}function fd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+128|0;f=a;db(f,i,16,r);l=0;do{n=Zi(l,r)|0;o=i+(n+2)|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=l<<4;w=f+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;s=i+(n+10)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(t|8)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=8);Ue=a;return}function ld(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+32)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+32)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function ad(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function nd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;db(f,i,16,r);Ob(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function td(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function od(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=Ue;Ue=Ue+208|0;a=n;i=i+(0-(r<<1))|0;f=a;l=0;while(1){u=i;s=u;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=f;t=o;Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=o+4|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=i+8|0;u=o;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+8|0;s=t;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;t=t+4|0;Wi[t>>0]=o;Wi[t+1>>0]=o>>8;Wi[t+2>>0]=o>>16;Wi[t+3>>0]=o>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}Kc(e,a+32|0,r,16);Ue=n;return}function sd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(0-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}mb(s,a+32|0,16,16);Ob(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function ud(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Ue;Ue=Ue+832|0;Xc(e,f,i,r,16,r);Ue=f;return}function hd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;u=Ue;Ue=Ue+1296|0;a=u+1088|0;t=u;s=u+960|0;o=u+832|0;f=i+(2-(r<<1))|0;l=a;n=0;while(1){b=f;k=b;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=l;h=w;Wi[h>>0]=k;Wi[h+1>>0]=k>>8;Wi[h+2>>0]=k>>16;Wi[h+3>>0]=k>>24;w=w+4|0;Wi[w>>0]=b;Wi[w+1>>0]=b>>8;Wi[w+2>>0]=b>>16;Wi[w+3>>0]=b>>24;w=f+8|0;b=w;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=l+8|0;k=h;Wi[k>>0]=b;Wi[k+1>>0]=b>>8;Wi[k+2>>0]=b>>16;Wi[k+3>>0]=b>>24;h=h+4|0;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;n=n+1|0;if((n|0)==13)break;else{f=f+r|0;l=l+16|0}}mb(s,a+32|0,16,16);Ob(o,t,i,16,16,r);f=0;do{k=f<<4;w=s+k|0;l=w;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=o+k|0;c=n;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;b=Zi(f,r)|0;h=e+b|0;a=h;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;i=XT(c^l|0,n^w|0,1)|0;i=YT(c|l|0,n|w|0,i&2147450879|0,Ie&2147450879|0)|0;w=Ie;n=XT(i^t|0,w^a|0,1)|0;n=YT(i|t|0,w|a|0,n&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=n;Xi[h+4>>2]=Ie;k=k|8;h=s+k|0;n=h;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=o+k|0;a=k;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b+8)|0;w=b;t=Xi[w>>2]|0;w=Xi[w+4>>2]|0;i=XT(a^n|0,k^h|0,1)|0;i=YT(a|n|0,k|h|0,i&2147450879|0,Ie&2147450879|0)|0;h=Ie;k=XT(i^t|0,h^w|0,1)|0;k=YT(i|t|0,h|w|0,k&2147450879|0,Ie&2147450879|0)|0;Xi[b>>2]=k;Xi[b+4>>2]=Ie;f=f+1|0}while((f|0)!=8);Ue=u;return}function wd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=Ue;Ue=Ue+336|0;a=t+128|0;n=t;i=i+(0-(r<<1))|0;f=a;l=0;while(1){h=i;u=h;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=f;o=s;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;s=s+4|0;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;s=i+8|0;h=s;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+8|0;u=o;Wi[u>>0]=h;Wi[u+1>>0]=h>>8;Wi[u+2>>0]=h>>16;Wi[u+3>>0]=h>>24;o=o+4|0;Wi[o>>0]=s;Wi[o+1>>0]=s>>8;Wi[o+2>>0]=s>>16;Wi[o+3>>0]=s>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(n,a+32|0,16,16);i=0;do{u=i<<4;s=a+(u+48)|0;b=s;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;w=n+u|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;h=Zi(i,r)|0;o=e+h|0;k=o;l=Xi[k>>2]|0;k=Xi[k+4>>2]|0;f=XT(c^b|0,w^s|0,1)|0;f=YT(c|b|0,w|s|0,f&2147450879|0,Ie&2147450879|0)|0;s=Ie;w=XT(f^l|0,s^k|0,1)|0;w=YT(f|l|0,s|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[o>>2]=w;Xi[o+4>>2]=Ie;u=u|8;o=a+(u+48)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=n+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+8)|0;s=h;l=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=XT(k^w|0,u^o|0,1)|0;f=YT(k|w|0,u|o|0,f&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(f^l|0,o^s|0,1)|0;u=YT(f|l|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=t;return}function kd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i+r|0,16,r);i=i+(0-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function bd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;a=Ue;Ue=Ue+1088|0;f=a+960|0;l=a+832|0;db(f,i+r|0,16,r);Ob(l,a,i,16,16,r);i=0;do{t=i<<4;o=f+t|0;b=o;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;w=l+t|0;c=w;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;n=Zi(i,r)|0;s=e+n|0;k=s;u=Xi[k>>2]|0;k=Xi[k+4>>2]|0;h=XT(c^b|0,w^o|0,1)|0;h=YT(c|b|0,w|o|0,h&2147450879|0,Ie&2147450879|0)|0;o=Ie;w=XT(h^u|0,o^k|0,1)|0;w=YT(h|u|0,o|k|0,w&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=w;Xi[s+4>>2]=Ie;t=t|8;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(n+8)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=a;return}function cd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=Ue;Ue=Ue+464|0;a=o+256|0;n=o+128|0;t=o;db(n,i+r|0,16,r);i=i+(2-(r<<1))|0;f=a;l=0;while(1){w=i;h=w;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=f;s=u;Wi[s>>0]=h;Wi[s+1>>0]=h>>8;Wi[s+2>>0]=h>>16;Wi[s+3>>0]=h>>24;u=u+4|0;Wi[u>>0]=w;Wi[u+1>>0]=w>>8;Wi[u+2>>0]=w>>16;Wi[u+3>>0]=w>>24;u=i+8|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=f+8|0;h=s;Wi[h>>0]=w;Wi[h+1>>0]=w>>8;Wi[h+2>>0]=w>>16;Wi[h+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=u;Wi[s+1>>0]=u>>8;Wi[s+2>>0]=u>>16;Wi[s+3>>0]=u>>24;l=l+1|0;if((l|0)==13)break;else{i=i+r|0;f=f+16|0}}mb(t,a+32|0,16,16);i=0;do{h=i<<4;u=n+h|0;b=u;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;f=t+h|0;c=f;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;w=Zi(i,r)|0;s=e+w|0;k=s;a=Xi[k>>2]|0;k=Xi[k+4>>2]|0;l=XT(c^b|0,f^u|0,1)|0;l=YT(c|b|0,f|u|0,l&2147450879|0,Ie&2147450879|0)|0;u=Ie;f=XT(l^a|0,u^k|0,1)|0;f=YT(l|a|0,u|k|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[s>>2]=f;Xi[s+4>>2]=Ie;h=h|8;s=n+h|0;f=s;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(w+8)|0;u=w;a=Xi[u>>2]|0;u=Xi[u+4>>2]|0;l=XT(k^f|0,h^s|0,1)|0;l=YT(k|f|0,h|s|0,l&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(l^a|0,s^u|0,1)|0;h=YT(l|a|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=8);Ue=o;return}function dd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;n=e;t=Xi[n>>2]|0;n=Xi[n+4>>2]|0;o=i;l=o;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;a=XT(l^t|0,o^n|0,1)|0;a=YT(l|t|0,o|n|0,a&2147450879|0,Ie&2147450879|0)|0;n=e;Xi[n>>2]=a;Xi[n+4>>2]=Ie;n=e+r|0;a=n;o=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=i+r|0;l=t;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;f=XT(l^o|0,t^a|0,1)|0;f=YT(l|o|0,t|a|0,f&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=f;Xi[n+4>>2]=Ie;n=r<<1;f=e+n|0;a=f;t=Xi[a>>2]|0;a=Xi[a+4>>2]|0;n=i+n|0;o=n;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;l=XT(o^t|0,n^a|0,1)|0;l=YT(o|t|0,n|a|0,l&2147450879|0,Ie&2147450879|0)|0;Xi[f>>2]=l;Xi[f+4>>2]=Ie;f=r*3|0;r=e+f|0;e=r;l=Xi[e>>2]|0;e=Xi[e+4>>2]|0;f=i+f|0;a=f;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;i=XT(a^l|0,f^e|0,1)|0;i=YT(a|l|0,f|e|0,i&2147450879|0,Ie&2147450879|0)|0;Xi[r>>2]=i;Xi[r+4>>2]=Ie;return}function vd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;$b(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+n|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function Ed(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=r>>1;s=0;while(1){o=i+2|0;f=i+-2|0;n=i+4|0;t=i+6|0;r=(((Ji[o>>1]|0)+(Ji[i>>1]|0)|0)*20|0)+16+(Ji[i+-4>>1]|0)+(Zi((Ji[n>>1]|0)+(Ji[f>>1]|0)|0,-5)|0)+(Ji[t>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;l=e+2|0;a=i+8|0;r=(((Ji[n>>1]|0)+(Ji[o>>1]|0)|0)*20|0)+16+(Ji[f>>1]|0)+(Zi((Ji[t>>1]|0)+(Ji[i>>1]|0)|0,-5)|0)+(Ji[a>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[l>>1]=((Ji[l>>1]|0)+1+r|0)>>>1;f=e+4|0;l=i+10|0;r=(((Ji[t>>1]|0)+(Ji[n>>1]|0)|0)*20|0)+16+(Ji[i>>1]|0)+(Zi((Ji[a>>1]|0)+(Ji[o>>1]|0)|0,-5)|0)+(Ji[l>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+6|0;r=(((Ji[a>>1]|0)+(Ji[t>>1]|0)|0)*20|0)+16+(Ji[o>>1]|0)+(Zi((Ji[l>>1]|0)+(Ji[n>>1]|0)|0,-5)|0)+(Ji[i+12>>1]|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;s=s+1|0;if((s|0)==4)break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}return}function Sd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+32|0;f=a;$b(f,i,8,r);l=0;do{n=Zi(l,r)|0;s=i+(n+2)|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=f+(l<<3)|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+n|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;l=l+1|0}while((l|0)!=4);Ue=a;return}function _d(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{s=i<<3;t=f+(s+16)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function md(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i,8,r);o=r<<1;t=i+(0-o)|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;u=i+(0-r)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=s+8|0;Xi[h>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;t=n;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=h;t=i+r|0;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function pd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;$b(f,i,8,r);nc(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Fd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function yd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+80|0;k=d;w=k+16|0;c=r<<1;b=i+(0-c)|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;f=k;Xi[f>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[f+4>>2]=b;f=i+(0-r)|0;b=f;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=k+8|0;Xi[u>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[u+4>>2]=f;u=i;f=u;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;b=w;Xi[b>>2]=f;Xi[b+4>>2]=u;b=i+r|0;u=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+24|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=b;c=i+c|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+32|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*3|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;h=k+40|0;Xi[h>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[h+4>>2]=b;h=i+(r<<2)|0;b=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;c=k+48|0;Xi[c>>2]=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;Xi[c+4>>2]=h;c=i+(r*5|0)|0;h=c;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;b=k+56|0;Xi[b>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[b+4>>2]=c;b=i+(r*6|0)|0;c=b;b=b+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;k=k+64|0;Xi[k>>2]=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;Xi[k+4>>2]=b;k=r>>1;b=k<<1;c=k*3|0;f=f&65535;i=0;while(1){l=Ji[w+-8>>1]|0;a=f&65535;n=Ji[w+8>>1]|0;t=Ji[w+16>>1]|0;o=Ji[w+24>>1]|0;s=Ji[w+32>>1]|0;u=Ji[w+40>>1]|0;h=Ji[w+48>>1]|0;r=((n+a|0)*20|0)+((Ji[w+-16>>1]|0)+16+o)+(Zi(t+l|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((t+n|0)*20|0)+(l+16+s)+(Zi(o+a|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((o+t|0)*20|0)+(a+16+u)+(Zi(s+n|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((s+o|0)*20|0)+(n+16+h)+(Zi(u+t|0,-5)|0)>>5;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;r=w+2|0;i=i+1|0;if((i|0)==4)break;f=Gi[r>>1]|0;e=e+2|0;w=r}Ue=d;return}function Od(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;s=r<<1;o=i+(0-s)|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;u=i+(0-r)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=t+8|0;Xi[h>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[h+4>>2]=u;h=i;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=n;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=h;o=i+r|0;h=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=o;s=i+s|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+32|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*3|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=t+40|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=o;u=i+(r<<2)|0;o=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+48|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=u;s=i+(r*5|0)|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=t+56|0;Xi[o>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*6|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;fc(l,n,8);nc(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Ad(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+288|0;a=d;b=r>>1;c=b<<1;f=a;l=0;r=i+(0-c<<1)|0;while(1){o=Ji[r>>1]|0;h=Ji[r+2>>1]|0;w=Ji[r+-2>>1]|0;k=Ji[r+4>>1]|0;u=Ji[r+6>>1]|0;Xi[f>>2]=(Ji[r+-4>>1]|0)+((h+o|0)*20|0)+(Zi(k+w|0,-5)|0)+u;s=Ji[r+8>>1]|0;Xi[f+4>>2]=((k+h|0)*20|0)+w+s+(Zi(u+o|0,-5)|0);w=Ji[r+10>>1]|0;Xi[f+8>>2]=((u+k|0)*20|0)+o+w+(Zi(s+h|0,-5)|0);Xi[f+12>>2]=((s+u|0)*20|0)+h+(Ji[r+12>>1]|0)+(Zi(w+k|0,-5)|0);l=l+1|0;if((l|0)==9)break;else{f=f+32|0;r=r+(b<<1)|0}}k=b*3|0;w=a+64|0;h=0;while(1){l=Xi[w+-32>>2]|0;i=Xi[w>>2]|0;a=Xi[w+32>>2]|0;n=Xi[w+64>>2]|0;t=Xi[w+96>>2]|0;o=Xi[w+128>>2]|0;s=Xi[w+160>>2]|0;u=Xi[w+192>>2]|0;r=((a+i|0)*20|0)+((Xi[w+-64>>2]|0)+512+t)+(Zi(n+l|0,-5)|0)>>10;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=((Ji[e>>1]|0)+1+r|0)>>>1;f=e+(b<<1)|0;r=((n+a|0)*20|0)+(l+512+o)+(Zi(t+i|0,-5)|0)>>10;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(c<<1)|0;r=((t+n|0)*20|0)+(i+512+s)+(Zi(o+a|0,-5)|0)>>10;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;f=e+(k<<1)|0;r=((o+t|0)*20|0)+(a+512+u)+(Zi(s+n|0,-5)|0)>>10;if(r>>>0>=16384)r=0-r>>31&16383;Gi[f>>1]=((Ji[f>>1]|0)+1+r|0)>>>1;h=h+1|0;if((h|0)==4)break;else{w=w+4|0;e=e+2|0}}Ue=d;return}function gd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+432|0;t=a;l=a+392|0;f=a+360|0;n=t+16|0;o=2-(r<<1)|0;h=i+o|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+8|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+2|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*3|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+24|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+32|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;s=i+(o+(r*5|0))|0;u=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=t+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=s;h=i+(o+(r*6|0))|0;s=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=t+48|0;Xi[u>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[u+4>>2]=h;u=i+(o+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;s=t+56|0;Xi[s>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[s+4>>2]=u;o=i+(o+(r<<3))|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=t+64|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;fc(l,n,8);nc(f,a+72|0,i,8,r);i=0;do{u=i<<3;o=l+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=f+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Md(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+112|0;f=a;l=a+72|0;n=f+16|0;o=r<<1;t=i+(0-o)|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;s=i+(0-r)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=f+8|0;Xi[u>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[u+4>>2]=s;u=i;s=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;t=n;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=u;t=i+r|0;u=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+24|0;Xi[s>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[s+4>>2]=t;o=i+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+32|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=f+40|0;Xi[s>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[s+4>>2]=t;s=i+(r<<2)|0;t=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;o=f+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=s;o=i+(r*5|0)|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=f+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=f+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{s=i<<3;t=f+(s+24)|0;w=Xi[t>>2]|0;t=Xi[t+4>>2]|0;s=l+s|0;k=s;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;u=e+(Zi(i,r)|0)|0;o=u;n=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,s^t|0,1)|0;h=YT(k|w|0,s|t|0,h&2147450879|0,Ie&2147450879|0)|0;t=Ie;s=XT(h^n|0,t^o|0,1)|0;s=YT(h|n|0,t|o|0,s&2147450879|0,Ie&2147450879|0)|0;Xi[u>>2]=s;Xi[u+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Rd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;t=i+r|0;$b(f,t,8,r);o=r<<1;h=i+(0-o)|0;u=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=s;Xi[w>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[w+4>>2]=h;w=i+(0-r)|0;h=w;w=w+4|0;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=s+8|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=w;u=i;w=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n;Xi[h>>2]=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;Xi[h+4>>2]=u;h=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[u+4>>2]=t;o=i+o|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+32|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*3|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;u=s+40|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=t;u=i+(r<<2)|0;t=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+48|0;Xi[o>>2]=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;Xi[o+4>>2]=u;o=i+(r*5|0)|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=s+56|0;Xi[t>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[t+4>>2]=o;t=i+(r*6|0)|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{h=i<<3;s=f+h|0;n=s;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;h=l+h|0;k=h;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;w=e+(Zi(i,r)|0)|0;u=w;o=Xi[u>>2]|0;u=Xi[u+4>>2]|0;t=XT(k^n|0,h^s|0,1)|0;t=YT(k|n|0,h|s|0,t&2147450879|0,Ie&2147450879|0)|0;s=Ie;h=XT(t^o|0,s^u|0,1)|0;h=YT(t|o|0,s|u|0,h&2147450879|0,Ie&2147450879|0)|0;Xi[w>>2]=h;Xi[w+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Td(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+352|0;f=a+320|0;l=a+288|0;$b(f,i+r|0,8,r);nc(l,a,i,8,r);i=0;do{t=i<<3;s=f+t|0;w=s;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;t=l+t|0;k=t;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;n=e+(Zi(i,r)|0)|0;o=n;u=Xi[o>>2]|0;o=Xi[o+4>>2]|0;h=XT(k^w|0,t^s|0,1)|0;h=YT(k|w|0,t|s|0,h&2147450879|0,Ie&2147450879|0)|0;s=Ie;t=XT(h^u|0,s^o|0,1)|0;t=YT(h|u|0,s|o|0,t&2147450879|0,Ie&2147450879|0)|0;Xi[n>>2]=t;Xi[n+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Nd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;a=Ue;Ue=Ue+144|0;s=a;f=a+104|0;l=a+72|0;n=s+16|0;$b(f,i+r|0,8,r);t=2-(r<<1)|0;h=i+t|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+r)|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+8|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+2|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=n;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*3|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+24|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r<<2))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+32|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;o=i+(t+(r*5|0))|0;u=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;h=s+40|0;Xi[h>>2]=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;Xi[h+4>>2]=o;h=i+(t+(r*6|0))|0;o=h;h=h+4|0;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;u=s+48|0;Xi[u>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[u+4>>2]=h;u=i+(t+(r*7|0))|0;h=u;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=s+56|0;Xi[o>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[o+4>>2]=u;t=i+(t+(r<<3))|0;o=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;i=s+64|0;Xi[i>>2]=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;Xi[i+4>>2]=t;fc(l,n,8);i=0;do{u=i<<3;o=f+u|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=l+u|0;k=u;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(Zi(i,r)|0)|0;s=h;t=Xi[s>>2]|0;s=Xi[s+4>>2]|0;n=XT(k^w|0,u^o|0,1)|0;n=YT(k|w|0,u|o|0,n&2147450879|0,Ie&2147450879|0)|0;o=Ie;u=XT(n^t|0,o^s|0,1)|0;u=YT(n|t|0,o|s|0,u&2147450879|0,Ie&2147450879|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;i=i+1|0}while((i|0)!=4);Ue=a;return}function Dd(e){e=e|0;jT(Xi[e+60>>2]|0,0,8156)|0;e=Cd(e)|0;return((e|0)<0?e:0)|0}function Cd(e){e=e|0;var i=0,r=0,f=0,l=0;f=Xi[e+60>>2]|0;Xi[f+4>>2]=e;i=iA(31328)|0;Xi[f+136>>2]=i;e:do{if(((i|0)!=0?(Xi[f+72>>2]=i,Xi[f+8>>2]=f,r=rA(199)|0,Xi[f+152>>2]=r,(r|0)!=0):0)?(r=xg()|0,Xi[f+164>>2]=r,(r|0)!=0):0){r=0;do{i=xg()|0;Xi[f+3520+(r*80|0)>>2]=i;if(!i){l=8;break e}Xi[f+3520+(r*80|0)+4>>2]=i;r=r+1|0}while(r>>>0<32);Xi[f+6100>>2]=2147483647;r=aM()|0;Xi[f+8012>>2]=r;if(r){FN(f+7924|0);Wi[f+8065>>0]=1;Xi[f+6092>>2]=0;jE(f);i=0}else l=8}else l=8}while(0);if((l|0)==8){Pd(e)|0;i=-12}return i|0}function Pd(e){e=e|0;var i=0,r=0,f=0,l=0;l=Xi[e+60>>2]|0;Ld(l);vA(l+8012|0);vA(l+152|0);vA(l+168|0);vA(l+180|0);vA(l+172|0);vA(l+184|0);vA(l+176|0);vA(l+188|0);Vg(l+164|0);e=0;do{f=l+3520+(e*80|0)|0;ME(l,f,-1);Vg(f);e=e+1|0}while((e|0)!=32);e=0;do{UA(l+192+(e<<2)|0);e=e+1|0}while((e|0)!=16);e=0;do{UA(l+256+(e<<2)|0);e=e+1|0}while((e|0)!=32);e=0;do{UA(l+384+(e<<2)|0);e=e+1|0}while((e|0)!=256);Xi[l+1412>>2]=0;Xi[l+1416>>2]=0;Xi[l+1408>>2]=0;vA(l+3092|0);vA(l+3096|0);vA(l+3100|0);f=l+141|0;e=Wi[f>>0]|0;if((e&255)>1){r=1;do{i=l+72+(r<<2)|0;if(Xi[i>>2]|0){vA(i);vA(l+8+(r<<2)|0);e=Wi[f>>0]|0}r=r+1|0}while((r|0)<(e&255|0))}e=l+136|0;i=l+72|0;if((Xi[e>>2]|0)==(Xi[i>>2]|0))Xi[e>>2]=0;vA(i);r=l+7996|0;e=l+8004|0;if((Xi[e>>2]|0)>0){i=0;do{vA((Xi[r>>2]|0)+(i<<6)|0);vA((Xi[r>>2]|0)+(i<<6)+60|0);i=i+1|0}while((i|0)<(Xi[e>>2]|0))}vA(r);Xi[e>>2]=0;return 0}function Ld(e){e=e|0;vA(e+3500|0);vA(e+3504|0);vA(e+7948|0);vA(e+7952|0);vA(e+7956|0);vA(e+7960|0);vA(e+7964|0);vA(e+7932|0);vA(e+7944|0);vA(e+7968|0);vA(e+7936|0);vA(e+7940|0);vA(e+3092|0);vA(e+3100|0);vA(e+3096|0);YA(e+1420|0);YA(e+1424|0);return}function Id(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;o=Xi[e+60>>2]|0;t=Xi[i+60>>2]|0;if((Wi[o+8065>>0]|0)==0?(f=Cd(e)|0,(f|0)<0):0)r=f;else{l=0;a=3}e:do{if((a|0)==3){while(1){a=0;e=o+3520+(l*80|0)|0;ME(o,e,-1);if(Xi[(Xi[t+3520+(l*80|0)>>2]|0)+248>>2]|0){f=HO(o+3520+(l*80|0)+4|0,t+3520+(l*80|0)+4|0)|0;if((f|0)<0){r=f;break e}n=BA(Xi[t+3520+(l*80|0)+56>>2]|0)|0;Xi[o+3520+(l*80|0)+56>>2]=n;if(!n){r=e;a=11;break}Xi[o+3520+(l*80|0)+16>>2]=Xi[t+3520+(l*80|0)+16>>2];n=BA(Xi[t+3520+(l*80|0)+60>>2]|0)|0;Xi[o+3520+(l*80|0)+60>>2]=n;if(!n){r=e;a=11;break}Xi[o+3520+(l*80|0)+24>>2]=Xi[t+3520+(l*80|0)+24>>2];n=BA(Xi[t+3520+(l*80|0)+64>>2]|0)|0;Xi[o+3520+(l*80|0)+64>>2]=n;if(!n){r=e;a=11;break}Xi[o+3520+(l*80|0)+32>>2]=Xi[t+3520+(l*80|0)+32>>2];Xi[o+3520+(l*80|0)+28>>2]=Xi[t+3520+(l*80|0)+28>>2];n=o+3520+(l*80|0)+40|0;f=t+3520+(l*80|0)+40|0;Xi[n>>2]=Xi[f>>2];Xi[n+4>>2]=Xi[f+4>>2];Xi[n+8>>2]=Xi[f+8>>2];Xi[n+12>>2]=Xi[f+12>>2];Wi[o+3520+(l*80|0)+78>>0]=Wi[t+3520+(l*80|0)+78>>0]|0;Gi[o+3520+(l*80|0)+76>>1]=Gi[t+3520+(l*80|0)+76>>1]|0;if(Xi[t+3520+(l*80|0)+72>>2]|0){f=BA(Xi[t+3520+(l*80|0)+68>>2]|0)|0;Xi[o+3520+(l*80|0)+68>>2]=f;if(!f){r=e;a=11;break}Xi[o+3520+(l*80|0)+72>>2]=Xi[f+4>>2]}}l=l+1|0;if(l>>>0>=32)break;else a=3}if((a|0)==11){ME(o,r,-1);r=-12;break}n=o+1412|0;a=t+1412|0;if((Xi[n>>2]|0)==(Xi[a>>2]|0))l=0;else{Xi[n>>2]=0;l=0}while(1){f=o+192+(l<<2)|0;UA(f);e=Xi[t+192+(l<<2)>>2]|0;if(e|0?(e=BA(e)|0,Xi[f>>2]=e,(e|0)==0):0){r=-12;break e}l=l+1|0;if(l>>>0>=16){l=0;break}}while(1){f=o+256+(l<<2)|0;UA(f);e=Xi[t+256+(l<<2)>>2]|0;if(e|0?(e=BA(e)|0,Xi[f>>2]=e,(e|0)==0):0){r=-12;break e}l=l+1|0;if(l>>>0>=32){l=0;break}}do{f=o+384+(l<<2)|0;UA(f);e=Xi[t+384+(l<<2)>>2]|0;if(e|0?(e=BA(e)|0,Xi[f>>2]=e,(e|0)==0):0){r=-12;break e}l=l+1|0}while(l>>>0<256);f=Xi[a>>2]|0;if((Xi[n>>2]|0)!=(f|0)?(r=Hd(o,f,Xi[i+144>>2]|0)|0,(r|0)<0):0)break;r=Gi[t+7980>>1]|0;f=o+7980|0;Gi[f>>1]=r;Gi[o+7982>>1]=Gi[t+7982>>1]|0;Xi[o+6084>>2]=Xi[t+6084>>2];e=o+6100|0;Xi[e>>2]=Xi[t+6100>>2];i=t+6092|0;Xi[o+6092>>2]=Xi[i>>2];Xi[o+6116>>2]=Xi[t+6116>>2];Wi[o+8066>>0]=Wi[t+8066>>0]|0;Xi[o+8076>>2]=Xi[t+8076>>2];Wi[o+141>>0]=Wi[t+141>>0]|0;Wi[o+140>>0]=Wi[t+140>>0]|0;if(!(Xi[i>>2]|0))r=0;else{Gi[f>>1]=(r&65535)+1&255;Xi[e>>2]=2147483647;r=0}}}while(0);return r|0}function Hd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=Ue;Ue=Ue+16|0;d=y;Ld(e);c=e+192|0;F=e+1412|0;Xi[F>>2]=0;_=e+1408|0;Xi[_>>2]=0;e:do{if(!i)f=0;else{u=Xi[i+13320>>2]|0;m=i+13376|0;w=Xi[m>>2]|0;p=i+13380|0;v=Xi[p>>2]|0;u=Zi((v>>u)+1|0,(w>>u)+1|0)|0;E=i+13384|0;S=i+13388|0;k=Zi(Xi[S>>2]|0,Xi[E>>2]|0)|0;o=i+13412|0;s=i+13416|0;b=Zi(Xi[s>>2]|0,Xi[o>>2]|0)|0;h=e+6104|0;Xi[h>>2]=(w>>2)+1;w=e+6108|0;Xi[w>>2]=(v>>2)+1;if(k>>>0>=14510024){f=e+3500|0;Xi[f>>2]=0;if(k>>>0<268435455)v=6;else{Xi[e+3504>>2]=0;v=39}}else{f=e+3500|0;Xi[f>>2]=iA(k*148|0)|0;v=6}i:do{if((v|0)==6){t=iA(k<<3)|0;Xi[e+3504>>2]=t;if((t|0)==0|(Xi[f>>2]|0)==0)v=39;else{l=i+13400|0;a=Xi[l>>2]|0;n=i+13396|0;f=Xi[n>>2]|0;do{if(f){if((2147483647/(f>>>0)|0)>>>0>a>>>0){t=rA(Zi(f,a)|0)|0;a=Xi[l>>2]|0;f=Xi[n>>2]|0;l=e+7948|0;Xi[l>>2]=t;if(!f)break}else{l=e+7948|0;Xi[l>>2]=0}if((2147483647/(f>>>0)|0)>>>0>a>>>0){t=rA(Zi(f,a)|0)|0;Xi[e+7952>>2]=t;if((t|0)==0|(Xi[l>>2]|0)==0){v=39;break i}f=Xi[i+13404>>2]|0;l=Xi[i+13408>>2]|0;if((l|0)!=0?(2147483647/(l>>>0)|0)>>>0>f>>>0:0)f=rA(Zi(l,f)|0)|0;else f=0;t=e+7960|0;Xi[t>>2]=f;f=iA(b)|0;n=e+7956|0;Xi[n>>2]=f;a=(Xi[o>>2]|0)+1|0;l=(Xi[s>>2]|0)+1|0;if((l|0)!=0?(2147483647/(l>>>0)|0)>>>0>a>>>0:0){l=rA(Zi(l,a)|0)|0;f=Xi[n>>2]|0}else l=0;Xi[e+7964>>2]=l;if(!f){v=39;break i}if((l|0)==0|(Xi[t>>2]|0)==0){v=39;break i}l=e+7968|0;Xi[l>>2]=iA(k)|0;if(u>>>0>=536870911){f=e+7944|0;Xi[f>>2]=0;if(u>>>0>=2147483647){Xi[e+7932>>2]=0;v=39;break i}}else{f=e+7944|0;Xi[f>>2]=rA(u<<2)|0}u=rA(u)|0;Xi[e+7932>>2]=u;if(!u){v=39;break i}if(!(Xi[l>>2]|0)){v=39;break i}if(!(Xi[f>>2]|0)){v=39;break i}a=Xi[h>>2]|0;f=Xi[w>>2]|0;do{if(!f)Xi[e+7936>>2]=0;else{if((2147483647/(f>>>0)|0)>>>0>a>>>0){u=iA(Zi(f,a)|0)|0;a=Xi[h>>2]|0;f=Xi[w>>2]|0;l=e+7936|0;Xi[l>>2]=u;if(!f)break}else{l=e+7936|0;Xi[l>>2]=0}if((2147483647/(f>>>0)|0)>>>0<=a>>>0)break;w=iA(Zi(f,a)|0)|0;Xi[e+7940>>2]=w;if((w|0)==0|(Xi[l>>2]|0)==0){v=39;break i}w=e+1420|0;Xi[w>>2]=VA(b*12|0,11)|0;b=VA(k*392|0,11)|0;Xi[e+1424>>2]=b;if((b|0)==0|(Xi[w>>2]|0)==0){v=39;break i}l=e+4|0;Bd(Xi[l>>2]|0,c,i);if((r|0)==-1){Xi[d>>2]=Xi[i+60>>2];Xi[d+4>>2]=-1;f=UO(Xi[l>>2]|0,d)|0;if((f|0)<0)break i;Xi[(Xi[l>>2]|0)+144>>2]=f}else Xi[(Xi[l>>2]|0)+144>>2]=r;v=i+52|0;_F(e+6120|0,Xi[v>>2]|0);KE(e+6172|0,Xi[v>>2]|0);QO(e+7916|0,Xi[v>>2]|0);vA(e+168|0);vA(e+180|0);vA(e+172|0);vA(e+184|0);vA(e+176|0);vA(e+188|0);do{if(Wi[i+13197>>0]|0){if(Xi[(Xi[l>>2]|0)+704>>2]|0)break;f=Xi[i+4>>2]|0?3:1;l=i+56|0;a=0;do{v=Xi[p>>2]>>Xi[i+13436+(a<<2)>>2];d=Zi(Xi[m>>2]>>Xi[i+13424+(a<<2)>>2]<<1,Xi[S>>2]|0)|0;Xi[e+168+(a<<2)>>2]=rA(d<<Xi[l>>2])|0;v=Zi(v<<1,Xi[E>>2]|0)|0;Xi[e+180+(a<<2)>>2]=rA(v<<Xi[l>>2])|0;a=a+1|0}while((a|0)<(f|0))}}while(0);Xi[F>>2]=i;Xi[_>>2]=Xi[(Xi[e+192+(Xi[i>>2]<<2)>>2]|0)+4>>2];f=0;break e}}while(0);Xi[e+7940>>2]=0;v=39;break i}}else Xi[e+7948>>2]=0}while(0);Xi[e+7952>>2]=0;v=39}}}while(0);if((v|0)==39){Ld(e);f=-12}Ld(e);Xi[F>>2]=0}}while(0);Ue=y;return f|0}function Bd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+16|0;l=h;a=Xi[(Xi[i+(Xi[r>>2]<<2)>>2]|0)+4>>2]|0;Xi[e+144>>2]=Xi[r+60>>2];Xi[e+132>>2]=Xi[r+13376>>2];Xi[e+136>>2]=Xi[r+13380>>2];Xi[e+124>>2]=Xi[r+12>>2];Xi[e+128>>2]=Xi[r+16>>2];Xi[e+180>>2]=Xi[r+76+(((Xi[r+72>>2]|0)+-1|0)*12|0)+4>>2];Xi[e+828>>2]=qi[r+302>>0];Xi[e+832>>2]=qi[r+335>>0];f=r+160|0;Xi[l>>2]=Xi[f>>2];Xi[l+4>>2]=Xi[f+4>>2];dO(e,l)|0;if(!(Xi[r+176>>2]|0))i=1;else i=Xi[r+184>>2]|0?2:1;Xi[e+400>>2]=i;if(!(Xi[r+188>>2]|0)){i=2;f=2;l=2}else{i=qi[r+194>>0]|0;f=qi[r+193>>0]|0;l=qi[r+192>>0]|0}Xi[e+388>>2]=l;Xi[e+392>>2]=f;Xi[e+396>>2]=i;if(!(Wi[a+444>>0]|0)){if(Xi[r+240>>2]|0){t=r+248|0;s=r+244|0;u=9}}else{t=a+452|0;s=a+448|0;u=9}if((u|0)==9?(n=Xi[t>>2]|0,o=Xi[s>>2]|0,(n|0)!=0&(o|0)!=0):0)rg(e+884|0,e+880|0,o,0,n,0,1073741824,0)|0;Ue=h;return}function Ud(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;m=Ue;Ue=Ue+32|0;v=m+24|0;b=m+16|0;r=m;S=Xi[e+60>>2]|0;Xi[(Xi[e+64>>2]|0)+4>>2]=1;i=Cd(e)|0;e:do{if((i|0)>=0){Xi[S+7984>>2]=0;Xi[S+8116>>2]=0;Xi[S+6092>>2]=1;E=e+808|0;if(!(Xi[E>>2]&2))i=1;else i=Xi[e+800>>2]&255;Wi[S+141>>0]=i;i:do{if((Xi[e+104>>2]|0)>0?Xi[e+100>>2]|0:0){d=S+4|0;c=Xi[d>>2]|0;l=Xi[c+100>>2]|0;f=Xi[c+104>>2]|0;if((f|0)<=-1){Xi[r>>2]=120933;Xi[r+4>>2]=120947;Xi[r+8>>2]=137;nA(0,0,150445,r);$e()}w=l+f|0;r:do{if((f|0)>3){if(((Wi[l>>0]|0)==0?(Wi[l+1>>0]|0)==0:0)?(qi[l+2>>0]|0)<=1:0){_=31;break}Wi[S+8066>>0]=1;k=w;r=f>>>0>21?21:f;i=l+r|0;if((k-i|0)<1){h=1;i=w;r=f}else{r=r+1|0;h=(qi[i>>0]&3)+1|0;i=l+r|0}f:do{if((k-i|0)>=1){o=Wi[i>>0]|0;s=o&255;u=S+8076|0;Xi[u>>2]=2;if(o<<24>>24){i=l+(r+1)|0;r=0;l:while(1){if((k-i|0)<1){f=0;l=w}else{f=qi[i>>0]&63;l=i+1|0}if((k-l|0)>=2){i=l+2|0;o=(qi[l>>0]|qi[l+1>>0]<<8)&65535;o=o<<8&65280|o>>>8;if(o){a=i;t=0;while(1){n=k-a|0;if((n|0)<2)i=0;else{i=(qi[a>>0]|qi[a+1>>0]<<8)&65535;i=i<<8&65280|i>>>8}l=i+2|0;if(n>>>0<l>>>0){_=25;break l}i=xd(S,a,l)|0;if((i|0)<0){_=27;break l}i=a+(n>>>0>l>>>0?l:n)|0;t=t+1|0;if((t|0)>=(o|0))break;else a=i}}}else i=w;r=r+1|0;if((r|0)>=(s|0)){i=u;break f}}if((_|0)==25){nA(Xi[d>>2]|0,16,120971,b);i=-1094995529;_=35;break r}else if((_|0)==27){Xi[v>>2]=f;Xi[v+4>>2]=r;nA(c,16,122375,v);_=35;break r}}else i=u}else{i=S+8076|0;Xi[i>>2]=2}}while(0);Xi[i>>2]=h;r=0}else _=31}while(0);if((_|0)==31){Wi[S+8066>>0]=0;i=xd(S,l,f)|0;if((i|0)<0)_=35;else r=0}if((_|0)==35){Pd(e)|0;break e}while(1){i=Xi[S+256+(r<<2)>>2]|0;r=r+1|0;if(i|0)break;if(r>>>0>=32)break i}Bd(Xi[d>>2]|0,S+192|0,Xi[i+4>>2]|0)}}while(0);if(Xi[E>>2]&1|0?(Xi[e+800>>2]|0)>1:0){Wi[S+140>>0]=1;i=0;break}Wi[S+140>>0]=2;i=0}}while(0);Ue=m;return i|0}function xd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;w=Ue;Ue=Ue+16|0;u=w+8|0;h=e+3516|0;Xi[h>>2]=0;n=e+6092|0;Xi[e+6096>>2]=Xi[n>>2];Xi[n>>2]=0;o=e+7996|0;s=e+4|0;i=kE(e,o,i,r,Xi[s>>2]|0,qi[e+8066>>0]|0,Xi[e+8076>>2]|0)|0;if((i|0)>=0){t=e+8e3|0;r=Xi[t>>2]|0;f=(r|0)>0;e:do{if(f){l=Xi[o>>2]|0;a=0;do{if((Xi[l+(a<<6)+44>>2]&-2|0)==36)Xi[n>>2]=1;a=a+1|0}while((a|0)<(r|0));if(f){r=0;while(1){i=zd(e,(Xi[o>>2]|0)+(r<<6)|0)|0;if((i|0)<0)break;r=r+1|0;if((r|0)>=(Xi[t>>2]|0))break e}s=Xi[s>>2]|0;Xi[u>>2]=r;nA(s,24,122346,u)}}}while(0);r=Xi[h>>2]|0;if((r|0)!=0?(Wi[e+140>>0]|0)==1:0)VO(r+4|0,2147483647,0)}else nA(Xi[s>>2]|0,16,121008,w);Ue=w;return i|0}function zd(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0.0,te=0.0,oe=0.0,se=0.0,ue=0.0,he=0.0,we=0.0;fe=Ue;Ue=Ue+384|0;r=fe+312|0;ee=fe+304|0;$=fe+288|0;q=fe+280|0;X=fe+272|0;x=fe+264|0;K=fe+248|0;j=fe+184|0;Y=fe+176|0;V=fe+168|0;U=fe+160|0;H=fe+152|0;B=fe+144|0;P=fe+136|0;T=fe+128|0;R=fe+120|0;M=fe+112|0;u=fe+104|0;g=fe+96|0;F=fe+88|0;p=fe+80|0;m=fe+72|0;_=fe+64|0;E=fe+56|0;v=fe+48|0;k=fe+40|0;w=fe+32|0;h=fe+24|0;s=fe+16|0;n=fe+8|0;a=fe;J=fe+336|0;Z=fe+320|0;A=fe+368|0;O=fe+352|0;Q=e+136|0;l=(Xi[Q>>2]|0)+204|0;f=i+24|0;Xi[l>>2]=Xi[f>>2];Xi[l+4>>2]=Xi[f+4>>2];Xi[l+8>>2]=Xi[f+8>>2];Xi[l+12>>2]=Xi[f+12>>2];Xi[l+16>>2]=Xi[f+16>>2];f=Xi[i+44>>2]|0;W=e+3508|0;Xi[W>>2]=f;S=e+3512|0;Xi[S>>2]=Xi[i+48>>2];e:do{switch(f|0){case 32:{f=e+4|0;r=dE(l,Xi[f>>2]|0,e+192|0)|0;if((r|0)<0)re=403;else r=0;break}case 33:{f=e+4|0;r=OE(l,Xi[f>>2]|0,e+192|0,Xi[e+8068>>2]|0)|0;if((r|0)<0)re=403;else r=0;break}case 34:{f=e+4|0;r=AE(l,Xi[f>>2]|0,e+192|0)|0;if((r|0)<0)re=403;else r=0;break}case 40:case 39:{r=zE(e)|0;if((r|0)<0){f=e+4|0;re=403}else r=0;break}case 9:case 8:case 7:case 6:case 21:case 20:case 19:case 18:case 17:case 16:case 5:case 4:case 3:case 2:case 0:case 1:{L=Xi[Q>>2]|0;N=L+204|0;I=L+212|0;G=Xi[I>>2]|0;ie=qi[(Xi[N>>2]|0)+(G>>>3)>>0]<<(G&7)>>>7&1;C=L+220|0;Xi[I>>2]=((G|0)<(Xi[C>>2]|0)&1)+G;ie=ie&255;G=e+2428|0;Wi[G>>0]=ie;if(!((f+-16|0)>>>0>4|ie<<24>>24==0)?(ie=e+7980|0,Gi[ie>>1]=(Ji[ie>>1]|0)+1&255,Xi[e+6100>>2]=2147483647,(f+-19|0)>>>0<2):0){TE(e);r=Xi[W>>2]|0}else r=f;o=e+3042|0;Wi[o>>0]=0;if((r&-8|0)==16){z=Xi[I>>2]|0;ie=qi[(Xi[N>>2]|0)+(z>>>3)>>0]<<(z&7)>>>7&1;Xi[I>>2]=((z|0)<(Xi[C>>2]|0)&1)+z;Wi[o>>0]=ie}r=Vd(N)|0;Xi[e+2408>>2]=r;if(r>>>0<=255?(t=Xi[e+384+(r<<2)>>2]|0,t|0):0){r=Wi[G>>0]|0;do{if(!(r<<24>>24)){f=e+1416|0;l=Xi[f>>2]|0;if((l|0)==(Xi[t+4>>2]|0)){D=f;f=l;break}else{nA(Xi[e+4>>2]|0,16,121051,n);r=-1094995529;break e}}else{D=e+1416|0;f=Xi[t+4>>2]|0}}while(0);Xi[D>>2]=f;a=Xi[W>>2]|0;n=(a|0)==21;if(n?(Xi[e+6096>>2]|0)==1:0)Wi[o>>0]=1;ie=e+1412|0;l=Xi[ie>>2]|0;f=Xi[(Xi[e+256+(Xi[f>>2]<<2)>>2]|0)+4>>2]|0;if((l|0)!=(f|0)){Xi[ie>>2]=f;do{if(l|0?!(n|(a&-8|0)!=16):0){if(((Xi[f+13376>>2]|0)==(Xi[l+13376>>2]|0)?(Xi[f+13380>>2]|0)==(Xi[l+13380>>2]|0):0)?(Xi[f+76+(((Xi[f+72>>2]|0)+-1|0)*12|0)>>2]|0)==(Xi[l+76+(((Xi[l+72>>2]|0)+-1|0)*12|0)>>2]|0):0)break;Wi[o>>0]=0}}while(0);TE(e);r=Hd(e,Xi[ie>>2]|0,-1)|0;if((r|0)<0)break e;r=e+7980|0;Gi[r>>1]=(Ji[r>>1]|0)+1&255;Xi[e+6100>>2]=2147483647;r=Wi[G>>0]|0}z=e+2429|0;Wi[z>>0]=0;do{if(!(r<<24>>24)){if(!(Wi[(Xi[D>>2]|0)+41>>0]|0))a=0;else{y=Xi[I>>2]|0;a=qi[(Xi[N>>2]|0)+(y>>>3)>>0]<<(y&7)>>>7&1;Xi[I>>2]=((y|0)<(Xi[C>>2]|0)&1)+y;a=a&255;Wi[z>>0]=a}l=Xi[ie>>2]|0;f=Xi[l+13384>>2]|0;l=Xi[l+13388>>2]|0;r=(Zi(f<<1,l)|0)+-2|0;d=r>>>0>65535;r=d?r>>>16:r;d=d?16:0;y=(r&65280|0)==0;r=(y?d:d|8)+(qi[145894+(y?r:r>>>8)>>0]|0)|0;if(!r)r=0;else{c=Xi[I>>2]|0;d=Xi[C>>2]|0;y=(Xi[N>>2]|0)+(c>>>3)|0;y=(ZT(qi[y>>0]|qi[y+1>>0]<<8|qi[y+2>>0]<<16|qi[y+3>>0]<<24|0)|0)<<(c&7)>>>(32-r|0);r=c+r|0;Xi[I>>2]=d>>>0>r>>>0?r:d;r=y}Xi[e+2412>>2]=r;if(r>>>0>=(Zi(l,f)|0)>>>0){e=Xi[e+4>>2]|0;Xi[s>>2]=r;nA(e,16,121080,s);r=-1094995529;break e}if(!(a<<24>>24)){Xi[e+2416>>2]=r;b=e+6088|0;Xi[b>>2]=(Xi[b>>2]|0)+1;b=e+156|0;re=42;break}r=e+156|0;if(!(Wi[r>>0]|0)){nA(Xi[e+4>>2]|0,16,121453,u);r=-1094995529;break e}else{f=Xi[D>>2]|0;b=r;break}}else{Xi[e+2416>>2]=0;Xi[e+2412>>2]=0;Xi[e+6088>>2]=0;b=e+156|0;Wi[b>>0]=0;re=42}}while(0);i:do{if((re|0)==42){Wi[b>>0]=0;f=Xi[(Xi[D>>2]|0)+1624>>2]|0;if((f|0)>0){l=Xi[C>>2]|0;r=Xi[I>>2]|0;a=0;do{r=r+1|0;r=l>>>0>r>>>0?r:l;a=a+1|0}while((a|0)!=(f|0));Xi[I>>2]=r}r=Vd(N)|0;y=e+2420|0;Xi[y>>2]=r;if(r>>>0>=3){e=Xi[e+4>>2]|0;Xi[h>>2]=r;nA(e,16,121116,h);r=-1094995529;break e}f=Xi[W>>2]|0;if(!((r|0)==2|(f&-8|0)!=16)){nA(Xi[e+4>>2]|0,16,121141,w);r=-1094995529;break e}r=e+2430|0;Wi[r>>0]=1;if(Wi[(Xi[D>>2]|0)+39>>0]|0){c=Xi[I>>2]|0;d=qi[(Xi[N>>2]|0)+(c>>>3)>>0]<<(c&7)>>>7&1;Xi[I>>2]=((c|0)<(Xi[C>>2]|0)&1)+c;Wi[r>>0]=d}r=Xi[ie>>2]|0;if(Wi[r+8>>0]|0){w=Xi[I>>2]|0;c=Xi[C>>2]|0;d=(Xi[N>>2]|0)+(w>>>3)|0;d=(ZT(qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24|0)|0)<<(w&7)>>>30;w=w+2|0;Xi[I>>2]=c>>>0>w>>>0?w:c;Wi[e+2431>>0]=d}do{if((f+-19|0)>>>0>=2){d=Xi[r+64>>2]|0;w=Xi[I>>2]|0;c=Xi[C>>2]|0;r=(Xi[N>>2]|0)+(w>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(w&7)>>>(32-d|0);d=w+d|0;Xi[I>>2]=c>>>0>d>>>0?d:c;c=e+2424|0;Xi[c>>2]=r;r=UE(e,r)|0;d=e+6080|0;do{if(!(Wi[G>>0]|0)){f=Xi[d>>2]|0;if((r|0)==(f|0))break;w=e+4|0;h=Xi[w>>2]|0;Xi[k>>2]=f;Xi[k+4>>2]=r;nA(h,24,121173,k);if(Xi[(Xi[w>>2]|0)+688>>2]&8|0){r=-1094995529;break e}r=Xi[d>>2]|0}}while(0);Xi[d>>2]=r;n=Xi[I>>2]|0;f=Xi[N>>2]|0;w=qi[f+(n>>>3)>>0]<<(n&7)>>>7&1;l=Xi[C>>2]|0;n=((n|0)<(l|0)&1)+n|0;Xi[I>>2]=n;Xi[e+2432>>2]=w;k=L+216|0;t=Xi[k>>2]|0;if(!w){f=e+2440|0;r=bE(N,Xi[e+4>>2]|0,f,Xi[ie>>2]|0,1)|0;if((r|0)<0)break e;Xi[e+2612>>2]=f;r=Xi[I>>2]|0;w=Xi[k>>2]|0;a=Xi[ie>>2]|0}else{a=Xi[ie>>2]|0;r=Xi[a+2184>>2]|0;if(!r){nA(Xi[e+4>>2]|0,16,121219,v);r=-1094995529;break e}w=(r<<1)+-2|0;r=w>>>0>65535;w=r?w>>>16:w;r=r?16:0;v=(w&65280|0)==0;r=(qi[145894+(v?w:w>>>8)>>0]|0)+(v?r:r|8)|0;if((r|0)>0){f=f+(n>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(n&7)>>>(32-r|0);r=r+n|0;r=l>>>0>r>>>0?r:l;Xi[I>>2]=r}else{r=n;f=0}Xi[e+2612>>2]=a+2188+(f*172|0);w=t}Xi[e+2436>>2]=t-n+r-w;t=a+64|0;o=Xi[t>>2]|0;s=e+2780|0;Wi[s>>0]=0;do{if(Wi[a+13198>>0]|0){u=a+13296|0;if(!(Wi[u>>0]|0))h=0;else h=Vd(N)|0;f=Vd(N)|0;v=WT(f|0,0,h|0,0)|0;n=Ie;if(n>>>0>0|(n|0)==0&v>>>0>32){v=e+4|0;nA(Xi[v>>2]|0,24,121245,E);if(!(Xi[(Xi[v>>2]|0)+688>>2]&8))break;else{r=-1094995529;break e}}E=f+h|0;Wi[s>>0]=E;if(!(E&255))break;else{n=0;f=0}do{if(n>>>0<h>>>0){l=Wi[u>>0]|0;if((l&255)>1){E=((l&255)<<1)+-2|0;le=E>>>0>65535;E=le?E>>>16:E;le=le?16:0;v=(E&65280|0)==0;le=(qi[145894+(v?E:E>>>8)>>0]|0)+(v?le:le|8)|0;v=Xi[I>>2]|0;E=Xi[C>>2]|0;l=(Xi[N>>2]|0)+(v>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(v&7)>>>(32-le|0);v=le+v|0;Xi[I>>2]=E>>>0>v>>>0?v:E}else l=0;le=l&255;Xi[e+2620+(n<<2)>>2]=Ji[a+13200+(le<<1)>>1];Wi[e+2748+n>>0]=Wi[a+13264+le>>0]|0}else{l=Xi[t>>2]|0;ae=Xi[I>>2]|0;v=Xi[C>>2]|0;le=Xi[N>>2]|0;E=le+(ae>>>3)|0;E=(ZT(qi[E>>0]|qi[E+1>>0]<<8|qi[E+2>>0]<<16|qi[E+3>>0]<<24|0)|0)<<(ae&7)>>>(32-l|0);l=ae+l|0;Xi[I>>2]=v>>>0>l>>>0?l:v;Xi[e+2620+(n<<2)>>2]=E;E=Xi[I>>2]|0;le=qi[le+(E>>>3)>>0]<<(E&7)>>>7&1;Xi[I>>2]=((E|0)<(Xi[C>>2]|0)&1)+E;Wi[e+2748+n>>0]=le}ae=Xi[I>>2]|0;le=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]|0;Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;if(le&128>>>(ae&7)){ae=Vd(N)|0;f=ae+((n|0)==0|(n|0)==(h|0)?0:f)|0;ae=e+2620+(n<<2)|0;Xi[ae>>2]=(Xi[d>>2]|0)-(f<<o)-(Xi[c>>2]|0)+(Xi[ae>>2]|0)}n=n+1|0}while((n|0)<(qi[s>>0]|0))}}while(0);f=Xi[I>>2]|0;Xi[e+2616>>2]=w-r-(Xi[k>>2]|0)+f;r=Xi[ie>>2]|0;if(!(Wi[r+13316>>0]|0)){Wi[e+3043>>0]=0;break}else{ae=qi[(Xi[N>>2]|0)+(f>>>3)>>0]<<(f&7)>>>7&1;Xi[I>>2]=((f|0)<(Xi[C>>2]|0)&1)+f;Wi[e+3043>>0]=ae;break}}else{Xi[e+2612>>2]=0;Xi[e+6080>>2]=0}}while(0);r:do{if(!(Xi[S>>2]|0)){switch(Xi[W>>2]|0){case 9:case 8:case 7:case 6:case 4:case 2:case 0:break r;default:{}}Xi[e+6084>>2]=Xi[e+6080>>2]}}while(0);do{if(!(Wi[r+13197>>0]|0)){Wi[e+3052>>0]=0;Wi[e+3053>>0]=0;Wi[e+3054>>0]=0}else{le=Xi[I>>2]|0;ae=qi[(Xi[N>>2]|0)+(le>>>3)>>0]<<(le&7)>>>7&1;Xi[I>>2]=((le|0)<(Xi[C>>2]|0)&1)+le;Wi[e+3052>>0]=ae;if(!(Xi[r+4>>2]|0))break;le=Xi[I>>2]|0;ae=qi[(Xi[N>>2]|0)+(le>>>3)>>0]<<(le&7)>>>7&1;Xi[I>>2]=((le|0)<(Xi[C>>2]|0)&1)+le;ae=ae&255;Wi[e+3054>>0]=ae;Wi[e+3053>>0]=ae}}while(0);w=e+3048|0;Xi[w>>2]=0;u=e+3044|0;Xi[u>>2]=0;r=Xi[y>>2]|0;do{if(r>>>0<2){f=Xi[D>>2]|0;Xi[u>>2]=Xi[f+8>>2];if(!r)Xi[w>>2]=Xi[f+12>>2];ae=Xi[I>>2]|0;le=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]|0;Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;do{if(!(le&128>>>(ae&7)))re=98;else{r=(Vd(N)|0)+1|0;Xi[u>>2]=r;if(Xi[y>>2]|0)break;Xi[w>>2]=(Vd(N)|0)+1;re=98}}while(0);if((re|0)==98)r=Xi[u>>2]|0;f=Xi[w>>2]|0;if(r>>>0>16|f>>>0>16){ae=Xi[e+4>>2]|0;Xi[_>>2]=r;Xi[_+4>>2]=f;nA(ae,16,121269,_);r=-1094995529;break e}r=e+3040|0;Wi[r>>0]=0;n=e+3041|0;Wi[n>>0]=0;t=xE(e)|0;if(!t){nA(Xi[e+4>>2]|0,16,121292,m);r=-1094995529;break e}do{if((t|0)>1?(Wi[(Xi[D>>2]|0)+1617>>0]|0)!=0:0){le=Xi[I>>2]|0;ae=qi[(Xi[N>>2]|0)+(le>>>3)>>0]<<(le&7)>>>7&1;Xi[I>>2]=((le|0)<(Xi[C>>2]|0)&1)+le;ae=ae&255;Wi[r>>0]=ae;do{if(ae<<24>>24){if(!(Xi[u>>2]|0))break;r=(t<<1)+-2|0;f=r>>>0>65535;r=f?r>>>16:r;f=f?16:0;l=(r&65280|0)==0;f=(qi[145894+(l?r:r>>>8)>>0]|0)+(l?f:f|8)|0;l=32-f|0;r=Xi[N>>2]|0;a=0;do{m=Xi[I>>2]|0;le=Xi[C>>2]|0;ae=r+(m>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(m&7)>>>l;m=m+f|0;Xi[I>>2]=le>>>0>m>>>0?m:le;Xi[e+2784+(a<<2)>>2]=ae;a=a+1|0}while(a>>>0<(Xi[u>>2]|0)>>>0)}}while(0);r=Xi[y>>2]|0;if(r|0){l=r;break}le=Xi[I>>2]|0;ae=qi[(Xi[N>>2]|0)+(le>>>3)>>0]<<(le&7)>>>7&1;Xi[I>>2]=((le|0)<(Xi[C>>2]|0)&1)+le;Wi[n>>0]=ae;if(!ae){re=113;break}if(!(Xi[w>>2]|0)){re=113;break}r=(t<<1)+-2|0;f=r>>>0>65535;r=f?r>>>16:r;f=f?16:0;l=(r&65280|0)==0;f=(qi[145894+(l?r:r>>>8)>>0]|0)+(l?f:f|8)|0;l=32-f|0;r=Xi[N>>2]|0;a=0;do{re=Xi[I>>2]|0;le=Xi[C>>2]|0;ae=r+(re>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(re&7)>>>l;re=re+f|0;Xi[I>>2]=le>>>0>re>>>0?re:le;Xi[e+2912+(a<<2)>>2]=ae;a=a+1|0}while(a>>>0<(Xi[w>>2]|0)>>>0);re=113}else re=113}while(0);do{if((re|0)==113){r=Xi[y>>2]|0;if(r|0){l=r;break}ae=Xi[I>>2]|0;l=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]<<(ae&7)>>>7&1;Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;Wi[e+3055>>0]=l;l=0}}while(0);r=Xi[D>>2]|0;if(!(Wi[r+5>>0]|0))f=0;else{ae=Xi[I>>2]|0;f=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]<<(ae&7)>>>7&1;Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;f=f&255}Wi[e+3056>>0]=f;a=e+3060|0;Xi[a>>2]=0;do{if(Wi[e+3043>>0]|0){n=e+3059|0;Wi[n>>0]=0;if(!l){ae=Xi[I>>2]|0;f=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]<<(ae&7);Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;f=f>>>7&1^1;Wi[n>>0]=f}else f=0;if((Xi[e+3044+((f&255)<<2)>>2]|0)>>>0<=1)break;r=Vd(N)|0;Xi[a>>2]=r;if(r>>>0<(Xi[e+3044+(qi[n>>0]<<2)>>2]|0)>>>0){r=Xi[D>>2]|0;break}else{ae=Xi[e+4>>2]|0;Xi[p>>2]=r;nA(ae,16,121335,p);r=-1094995529;break e}}}while(0);if((Wi[r+37>>0]|0)!=0?(Xi[y>>2]|0)==1:0)re=128;else re=126;do{if((re|0)==126){if(!(Wi[r+38>>0]|0))break;if(!(Xi[y>>2]|0))re=128}}while(0);if((re|0)==128){r=Vd(N)|0;if(r>>>0>7){ae=Xi[e+4>>2]|0;Xi[F>>2]=r;nA(ae,16,121368,F);r=0-r>>31&7}h=e+3109|0;Wi[h>>0]=r;l=Xi[(Xi[ie>>2]|0)+4>>2]|0;if(l|0){f=Xi[I>>2]|0;a=Xi[C>>2]|0;n=Xi[N>>2]|0;t=n+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7);if(t>>>0>134217727){ae=t>>>23;f=(qi[98538+ae>>0]|0)+f|0;Xi[I>>2]=a>>>0>f>>>0?f:a;f=Wi[99562+ae>>0]|0}else{le=t>>>0>65535;F=le?t>>>16:t;le=le?16:0;ae=(F&65280|0)==0;le=(qi[145894+(ae?F:F>>>8)>>0]|0)+(ae?le:le|8)|0;f=31-le+f|0;f=a>>>0>f>>>0?f:a;ae=n+(f>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(f&7)>>>le;f=f+(32-le)|0;Xi[I>>2]=a>>>0>f>>>0?f:a;f=ae&1;f=(ae>>>1^0-f)+f|0}r=f+(r&255)|0;if(r>>>0>7)r=0-r>>31&7;Gi[e+3110>>1]=r}if(!(Xi[u>>2]|0))r=0;else{f=Xi[N>>2]|0;l=Xi[C>>2]|0;a=Xi[I>>2]|0;n=0;do{ae=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(l|0)&1)+a|0;Xi[I>>2]=a;ae=ae&255;Wi[J+n>>0]=ae;if(!(ae<<24>>24)){Gi[e+3112+(n<<1)>>1]=1<<qi[h>>0];Gi[e+3304+(n<<1)>>1]=0}n=n+1|0;r=Xi[u>>2]|0}while(n>>>0<r>>>0);l=Xi[(Xi[ie>>2]|0)+4>>2]|0}f=(r|0)==0;do{if(l){if(f)break;f=Xi[N>>2]|0;l=Xi[C>>2]|0;a=Xi[I>>2]|0;n=0;do{r=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(l|0)&1)+a|0;Xi[I>>2]=a;Wi[Z+n>>0]=r;n=n+1|0;r=Xi[u>>2]|0}while(n>>>0<r>>>0);if(r|0)re=149}else{if(f)break;jT(Z|0,0,(r>>>0>1?r:1)|0)|0;re=149}}while(0);if((re|0)==149){o=e+3110|0;s=0;do{if(Wi[J+s>>0]|0){r=Xi[I>>2]|0;l=Xi[C>>2]|0;a=Xi[N>>2]|0;f=a+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){ae=f>>>23;f=(qi[98538+ae>>0]|0)+r|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=Wi[99562+ae>>0]|0}else{ae=f>>>0>65535;le=ae?f>>>16:f;f=ae?16:0;ae=(le&65280|0)==0;f=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?f:f|8)|0;r=31-f+r|0;r=l>>>0>r>>>0?r:l;ae=a+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}Gi[e+3112+(s<<1)>>1]=(1<<qi[h>>0])+r;r=a+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;ae=(qi[98538+r>>0]|0)+f|0;Xi[I>>2]=l>>>0>ae>>>0?ae:l;r=Wi[99562+r>>0]|0}else{le=r>>>0>65535;ae=le?r>>>16:r;r=le?16:0;le=(ae&65280|0)==0;r=(qi[145894+(le?ae:ae>>>8)>>0]|0)+(le?r:r|8)|0;le=31-r+f|0;le=l>>>0>le>>>0?le:l;ae=a+(le>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(le&7)>>>r;r=le+(32-r)|0;Xi[I>>2]=l>>>0>r>>>0?r:l;r=ae&1;r=(ae>>>1^0-r)+r|0}Gi[e+3304+(s<<1)>>1]=r}if(!(Wi[Z+s>>0]|0)){ae=1<<Gi[o>>1]&65535;Gi[e+3144+(s<<2)>>1]=ae;Gi[e+3336+(s<<2)>>1]=0;Gi[e+3144+(s<<2)+2>>1]=ae;Gi[e+3336+(s<<2)+2>>1]=0}else{a=Xi[C>>2]|0;n=Xi[N>>2]|0;f=Xi[I>>2]|0;t=0;do{r=n+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){l=r>>>23;r=(qi[98538+l>>0]|0)+f|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;l=Wi[99562+l>>0]|0}else{l=r>>>0>65535;ae=l?r>>>16:r;r=l?16:0;l=(ae&65280|0)==0;r=(qi[145894+(l?ae:ae>>>8)>>0]|0)+(l?r:r|8)|0;l=31-r+f|0;l=a>>>0>l>>>0?l:a;ae=n+(l>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(l&7)>>>r;r=l+(32-r)|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;l=ae&1;l=(ae>>>1^0-l)+l|0}f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){ae=f>>>23;f=(qi[98538+ae>>0]|0)+r|0;f=a>>>0>f>>>0?f:a;Xi[I>>2]=f;r=Wi[99562+ae>>0]|0}else{ae=f>>>0>65535;le=ae?f>>>16:f;f=ae?16:0;ae=(le&65280|0)==0;f=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?f:f|8)|0;r=31-f+r|0;r=a>>>0>r>>>0?r:a;ae=n+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=a>>>0>f>>>0?f:a;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}ae=(1<<Gi[o>>1])+l|0;Gi[e+3144+(s<<2)+(t<<1)>>1]=ae;ae=r-(ae<<16>>9>>Gi[o>>1])+128|0;Gi[e+3336+(s<<2)+(t<<1)>>1]=(ae|0)<-128?-128:(ae|0)>127?127:ae&65535;t=t+1|0}while((t|0)!=2)}s=s+1|0}while(s>>>0<(Xi[u>>2]|0)>>>0)}do{if(!(Xi[y>>2]|0)){if(!(Xi[w>>2]|0))r=0;else{f=Xi[N>>2]|0;l=Xi[C>>2]|0;a=Xi[I>>2]|0;n=0;do{ae=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(l|0)&1)+a|0;Xi[I>>2]=a;ae=ae&255;Wi[A+n>>0]=ae;if(!(ae<<24>>24)){Gi[e+3272+(n<<1)>>1]=1<<qi[h>>0];Gi[e+3400+(n<<1)>>1]=0}n=n+1|0;r=Xi[w>>2]|0}while(n>>>0<r>>>0)}f=(r|0)==0;if(Xi[(Xi[ie>>2]|0)+4>>2]|0){if(f)break;f=Xi[N>>2]|0;l=Xi[C>>2]|0;a=Xi[I>>2]|0;n=0;do{r=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(l|0)&1)+a|0;Xi[I>>2]=a;Wi[O+n>>0]=r;n=n+1|0;r=Xi[w>>2]|0}while(n>>>0<r>>>0);if(!r)break}else{if(f)break;jT(O|0,0,(r>>>0>1?r:1)|0)|0}o=e+3110|0;s=0;do{if(Wi[A+s>>0]|0){r=Xi[I>>2]|0;l=Xi[C>>2]|0;a=Xi[N>>2]|0;f=a+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){ae=f>>>23;f=(qi[98538+ae>>0]|0)+r|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=Wi[99562+ae>>0]|0}else{ae=f>>>0>65535;le=ae?f>>>16:f;f=ae?16:0;ae=(le&65280|0)==0;f=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?f:f|8)|0;r=31-f+r|0;r=l>>>0>r>>>0?r:l;ae=a+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}Gi[e+3272+(s<<1)>>1]=(1<<qi[h>>0])+r;r=a+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;ae=(qi[98538+r>>0]|0)+f|0;Xi[I>>2]=l>>>0>ae>>>0?ae:l;r=Wi[99562+r>>0]|0}else{le=r>>>0>65535;ae=le?r>>>16:r;r=le?16:0;le=(ae&65280|0)==0;r=(qi[145894+(le?ae:ae>>>8)>>0]|0)+(le?r:r|8)|0;le=31-r+f|0;le=l>>>0>le>>>0?le:l;ae=a+(le>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(le&7)>>>r;r=le+(32-r)|0;Xi[I>>2]=l>>>0>r>>>0?r:l;r=ae&1;r=(ae>>>1^0-r)+r|0}Gi[e+3400+(s<<1)>>1]=r}if(!(Wi[O+s>>0]|0)){ae=1<<Gi[o>>1]&65535;Gi[e+3208+(s<<2)>>1]=ae;Gi[e+3432+(s<<2)>>1]=0;Gi[e+3208+(s<<2)+2>>1]=ae;Gi[e+3432+(s<<2)+2>>1]=0}else{a=Xi[C>>2]|0;n=Xi[N>>2]|0;r=Xi[I>>2]|0;t=0;do{f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){l=f>>>23;r=(qi[98538+l>>0]|0)+r|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;l=Wi[99562+l>>0]|0}else{l=f>>>0>65535;le=l?f>>>16:f;l=l?16:0;ae=(le&65280|0)==0;l=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?l:l|8)|0;r=31-l+r|0;r=a>>>0>r>>>0?r:a;ae=n+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>l;r=r+(32-l)|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;l=ae&1;l=(ae>>>1^0-l)+l|0}f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){f=f>>>23;r=(qi[98538+f>>0]|0)+r|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;f=Wi[99562+f>>0]|0}else{ae=f>>>0>65535;le=ae?f>>>16:f;f=ae?16:0;ae=(le&65280|0)==0;f=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?f:f|8)|0;r=31-f+r|0;r=a>>>0>r>>>0?r:a;ae=n+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;r=r+(32-f)|0;r=a>>>0>r>>>0?r:a;Xi[I>>2]=r;f=ae&1;f=(ae>>>1^0-f)+f|0}ae=(1<<Gi[o>>1])+l|0;Gi[e+3208+(s<<2)+(t<<1)>>1]=ae;ae=f-(ae<<16>>9>>Gi[o>>1])+128|0;Gi[e+3432+(s<<2)+(t<<1)>>1]=(ae|0)<-128?-128:(ae|0)>127?127:ae&65535;t=t+1|0}while((t|0)!=2)}s=s+1|0}while(s>>>0<(Xi[w>>2]|0)>>>0)}}while(0)}r=5-(Vd(N)|0)|0;Xi[e+3088>>2]=r;if((r+-1|0)>>>0<=4)break;ae=Xi[e+4>>2]|0;Xi[g>>2]=r;nA(ae,16,121406,g);r=-1094995529;break e}}while(0);r=Xi[I>>2]|0;l=Xi[C>>2]|0;a=Xi[N>>2]|0;f=a+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){ae=f>>>23;f=(qi[98538+ae>>0]|0)+r|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=Wi[99562+ae>>0]|0}else{ae=f>>>0>65535;le=ae?f>>>16:f;f=ae?16:0;ae=(le&65280|0)==0;f=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?f:f|8)|0;r=31-f+r|0;r=l>>>0>r>>>0?r:l;ae=a+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}Xi[e+3064>>2]=r;t=Xi[D>>2]|0;if(!(Wi[t+36>>0]|0)){Xi[e+3068>>2]=0;Xi[e+3072>>2]=0;r=f}else{r=a+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;f=(qi[98538+r>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=Wi[99562+r>>0]|0}else{ae=r>>>0>65535;le=ae?r>>>16:r;r=ae?16:0;ae=(le&65280|0)==0;r=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?r:r|8)|0;f=31-r+f|0;f=l>>>0>f>>>0?f:l;ae=a+(f>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(f&7)>>>r;f=f+(32-r)|0;f=l>>>0>f>>>0?f:l;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}Xi[e+3068>>2]=r;r=a+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){ae=r>>>23;r=(qi[98538+ae>>0]|0)+f|0;r=l>>>0>r>>>0?r:l;Xi[I>>2]=r;f=Wi[99562+ae>>0]|0}else{ae=r>>>0>65535;le=ae?r>>>16:r;r=ae?16:0;ae=(le&65280|0)==0;r=(qi[145894+(ae?le:le>>>8)>>0]|0)+(ae?r:r|8)|0;f=31-r+f|0;f=l>>>0>f>>>0?f:l;ae=a+(f>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(f&7)>>>r;r=f+(32-r)|0;r=l>>>0>r>>>0?r:l;Xi[I>>2]=r;f=ae&1;f=(ae>>>1^0-f)+f|0}Xi[e+3072>>2]=f}if(!(Wi[t+1631>>0]|0))r=0;else{ae=qi[a+(r>>>3)>>0]<<(r&7)>>>7&1;Xi[I>>2]=((r|0)<(l|0)&1)+r;r=ae&255}Wi[e+3076>>0]=r;r:do{if(!(Wi[t+55>>0]|0)){Wi[e+3057>>0]=0;Xi[e+3080>>2]=0;Xi[e+3084>>2]=0;f=0}else{do{if(Wi[t+56>>0]|0){ae=Xi[I>>2]|0;a=Xi[N>>2]|0;le=qi[a+(ae>>>3)>>0]|0;n=Xi[C>>2]|0;r=((ae|0)<(n|0)&1)+ae|0;Xi[I>>2]=r;if(!(le&128>>>(ae&7)))break;f=qi[a+(r>>>3)>>0]<<(r&7)>>>7&1;l=((r|0)<(n|0)&1)+r|0;Xi[I>>2]=l;f=f&255;Wi[e+3057>>0]=f;if(f<<24>>24)break r;r=a+(l>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(l&7);if(r>>>0>134217727){r=r>>>23;f=(qi[98538+r>>0]|0)+l|0;f=n>>>0>f>>>0?f:n;Xi[I>>2]=f;r=Wi[99562+r>>0]|0}else{f=r>>>0>65535;ae=f?r>>>16:r;f=f?16:0;r=(ae&65280|0)==0;f=(qi[145894+(r?ae:ae>>>8)>>0]|0)+(r?f:f|8)|0;r=31-f+l|0;r=n>>>0>r>>>0?r:n;ae=a+(r>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=n>>>0>f>>>0?f:n;Xi[I>>2]=f;r=ae&1;r=(ae>>>1^0-r)+r|0}Xi[e+3080>>2]=r<<1;r=a+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;ae=(qi[98538+r>>0]|0)+f|0;Xi[I>>2]=n>>>0>ae>>>0?ae:n;r=Wi[99562+r>>0]|0}else{le=r>>>0>65535;ae=le?r>>>16:r;r=le?16:0;le=(ae&65280|0)==0;r=(qi[145894+(le?ae:ae>>>8)>>0]|0)+(le?r:r|8)|0;le=31-r+f|0;le=n>>>0>le>>>0?le:n;ae=a+(le>>>3)|0;ae=(ZT(qi[ae>>0]|qi[ae+1>>0]<<8|qi[ae+2>>0]<<16|qi[ae+3>>0]<<24|0)|0)<<(le&7)>>>r;r=le+(32-r)|0;Xi[I>>2]=n>>>0>r>>>0?r:n;r=ae&1;r=(ae>>>1^0-r)+r|0}Xi[e+3084>>2]=r<<1;f=0;break r}}while(0);f=Wi[t+57>>0]|0;Wi[e+3057>>0]=f;Xi[e+3080>>2]=Xi[t+60>>2];Xi[e+3084>>2]=Xi[t+64>>2]}}while(0);r=Wi[t+54>>0]|0;do{if(r<<24>>24){if((Wi[e+3052>>0]|0)==0?!(f<<24>>24==0|(Wi[e+3053>>0]|0)!=0):0)break;ae=Xi[I>>2]|0;f=qi[(Xi[N>>2]|0)+(ae>>>3)>>0]<<(ae&7)>>>7&1;Xi[I>>2]=((ae|0)<(Xi[C>>2]|0)&1)+ae;Wi[e+3058>>0]=f;f=t;break i}}while(0);Wi[e+3058>>0]=r;f=t}}while(0);A=e+3104|0;Xi[A>>2]=0;if(!((Wi[f+42>>0]|0)==0?!(Wi[f+43>>0]|0):0))re=243;i:do{if((re|0)==243){r=Vd(N)|0;if(r>>>0>((Xi[L+216>>2]|0)-(Xi[I>>2]|0)|0)>>>0){ae=Xi[e+4>>2]|0;Xi[M>>2]=r;nA(ae,16,121489,M);r=-1094995529;break e}Xi[A>>2]=r;if((r|0)<=0){Xi[e+7984>>2]=0;break}n=Vd(N)|0;k=n+1|0;if(n>>>0>31){Xi[A>>2]=0;r=Xi[e+4>>2]|0;Xi[R>>2]=k;nA(r,16,121528,R);r=-1094995529;break e}f=e+3092|0;vA(f);a=e+3096|0;vA(a);l=e+3100|0;vA(l);r=Xi[A>>2]|0;if(r>>>0<536870911){ae=rA(r<<2)|0;r=Xi[A>>2]|0;Xi[f>>2]=ae;if(r>>>0<536870911){ae=rA(r<<2)|0;r=Xi[A>>2]|0;Xi[a>>2]=ae;if(r>>>0<536870911)r=rA(r<<2)|0;else r=0}else re=251}else{Xi[f>>2]=0;re=251}if((re|0)==251){Xi[a>>2]=0;r=0}Xi[l>>2]=r;w=Xi[f>>2]|0;if(w|0?!((r|0)==0|(Xi[a>>2]|0)==0):0){if((Xi[A>>2]|0)>0){o=(k|0)==0;s=(k|0)<26;u=31-n|0;h=n+-15|0;n=47-n|0;t=0;do{do{if(!o){r=Xi[I>>2]|0;f=Xi[C>>2]|0;l=Xi[N>>2]|0;a=l+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if(s){r=r+k|0;Xi[I>>2]=f>>>0>r>>>0?r:f;r=a>>>u;break}else{ae=r+16|0;ae=f>>>0>ae>>>0?ae:f;Xi[I>>2]=ae;r=l+(ae>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(ae&7)>>>n;ae=ae+h|0;Xi[I>>2]=f>>>0>ae>>>0?ae:f;r=r|a>>>16<<h;break}}else r=0}while(0);Xi[w+(t<<2)>>2]=r+1;t=t+1|0}while((t|0)<(Xi[A>>2]|0))}r=e+141|0;do{if((qi[r>>0]|0)>1){ae=Xi[D>>2]|0;if((Xi[ae+48>>2]|0)<=1?(Xi[ae+44>>2]|0)<=1:0)break;Xi[e+7984>>2]=0;Wi[r>>0]=1;break i}}while(0);Xi[e+7984>>2]=0;break}Xi[A>>2]=0;nA(Xi[e+4>>2]|0,16,121554,T);r=-12;break e}}while(0);r=Xi[D>>2]|0;if(!(Wi[r+1628>>0]|0))l=r;else{a=Vd(N)|0;le=KT(a|0,0,3)|0;T=Ie;r=Xi[I>>2]|0;ae=(Xi[L+216>>2]|0)-r|0;N=((ae|0)<0)<<31>>31;if((T|0)>(N|0)|(T|0)==(N|0)&le>>>0>ae>>>0){nA(Xi[e+4>>2]|0,16,121581,P);r=-1094995529;break e}if(a|0){l=Xi[C>>2]|0;f=0;do{r=r+8|0;r=l>>>0>r>>>0?r:l;f=f+1|0}while((f|0)!=(a|0));Xi[I>>2]=r}l=Xi[D>>2]|0}r=(Xi[l+16>>2]|0)+26+(Xi[e+3064>>2]|0)|0;n=r&255;Wi[e+3108>>0]=n;r=r<<24;if((r|0)<=855638016){f=r>>24;t=Xi[ie>>2]|0;r=Xi[t+13448>>2]|0;if((f|0)>=(0-r|0)){ae=Xi[e+2412>>2]|0;s=e+3496|0;Xi[s>>2]=ae;if((ae|0)==0?Wi[z>>0]|0:0){nA(Xi[e+4>>2]|0,16,121679,H);r=-1094995529;break e}r=(Xi[L+216>>2]|0)-(Xi[I>>2]|0)|0;if((r|0)<0){ae=Xi[e+4>>2]|0;Xi[U>>2]=0-r;nA(ae,16,121706,U);r=-1094995529;break e}a=Xi[Q>>2]|0;Wi[a+203>>0]=(Wi[z>>0]|0)==0&1;if(!(Wi[l+22>>0]|0))Wi[a+272>>0]=n;Wi[b>>0]=1;Wi[a+302>>0]=0;Wi[a+303>>0]=0;l=Xi[W>>2]|0;do{if((l+-16|0)>>>0<5)r=1;else{if((l|0)!=21){r=0;break}r=(Xi[e+6096>>2]|0)!=0}}while(0);o=e+6116|0;Xi[o>>2]=r&1;f=e+6100|0;r=Xi[f>>2]|0;i:do{if((r|0)==2147483647)switch(l|0){case 18:case 16:case 17:case 21:{r=Xi[e+6080>>2]|0;Xi[f>>2]=r;break i}case 20:case 19:{Xi[f>>2]=-2147483648;r=-2147483648;break i}default:{r=2147483647;break i}}}while(0);do{if((l&-2|0)==8){if((Xi[e+6080>>2]|0)<=(r|0)){Xi[e+6112>>2]=0;r=0;break e}if((l|0)!=9)break;Xi[f>>2]=-2147483648}}while(0);i:do{if(!(Wi[G>>0]|0))if(!(Xi[e+3516>>2]|0)){f=e+4|0;nA(Xi[f>>2]|0,16,121903,x);r=0;re=403;break e}else{r=e+8008|0;break}else{ae=Xi[t+13320>>2]|0;r=Xi[t+13376>>2]>>ae;t=(Xi[t+13380>>2]>>ae)+1|0;ae=e+6104|0;le=e+6108|0;jT(Xi[e+7936>>2]|0,0,Zi(Xi[le>>2]|0,Xi[ae>>2]|0)|0)|0;jT(Xi[e+7940>>2]|0,0,Zi(Xi[le>>2]|0,Xi[ae>>2]|0)|0)|0;ae=Xi[ie>>2]|0;jT(Xi[e+7960>>2]|0,0,Zi(Xi[ae+13408>>2]|0,Xi[ae+13404>>2]|0)|0)|0;ae=Xi[ie>>2]|0;jT(Xi[e+7964>>2]|0,0,Zi((Xi[ae+13416>>2]|0)+1|0,(Xi[ae+13412>>2]|0)+1|0)|0)|0;jT(Xi[e+7944>>2]|0,-1,Zi((r<<2)+4|0,t)|0)|0;Xi[e+6112>>2]=0;t=e+8008|0;Xi[t>>2]=Xi[W>>2];r=Xi[e+1416>>2]|0;if(Wi[r+42>>0]|0)Xi[a+312>>2]=Xi[Xi[r+1648>>2]>>2]<<Xi[(Xi[ie>>2]|0)+13336>>2];n=e+160|0;r=DE(e,n,Xi[e+6080>>2]|0)|0;r:do{if((r|0)>=0){r=HE(e)|0;if((r|0)<0){nA(Xi[e+4>>2]|0,16,121740,V);break}a=Xi[Xi[e+3516>>2]>>2]|0;Xi[a+84>>2]=(Xi[W>>2]&-8|0)==16&1;do{if(Xi[e+8084>>2]|0){r=e+8088|0;if(((Xi[r>>2]|0)+-3|0)>>>0>=3)break;f=e+8092|0;if(((Xi[f>>2]|0)+-1|0)>>>0>=2)break;l=JM(a)|0;if(!l){r=-12;break r}f:do{switch(Xi[r>>2]|0){case 3:if(!(Xi[e+8096>>2]|0)){Xi[l>>2]=1;break f}else{Xi[l>>2]=5;break f}case 4:{Xi[l>>2]=2;break}case 5:{Xi[l>>2]=3;break}default:{}}}while(0);if((Xi[f>>2]|0)!=2)break;Xi[l+4>>2]=1}}while(0);f:do{if(Xi[e+8100>>2]|0){r=Xi[e+8104>>2]|0;do{if(!r){if(Xi[e+8108>>2]|0)break;if(!(Xi[e+8112>>2]|0))break f}}while(0);f=Mg(a,6,36)|0;if(!f){r=-12;break r}ae=f+4|0;Ag(Xi[ae>>2]|0,+(r*360|0)*.0000152587890625);gg(Xi[ae>>2]|0,Xi[e+8108>>2]|0,Xi[e+8112>>2]|0)}}while(0);f=e+8128|0;r=Xi[f>>2]|0;do{if((r|0)>0){if((Xi[W>>2]&-8|0)!=16){re=330;break}if(!(Xi[o>>2]|0)){re=330;break}r=r+-1|0;Xi[f>>2]=r;re=329}else re=329}while(0);if((re|0)==329?r|0:0)re=330;if((re|0)==330){r=dM(a)|0;if(!r){r=-12;break}else f=0;do{ae=Xi[88684+(f<<2)>>2]|0;Xi[r+(f<<4)>>2]=Ji[e+8132+(ae<<2)>>1];Xi[r+(f<<4)+4>>2]=5e4;Xi[r+(f<<4)+8>>2]=Ji[e+8132+(ae<<2)+2>>1];Xi[r+(f<<4)+12>>2]=5e4;f=f+1|0}while((f|0)!=3);P=r+48|0;Xi[P>>2]=Ji[e+8144>>1];L=r+52|0;Xi[L>>2]=5e4;I=r+56|0;Xi[I>>2]=Ji[e+8146>>1];H=r+60|0;Xi[H>>2]=5e4;U=r+72|0;Xi[U>>2]=Xi[e+8148>>2];x=r+76|0;Xi[x>>2]=1e4;V=r+64|0;Xi[V>>2]=Xi[e+8152>>2];le=r+68|0;Xi[le>>2]=1e4;Xi[r+84>>2]=1;Xi[r+80>>2]=1;ae=e+4|0;nA(Xi[ae>>2]|0,48,121775,Y);Y=Xi[ae>>2]|0;B=r+4|0;D=r+8|0;C=r+12|0;we=+(qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24|0)/+(qi[C>>0]|qi[C+1>>0]<<8|qi[C+2>>0]<<16|qi[C+3>>0]<<24|0);C=r+16|0;D=r+20|0;he=+(qi[C>>0]|qi[C+1>>0]<<8|qi[C+2>>0]<<16|qi[C+3>>0]<<24|0)/+(qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24|0);D=r+24|0;C=r+28|0;ue=+(qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24|0)/+(qi[C>>0]|qi[C+1>>0]<<8|qi[C+2>>0]<<16|qi[C+3>>0]<<24|0);C=r+32|0;D=r+36|0;se=+(qi[C>>0]|qi[C+1>>0]<<8|qi[C+2>>0]<<16|qi[C+3>>0]<<24|0)/+(qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24|0);D=r+40|0;C=r+44|0;oe=+(qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24|0)/+(qi[C>>0]|qi[C+1>>0]<<8|qi[C+2>>0]<<16|qi[C+3>>0]<<24|0);te=+(qi[P>>0]|qi[P+1>>0]<<8|qi[P+2>>0]<<16|qi[P+3>>0]<<24|0)/+(qi[L>>0]|qi[L+1>>0]<<8|qi[L+2>>0]<<16|qi[L+3>>0]<<24|0);ne=+(qi[I>>0]|qi[I+1>>0]<<8|qi[I+2>>0]<<16|qi[I+3>>0]<<24|0)/+(qi[H>>0]|qi[H+1>>0]<<8|qi[H+2>>0]<<16|qi[H+3>>0]<<24|0);Ae[j>>3]=+(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)/+(qi[B>>0]|qi[B+1>>0]<<8|qi[B+2>>0]<<16|qi[B+3>>0]<<24|0);Ae[j+8>>3]=we;Ae[j+16>>3]=he;Ae[j+24>>3]=ue;Ae[j+32>>3]=se;Ae[j+40>>3]=oe;Ae[j+48>>3]=te;Ae[j+56>>3]=ne;nA(Y,48,121804,j);ae=Xi[ae>>2]|0;ne=+(qi[U>>0]|qi[U+1>>0]<<8|qi[U+2>>0]<<16|qi[U+3>>0]<<24|0)/+(qi[x>>0]|qi[x+1>>0]<<8|qi[x+2>>0]<<16|qi[x+3>>0]<<24|0);Ae[K>>3]=+(qi[V>>0]|qi[V+1>>0]<<8|qi[V+2>>0]<<16|qi[V+3>>0]<<24|0)/+(qi[le>>0]|qi[le+1>>0]<<8|qi[le+2>>0]<<16|qi[le+3>>0]<<24|0);Ae[K+8>>3]=ne;nA(ae,48,121867,K)}f=e+8120|0;if(Xi[f>>2]|0){l=e+8124|0;r=Mg(a,1,Xi[l>>2]|0)|0;if(r|0)qT(Xi[r+4>>2]|0,Xi[f>>2]|0,Xi[l>>2]|0)|0;vA(f);Xi[l>>2]=0;ae=(Xi[e+4>>2]|0)+964|0;Xi[ae>>2]=Xi[ae>>2]|2}Xi[(Xi[n>>2]|0)+88>>2]=3-(Xi[e+2420>>2]|0);if((Xi[W>>2]&-8|0)!=16)LE(e);r=e+164|0;Yg(Xi[r>>2]|0);r=PE(e,Xi[r>>2]|0,0)|0;if((r|0)<0)break;r=Xi[e+4>>2]|0;if(Xi[r+704>>2]|0){r=t;break i}zO(r);r=t;break i}}while(0);f=e+3516|0;l=Xi[f>>2]|0;if(l|0)ME(e,l,-1);Xi[f>>2]=0;break e}}while(0);f=Xi[W>>2]|0;r=Xi[r>>2]|0;if((f|0)!=(r|0)){ae=Xi[e+4>>2]|0;Xi[X>>2]=r;Xi[X+4>>2]=f;nA(ae,16,121936,X);r=-1094995529;break e}do{if(!(Wi[z>>0]|0)){if((Xi[e+2420>>2]|0)==2)break;r=IE(e)|0;if((r|0)>=0)break;f=e+4|0;nA(Xi[f>>2]|0,24,121984,q);re=403;break e}}while(0);f=e+4|0;do{if(Wi[G>>0]|0){r=Xi[f>>2]|0;l=Xi[r+704>>2]|0;if(!l)break;r=Wz[Xi[l+28>>2]&7](r,0,0)|0;if((r|0)<0){re=403;break e}}}while(0);l=Xi[f>>2]|0;r=Xi[l+704>>2]|0;if(r|0){r=Wz[Xi[r+32>>2]&7](l,Xi[i+20>>2]|0,Xi[i+16>>2]|0)|0;if((r|0)<0){re=403;break e}else{r=0;break e}}y=e+141|0;i:do{if((qi[y>>0]|0)>1){a=Xi[A>>2]|0;if((a|0)<=0){re=397;break}m=Xi[i+12>>2]|0;p=Xi[i+8>>2]|0;o=Xi[Q>>2]|0;r=a+1|0;if(r>>>0<536870911){O=rA(r<<2)|0;r=Xi[A>>2]|0}else{O=0;r=a}r=r+1|0;do{if(r>>>0<536870911){F=rA(r<<2)|0;if(!((O|0)!=0&(F|0)!=0)){r=F;break}r=Xi[s>>2]|0;l=Xi[A>>2]|0;n=Xi[ie>>2]|0;a=Xi[n+13384>>2]|0;ae=(Zi(a,l)|0)+r|0;n=Xi[n+13388>>2]|0;ae=(ae|0)<(Zi(n,a)|0);t=Xi[f>>2]|0;r:do{if(ae){KO(t,l+1|0)|0;do{if(!(Xi[e+12>>2]|0)){if((qi[y>>0]|0)<=1)break;r=1;do{le=rA(8156)|0;ae=e+8+(r<<2)|0;Xi[ae>>2]=le;qT(le|0,e|0,8156)|0;le=iA(31328)|0;Xi[e+72+(r<<2)>>2]=le;Xi[(Xi[ae>>2]|0)+136>>2]=le;r=r+1|0}while((r|0)<(qi[y>>0]|0))}}while(0);a=Xi[o+212>>2]>>3;r=((a|0)<0)<<31>>31;_=e+3092|0;S=i+52|0;h=Xi[S>>2]|0;if((h|0)>0){s=WT(Xi[Xi[_>>2]>>2]|0,0,a|0,r|0)|0;n=Xi[i+60>>2]|0;o=Ie;l=0;t=0;u=0;do{ae=Xi[n+(u<<2)>>2]|0;le=((ae|0)<0)<<31>>31;ae=(ae|0)>=(a|0)&((le|0)<(o|0)|(le|0)==(o|0)&ae>>>0<s>>>0);le=ae<<31>>31;s=WT(le|0,((le|0)<0)<<31>>31|0,s|0,o|0)|0;o=Ie;l=WT(ae&1|0,0,l|0,t|0)|0;t=Ie;u=u+1|0}while((u|0)!=(h|0));o=l}else{o=0;t=0}l=Xi[A>>2]|0;f:do{if((l|0)>1){d=Xi[_>>2]|0;v=Xi[e+3100>>2]|0;E=Xi[e+3096>>2]|0;c=i+60|0;k=h;n=1;while(1){b=n+-1|0;w=YT(Xi[d+(b<<2)>>2]|0,0,o|0,t|0)|0;a=WT(w|0,Ie|0,a|0,r|0)|0;r=Ie;w=Xi[d+(n<<2)>>2]|0;if((k|0)>0){u=WT(a|0,r|0,w|0,0)|0;l=Xi[c>>2]|0;s=Ie;o=0;t=0;h=0;do{ae=Xi[l+(h<<2)>>2]|0;le=((ae|0)<0)<<31>>31;ae=((le|0)>(r|0)|(le|0)==(r|0)&ae>>>0>=a>>>0)&((le|0)<(s|0)|(le|0)==(s|0)&ae>>>0<u>>>0);le=ae<<31>>31;u=WT(le|0,((le|0)<0)<<31>>31|0,u|0,s|0)|0;s=Ie;o=WT(ae&1|0,0,o|0,t|0)|0;t=Ie;h=h+1|0}while((h|0)!=(k|0))}else{o=0;t=0}l=YT(w|0,0,o|0,t|0)|0;Xi[v+(b<<2)>>2]=l;Xi[E+(b<<2)>>2]=a;n=n+1|0;l=Xi[A>>2]|0;if((n|0)>=(l|0))break f;k=Xi[S>>2]|0}}}while(0);do{if(l|0){n=l+-1|0;l=YT(Xi[(Xi[_>>2]|0)+(n<<2)>>2]|0,0,o|0,t|0)|0;r=WT(l|0,Ie|0,a|0,r|0)|0;l=Ie;a=((p|0)<0)<<31>>31;if((a|0)<(l|0)|(a|0)==(l|0)&p>>>0<r>>>0){nA(Xi[f>>2]|0,16,122090,ee);r=-1094995529;break r}else{ae=YT(p|0,a|0,r|0,l|0)|0;Xi[(Xi[e+3100>>2]|0)+(n<<2)>>2]=ae;Xi[(Xi[e+3096>>2]|0)+((Xi[A>>2]|0)+-1<<2)>>2]=r;break}}}while(0);Xi[e+7992>>2]=m;if((qi[y>>0]|0)>1){r=e+8|0;l=1;do{ae=e+8+(l<<2)|0;le=Xi[ae>>2]|0;ee=Xi[le+136>>2]|0;Wi[ee+203>>0]=1;Wi[ee+272>>0]=Wi[(Xi[(Xi[r>>2]|0)+136>>2]|0)+272>>0]|0;qT(le|0,e|0,8156)|0;Xi[(Xi[ae>>2]|0)+136>>2]=Xi[e+72+(l<<2)>>2];l=l+1|0}while((l|0)<(qi[y>>0]|0))}Xi[e+7988>>2]=0;WO(Xi[f>>2]|0);r=Xi[A>>2]|0;if((r|0)>=0){jT(O|0,0,((r|0)>0?(r<<2)+4|0:4)|0)|0;l=0;while(1){Xi[F+(l<<2)>>2]=l;if((l|0)==(r|0))break;else l=l+1|0}}if(!(Wi[(Xi[e+1416>>2]|0)+43>>0]|0))l=r;else{l=Xi[f>>2]|0;Kz[Xi[l+820>>2]&63](l,3,F,O,r+1|0)|0;l=Xi[A>>2]|0}if((l|0)<0){r=0;break}else{a=0;r=0}while(1){r=(Xi[O+(a<<2)>>2]|0)+r|0;if((a|0)==(l|0))break;else a=a+1|0}}else{Xi[$>>2]=r;Xi[$+4>>2]=l;Xi[$+8>>2]=a;Xi[$+12>>2]=n;nA(t,16,122047,$);r=-1094995529}}while(0);FA(O);FA(F);break i}else r=0}while(0);FA(O);FA(r);r=-12}else re=397}while(0);if((re|0)==397){Xi[J>>2]=0;Xi[J+4>>2]=1;Vz[Xi[l+816>>2]&1](l,5,J,Z,1,4)|0;r=Xi[Z>>2]|0}ae=Xi[ie>>2]|0;if((r|0)>=(Zi(Xi[ae+13388>>2]|0,Xi[ae+13384>>2]|0)|0))Xi[e+6112>>2]=1;if((r|0)<0){re=403;break e}else{r=0;break e}}}else{f=r>>24;r=Xi[(Xi[ie>>2]|0)+13448>>2]|0}ae=Xi[e+4>>2]|0;Xi[B>>2]=f;Xi[B+4>>2]=0-r;nA(ae,16,121625,B);r=-1094995529;break e}ae=Xi[e+4>>2]|0;Xi[a>>2]=r;nA(ae,16,127152,a);r=-1094995529;break}case 37:case 36:{r=e+7980|0;Gi[r>>1]=(Ji[r>>1]|0)+1&255;Xi[e+6100>>2]=2147483647;r=0;break}case 38:case 35:{r=0;break}default:{ae=Xi[e+4>>2]|0;Xi[r>>2]=f;nA(ae,32,122324,r);r=0}}}while(0);if((re|0)==403)r=(Xi[(Xi[f>>2]|0)+688>>2]&8|0)==0?0:r;Ue=fe;return r|0}function Vd(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=Xi[e>>2]|0;t=e+8|0;r=Xi[t>>2]|0;l=Xi[e+16>>2]|0;i=n+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=n+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[t>>2]=r;f=i+1|0;do{if(f){a=n+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){n=r+f|0;Xi[t>>2]=l>>>0>n>>>0?n:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[t>>2]=f;e=i+-15|0;n=n+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[t>>2]=l>>>0>f>>>0?f:l;e=n|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function Yd(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;n=Xi[e+60>>2]|0;b=Xi[n+1412>>2]|0;t=Xi[b+13336>>2]|0;c=1<<t;d=Xi[i+(r<<2)>>2]|0;i=(Zi(c+-1+(Xi[b+13376>>2]|0)>>t,d)|0)+(Xi[n+3496>>2]|0)|0;t=Xi[(Xi[(Xi[n+1416>>2]|0)+1668>>2]|0)+(i<<2)>>2]|0;b=(d|0)%(qi[n+141>>0]|0|0)|0;k=Xi[n+8+(f<<2)>>2]|0;e=Xi[k+136>>2]|0;if(d){r=Xi[k+7992>>2]|0;l=d+-1|0;f=(Xi[k+3096>>2]|0)+(l<<2)|0;h=r+(Xi[f>>2]|0)|0;l=(Xi[k+3100>>2]|0)+(l<<2)|0;w=Xi[l>>2]|0;w=w>>>0>268435455?-8:w<<3;a=(h|0)!=0&w>>>0<2147483640;w=a?w:0;h=a?h:0;Xi[e+204>>2]=h;Xi[e+216>>2]=w;Xi[e+220>>2]=w+8;Xi[e+208>>2]=h+(w>>3);Xi[e+212>>2]=0;if(a){AN(e+224|0,r+(Xi[f>>2]|0)|0,Xi[l>>2]|0)|0;m=4}else e=a?0:-1094995529}else m=4;do{if((m|0)==4){u=k+1412|0;w=k+4|0;h=n+7988|0;o=k+1416|0;s=k+3104|0;e=Xi[u>>2]|0;r=t;while(1){if((r|0)>=(Xi[e+13392>>2]|0))break;t=Xi[e+13384>>2]|0;n=Xi[e+13336>>2]|0;a=((i|0)%(t|0)|0)<<n;n=((i|0)/(t|0)|0)<<n;jd(k,a,n,r);GO(Xi[w>>2]|0,d,b,2);if(Xi[h>>2]|0){m=7;break}av(k,r);e=Xi[(Xi[u>>2]|0)+13336>>2]|0;Kd(k,a>>e,n>>e);e=Wd(k,a,n,Xi[(Xi[u>>2]|0)+13336>>2]|0,0)|0;if((e|0)<0){m=9;break}r=r+1|0;lv(k,r);XO(Xi[w>>2]|0,d,b,1);fE(k,a,n,c);l=(e|0)!=0;if(!l){e=a+c|0;f=Xi[u>>2]|0;i=Xi[f+13376>>2]|0;if((e|0)<(i|0)?(d|0)!=(Xi[s>>2]|0):0){m=14;break}}else{f=Xi[u>>2]|0;e=a+c|0;i=Xi[f+13376>>2]|0}e=(e|0)<(i|0);if(!e){v=r;E=f;S=a;_=n;m=16;break}if(l&e){e=f;i=Xi[(Xi[(Xi[o>>2]|0)+1672>>2]|0)+(r<<2)>>2]|0}else break}if((m|0)==7){XO(Xi[w>>2]|0,d,b,2);e=0;break}else if((m|0)==9){Xi[(Xi[k+7944>>2]|0)+(i<<2)>>2]=-1;Xi[h>>2]=1;XO(Xi[w>>2]|0,d,b,2);break}else if((m|0)==14){Xi[h>>2]=1;XO(Xi[w>>2]|0,d,b,2);e=0;break}else if((m|0)==16?(_+c|0)>=(Xi[E+13380>>2]|0):0){Jv(k,S,_,c);XO(Xi[w>>2]|0,d,b,2);e=v;break}XO(Xi[w>>2]|0,d,b,2);e=0}}while(0);return e|0}function jd(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;w=Xi[e+136>>2]|0;o=Xi[e+1412>>2]|0;l=o+13336|0;a=1<<Xi[l>>2];h=Xi[e+1416>>2]|0;s=Xi[(Xi[h+1672>>2]|0)+(f<<2)>>2]|0;k=Xi[e+2416>>2]|0;u=s-k|0;n=Xi[e+7944>>2]|0;t=n+(s<<2)|0;Xi[t>>2]=k;do{if(!(Wi[h+43>>0]|0)){e=Wi[h+42>>0]|0;if(!(e<<24>>24)){Xi[w+312>>2]=Xi[o+13376>>2];e=0;break}if((f|0)!=0?(k=Xi[h+1676>>2]|0,(Xi[k+(f<<2)>>2]|0)!=(Xi[k+(f+-1<<2)>>2]|0)):0){k=Xi[l>>2]|0;Xi[w+312>>2]=(Xi[(Xi[h+1648>>2]|0)+(Xi[(Xi[h+1664>>2]|0)+(i>>k<<2)>>2]<<2)>>2]<<k)+i;Wi[w+203>>0]=1}}else{if((i|0)==0?(a+-1&r|0)==0:0)Wi[w+203>>0]=1;Xi[w+312>>2]=Xi[o+13376>>2];e=Wi[h+42>>0]|0}}while(0);a=a+r|0;k=Xi[o+13380>>2]|0;Xi[w+316>>2]=(a|0)>(k|0)?k:a;a=w+31308|0;Xi[a>>2]=0;if(!(e<<24>>24)){if((u|0)<1){Xi[a>>2]=1;e=1}else e=0;if((u|0)<(Xi[o+13384>>2]|0)){e=e|4;Xi[a>>2]=e}}else{if((i|0)>0){k=Xi[h+1676>>2]|0;l=s+-1|0;if((Xi[k+(f<<2)>>2]|0)==(Xi[k+(Xi[(Xi[h+1668>>2]|0)+(l<<2)>>2]<<2)>>2]|0))e=0;else{Xi[a>>2]=2;e=2}if((Xi[t>>2]|0)!=(Xi[n+(l<<2)>>2]|0)){e=e|1;Xi[a>>2]=e}}else e=0;if((r|0)>0){k=Xi[h+1676>>2]|0;l=s-(Xi[o+13384>>2]|0)|0;if((Xi[k+(f<<2)>>2]|0)!=(Xi[k+(Xi[(Xi[h+1668>>2]|0)+(l<<2)>>2]<<2)>>2]|0)){e=e|8;Xi[a>>2]=e}if((Xi[t>>2]|0)!=(Xi[n+(l<<2)>>2]|0)){e=e|4;Xi[a>>2]=e}}}a=(i|0)>0;if(a&(u|0)>0)l=(e>>>1&1^1)&255;else l=0;Wi[w+308>>0]=l;if((r|0)>0){l=Xi[o+13384>>2]|0;if((u|0)<(l|0))e=0;else e=(e>>>3&1^1)&255;Wi[w+309>>0]=e;if((u+1|0)<(l|0))e=0;else{e=Xi[h+1676>>2]|0;e=(Xi[e+(f<<2)>>2]|0)==(Xi[e+(Xi[(Xi[h+1668>>2]|0)+(s+1-l<<2)>>2]<<2)>>2]|0)&1}Wi[w+310>>0]=e;if(a&(u|0)>(l|0)){e=Xi[h+1676>>2]|0;e=(Xi[e+(f<<2)>>2]|0)==(Xi[e+(Xi[(Xi[h+1668>>2]|0)+(s+-1-l<<2)>>2]<<2)>>2]|0)&1}else e=0}else{Wi[w+309>>0]=0;Wi[w+310>>0]=0;e=0}Wi[w+311>>0]=e;return}function Kd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;f=Xi[e+136>>2]|0;m=e+1412|0;p=(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,r)|0)+i|0;F=e+3500|0;y=Xi[F>>2]|0;if((Wi[e+3052>>0]|0)==0?(Wi[e+3053>>0]|0)==0:0){l=0;f=0}else{if((i|0)>0?(Wi[f+308>>0]|0)!=0:0)l=hv(e)|0;else l=0;if(!((r|0)<1|(l|0)!=0))if(!(Wi[f+309>>0]|0)){l=0;f=0}else{l=0;f=hv(e)|0}else f=0}c=e+1416|0;d=y+(p*148|0)+143|0;v=y+(p*148|0)+144|0;E=y+(p*148|0)+104|0;S=y+(p*148|0)+108|0;_=(f|0)==0;b=(l|f|0)==0;s=(l|0)==0;u=r+-1|0;h=i+-1|0;o=y+(p*148|0)+144|0;f=Xi[m>>2]|0;k=0;do{w=Xi[c>>2]|0;w=qi[((k|0)==0?w+1644|0:w+1645|0)>>0]|0;e:do{if(Wi[e+3052+k>>0]|0){l=(k|0)==2;do{if(!l){if(b){f=(kv(e)|0)&255;t=y+(p*148|0)+142+k|0;Wi[t>>0]=f;break}if(!s){f=h+(Zi(Xi[f+13384>>2]|0,r)|0)|0;f=Wi[(Xi[F>>2]|0)+(f*148|0)+142+k>>0]|0;t=y+(p*148|0)+142+k|0;Wi[t>>0]=f;break}if(_){Wi[y+(p*148|0)+142+k>>0]=0;break e}else{f=(Zi(Xi[f+13384>>2]|0,u)|0)+i|0;f=Wi[(Xi[F>>2]|0)+(f*148|0)+142+k>>0]|0;t=y+(p*148|0)+142+k|0;Wi[t>>0]=f;break}}else{f=Wi[d>>0]|0;Wi[v>>0]=f;Xi[S>>2]=Xi[E>>2];t=o}}while(0);if(f<<24>>24){f=0;do{do{if(!b){if(!s){n=h+(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,r)|0)|0;Xi[y+(p*148|0)+(k<<4)+(f<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+(k<<4)+(f<<2)>>2];break}if(_){Xi[y+(p*148|0)+(k<<4)+(f<<2)>>2]=0;break}else{n=(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,u)|0)+i|0;Xi[y+(p*148|0)+(k<<4)+(f<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+(k<<4)+(f<<2)>>2];break}}else Xi[y+(p*148|0)+(k<<4)+(f<<2)>>2]=dv(e)|0}while(0);f=f+1|0}while((f|0)!=4);do{if((Wi[t>>0]|0)==1){f=0;do{do{if(Xi[y+(p*148|0)+(k<<4)+(f<<2)>>2]|0){if(b){Xi[y+(p*148|0)+48+(k<<4)+(f<<2)>>2]=vv(e)|0;break}if(!s){n=h+(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,r)|0)|0;Xi[y+(p*148|0)+48+(k<<4)+(f<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+48+(k<<4)+(f<<2)>>2];break}if(_){Xi[y+(p*148|0)+48+(k<<4)+(f<<2)>>2]=0;break}else{n=(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,u)|0)+i|0;Xi[y+(p*148|0)+48+(k<<4)+(f<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+48+(k<<4)+(f<<2)>>2];break}}else Xi[y+(p*148|0)+48+(k<<4)+(f<<2)>>2]=0}while(0);f=f+1|0}while((f|0)!=4);if(b){Wi[y+(p*148|0)+96+k>>0]=cv(e)|0;break}if(!s){n=h+(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,r)|0)|0;Wi[y+(p*148|0)+96+k>>0]=Wi[(Xi[F>>2]|0)+(n*148|0)+96+k>>0]|0;break}if(_){Wi[y+(p*148|0)+96+k>>0]=0;break}else{n=(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,u)|0)+i|0;Wi[y+(p*148|0)+96+k>>0]=Wi[(Xi[F>>2]|0)+(n*148|0)+96+k>>0]|0;break}}else if(!l){if(b){Xi[y+(p*148|0)+100+(k<<2)>>2]=Ev(e)|0;break}if(!s){n=h+(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,r)|0)|0;Xi[y+(p*148|0)+100+(k<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+100+(k<<2)>>2];break}if(_){Xi[y+(p*148|0)+100+(k<<2)>>2]=0;break}else{n=(Zi(Xi[(Xi[m>>2]|0)+13384>>2]|0,u)|0)+i|0;Xi[y+(p*148|0)+100+(k<<2)>>2]=Xi[(Xi[F>>2]|0)+(n*148|0)+100+(k<<2)>>2];break}}}while(0);Gi[y+(p*148|0)+112+(k*10|0)>>1]=0;n=0;do{f=Xi[y+(p*148|0)+(k<<4)+(n<<2)>>2]|0;l=n;n=n+1|0;a=y+(p*148|0)+112+(k*10|0)+(n<<1)|0;Gi[a>>1]=f;if((Wi[t>>0]|0)==2){if((l|0)>1){f=0-f|0;Gi[a>>1]=f}}else if(Xi[y+(p*148|0)+48+(k<<4)+(l<<2)>>2]|0){f=0-f|0;Gi[a>>1]=f}Gi[a>>1]=f<<16>>16<<w}while((n|0)!=4)}}else Wi[y+(p*148|0)+142+k>>0]=0}while(0);k=k+1|0;f=Xi[m>>2]|0}while((k|0)<((Xi[f+4>>2]|0?3:1)|0));return}function Wd(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0;G=Ue;Ue=Ue+32|0;L=G;T=G+20|0;R=e+136|0;w=Xi[R>>2]|0;K=1<<f;Xi[w+31232>>2]=l;W=K+i|0;j=e+1412|0;a=Xi[j>>2]|0;if(((W|0)<=(Xi[a+13376>>2]|0)?(K+r|0)<=(Xi[a+13380>>2]|0):0)?(Xi[a+13320>>2]|0)>>>0<f>>>0:0)a=gv(e,l,i,r)|0;else a=(Xi[a+13320>>2]|0)>>>0<f>>>0&1;U=e+1416|0;n=Xi[U>>2]|0;if(Wi[n+22>>0]|0?((Xi[(Xi[j>>2]|0)+13336>>2]|0)-(Xi[n+24>>2]|0)|0)>>>0<=f>>>0:0){Wi[w+300>>0]=0;Xi[w+280>>2]=0}if(Wi[e+3076>>0]|0?((Xi[(Xi[j>>2]|0)+13336>>2]|0)-(qi[n+1632>>0]|0)|0)>>>0<=f>>>0:0)Wi[w+301>>0]=0;e:do{if(a){o=(1<<(Xi[(Xi[j>>2]|0)+13336>>2]|0)-(Xi[n+24>>2]|0))+-1|0;s=K>>1;u=s+i|0;h=s+r|0;t=f+-1|0;l=l+1|0;a=Wd(e,i,r,t,l)|0;if((a|0)>=0){do{if(a){n=Xi[j>>2]|0;if((u|0)<(Xi[n+13376>>2]|0)){a=Wd(e,u,r,t,l)|0;if((a|0)<0)break e;if(!a){a=0;break}n=Xi[j>>2]|0}if((h|0)<(Xi[n+13380>>2]|0)){a=Wd(e,i,h,t,l)|0;if((a|0)<0)break e;if(!a){a=0;break}n=Xi[j>>2]|0}if((u|0)<(Xi[n+13376>>2]|0)?(h|0)<(Xi[n+13380>>2]|0):0){a=Wd(e,u,h,t,l)|0;if((a|0)<0)break e}}else a=0}while(0);if((o&W|0)==0?(o&K+r|0)==0:0)Xi[w+276>>2]=Wi[w+272>>0];if(!a)a=0;else{a=Xi[j>>2]|0;if((u+s|0)<(Xi[a+13376>>2]|0))a=1;else a=(h+s|0)<(Xi[a+13380>>2]|0);a=a&1}}}else{z=Xi[R>>2]|0;B=Xi[j>>2]|0;H=Xi[B+13320>>2]|0;x=Xi[B+13396>>2]|0;a=i>>H;l=r>>H;B=1<<(Xi[B+13336>>2]|0)-(Xi[n+24>>2]|0);Xi[z+31236>>2]=i;Xi[z+31240>>2]=r;C=z+31244|0;Xi[C>>2]=1;D=z+31248|0;Xi[D>>2]=0;P=z+31252|0;Wi[P>>0]=0;I=(Zi(l,x)|0)+a|0;o=e+7948|0;Wi[(Xi[o>>2]|0)+I>>0]=0;N=z+31264|0;Wi[N>>0]=1;Wi[N+1>>0]=1;Wi[N+2>>0]=1;Wi[N+3>>0]=1;H=K>>H;B=B+-1|0;if(Wi[(Xi[U>>2]|0)+40>>0]|0){N=(_v(e)|0)&255;Wi[z+31254>>0]=N;if(N<<24>>24)Gd(e,i,r,f)}else Wi[z+31254>>0]=0;s=e+2420|0;if((Xi[s>>2]|0)==2){if((H|0)>0){a=I;n=0;while(1){jT((Xi[o>>2]|0)+a|0,0,H|0)|0;n=n+1|0;if((n|0)==(H|0))break;else a=a+x|0}}}else{a=mv(e,i,r,a,l)|0;n=a&255;if((H|0)>0){l=I;t=0;while(1){jT((Xi[o>>2]|0)+l|0,n|0,H|0)|0;t=t+1|0;if((t|0)==(H|0))break;else l=l+x|0}}Xi[C>>2]=a&255|0?2:0}i:do{if(!(Wi[(Xi[o>>2]|0)+I>>0]|0)){if((Xi[s>>2]|0)==2)a=Xi[C>>2]|0;else{a=Av(e)|0;Xi[C>>2]=a}if((a|0)==1?(Xi[(Xi[j>>2]|0)+13320>>2]|0)!=(f|0):0){a=Xi[D>>2]|0;N=53}else N=52;r:do{if((N|0)==52){a=Mv(e,f)|0;Xi[D>>2]=a;M=(Xi[C>>2]|0)==1;Wi[P>>0]=(a|0)==3&M&1;if(M)N=53;else{Qd(e,i,r,f);switch(Xi[D>>2]|0){case 0:{Xd(e,i,r,K,K,f,0);break r}case 1:{L=(K|0)/2|0;Xd(e,i,r,K,L,f,0);Xd(e,i,L+r|0,K,L,f,1);break r}case 2:{L=(K|0)/2|0;Xd(e,i,r,L,K,f,0);Xd(e,L+i|0,r,L,K,f,1);break r}case 4:{L=(K|0)/4|0;Xd(e,i,r,K,L,f,0);Xd(e,i,L+r|0,K,(3<<f|0)/4|0,f,1);break r}case 5:{L=(3<<f|0)/4|0;Xd(e,i,r,K,L,f,0);Xd(e,i,L+r|0,K,(K|0)/4|0,f,1);break r}case 6:{L=(K|0)/4|0;Xd(e,i,r,L,K,f,0);Xd(e,L+i|0,r,(3<<f|0)/4|0,K,f,1);break r}case 7:{L=(3<<f|0)/4|0;Xd(e,i,r,L,K,f,0);Xd(e,L+i|0,r,(K|0)/4|0,K,f,1);break r}case 3:{L=(K|0)/2|0;Xd(e,i,r,L,L,f,0);R=L+i|0;Xd(e,R,r,L,L,f,1);T=L+r|0;Xd(e,i,T,L,L,f,2);Xd(e,R,T,L,L,f,3);break r}default:break r}}}}while(0);if((N|0)==53){if(((((a|0)==0?(u=Xi[j>>2]|0,Xi[u+68>>2]|0):0)?(Xi[u+13304>>2]|0)>>>0<=f>>>0:0)?(Xi[u+13308>>2]|0)>>>0>=f>>>0:0)?Rv(e)|0:0){Qd(e,i,r,f);l=Xi[R>>2]|0;D=Xi[e+160>>2]|0;s=Xi[D+32>>2]|0;u=Zi(s,r)|0;n=Xi[j>>2]|0;o=Xi[n+56>>2]|0;u=(Xi[D>>2]|0)+((i<<o)+u)|0;h=Xi[D+36>>2]|0;a=Xi[n+13440>>2]|0;w=Zi(r>>a,h)|0;t=Xi[n+13428>>2]|0;w=(Xi[D+4>>2]|0)+((i>>t<<o)+w)|0;k=Xi[D+40>>2]|0;P=Xi[n+13444>>2]|0;b=Zi(r>>P,k)|0;C=Xi[n+13432>>2]|0;b=(Xi[D+8>>2]|0)+((i>>C<<o)+b)|0;o=Zi(qi[n+13300>>0]|0,K<<f)|0;a=(Zi(K>>C,K>>P)|0)+(Zi(K>>t,K>>a)|0)|0;o=(Zi(qi[n+13301>>0]|0,a)|0)+o|0;a=l+224|0;n=o+7>>3;t=Xi[l+240>>2]|0;P=Xi[a>>2]|0;t=(P&1|0)==0?t:t+-1|0;t=(P&511|0)==0?t:t+-1|0;l=(Xi[l+244>>2]|0)-t|0;if((l|0)<(n|0))a=0;else{a=(AN(a,t+n|0,l-n|0)|0)<0;a=a?0:t}if(!(Wi[e+3057>>0]|0))Xv(e,i,r,f);P=o>>>0<2147483640&(a|0)!=0;C=P?o:0;D=P?a:0;a=P?0:-1094995529;Xi[L>>2]=D;Xi[L+12>>2]=C;Xi[L+16>>2]=C+8;Xi[L+4>>2]=D+(C+7>>3);Xi[L+8>>2]=0;do{if(P){n=e+6172|0;Xz[Xi[n>>2]&127](u,s,K,K,L,qi[(Xi[j>>2]|0)+13300>>0]|0);a=Xi[j>>2]|0;if(!(Xi[a+4>>2]|0)){a=0;break}Xz[Xi[n>>2]&127](w,h,K>>Xi[a+13428>>2],K>>Xi[a+13440>>2],L,qi[a+13301>>0]|0);a=Xi[j>>2]|0;Xz[Xi[n>>2]&127](b,k,K>>Xi[a+13432>>2],K>>Xi[a+13444>>2],L,qi[a+13301>>0]|0);a=0}}while(0);if(Wi[(Xi[j>>2]|0)+13312>>0]|0)Gd(e,i,r,f);if((a|0)<0)break e;else break}M=Xi[R>>2]|0;a=(Xi[M+31248>>2]|0)==3;g=a?2:1;l=0;do{n=l<<1;t=0;do{Wi[T+(t+n)>>0]=Tv(e)|0;t=t+1|0}while((t|0)<(g|0));l=l+1|0}while((l|0)<(g|0));w=K>>(a&1);k=M+31260|0;b=e+7956|0;c=e+3516|0;d=L+4|0;v=L+8|0;E=M+31256|0;O=0;do{S=O<<1;_=(Zi(O,w)|0)+r|0;A=0;do{m=A+S|0;o=(Wi[T+m>>0]|0)==0;if(o)Xi[k>>2]=Dv(e)|0;else Xi[E>>2]=Nv(e)|0;a=(Zi(A,w)|0)+i|0;s=Xi[R>>2]|0;l=Xi[j>>2]|0;u=Xi[l+13340>>2]|0;p=a>>u;F=_>>u;y=Xi[l+13412>>2]|0;u=w>>u;l=Xi[l+13336>>2]|0;n=(1<<l)+-1|0;if((Wi[s+309>>0]|0)!=0|(n&_|0)!=0){t=(Zi(F+-1|0,y)|0)+p|0;t=qi[(Xi[b>>2]|0)+t>>0]|0}else t=1;if((n&a|0)!=0|(Wi[s+308>>0]|0)!=0){a=p+-1+(Zi(F,y)|0)|0;a=qi[(Xi[b>>2]|0)+a>>0]|0}else a=1;h=Xi[(Xi[c>>2]|0)+16>>2]|0;n=(_>>l<<l|0)<(_|0)?t:1;do{if((a|0)==(n|0))if(a>>>0<2){Xi[L>>2]=0;Xi[d>>2]=1;Xi[v>>2]=26;a=0;n=1;t=26;break}else{Xi[L>>2]=a;n=(a+29&31)+2|0;Xi[d>>2]=n;t=(a+31&31)+2|0;Xi[v>>2]=t;break}else{Xi[L>>2]=a;Xi[d>>2]=n;if(!((n|0)==0|(a|0)==0)){Xi[v>>2]=0;t=0;break}if((n|0)==1|(a|0)==1){Xi[v>>2]=26;t=26;break}else{Xi[v>>2]=1;t=1;break}}}while(0);if(o){if((a|0)>(n|0)){Xi[d>>2]=a;l=n&255;Xi[L>>2]=l}else{l=a;a=n}if((l|0)>(t|0)){Xi[v>>2]=l;o=t&255;Xi[L>>2]=o;n=l;l=o}else n=t;if((a|0)>(n|0)){Xi[v>>2]=a;t=n&255;Xi[d>>2]=t}else{t=a;a=n}s=Xi[s+31260>>2]|0;s=((s|0)>=(l|0)&1)+s|0;s=((s|0)>=(t|0)&1)+s|0;a=((s|0)>=(a|0)&1)+s|0}else a=Xi[L+(Xi[s+31256>>2]<<2)>>2]|0;o=(u|0)==0?1:u;a=a&255;if((o|0)>0){l=0;do{n=(Zi(l+F|0,y)|0)+p|0;jT((Xi[b>>2]|0)+n|0,a|0,o|0)|0;n=l+p|0;t=0;do{Wi[h+((n+(Zi(t+F|0,y)|0)|0)*12|0)+10>>0]=0;t=t+1|0}while((t|0)<(o|0));l=l+1|0}while((l|0)<(o|0))}Wi[M+31264+m>>0]=a;A=A+1|0}while((A|0)<(g|0));O=O+1|0}while((O|0)<(g|0));r:do{switch(Xi[(Xi[j>>2]|0)+4>>2]|0){case 3:{s=0;do{t=s<<1;u=0;do{a=Cv(e)|0;n=u+t|0;Wi[M+31277+n>>0]=a;o=Wi[M+31264+n>>0]|0;do{if((a|0)!=4){l=Wi[122129+a>>0]|0;a=M+31273+n|0;if(o<<24>>24==l<<24>>24){Wi[a>>0]=34;break}else{Wi[a>>0]=l;break}}else Wi[M+31273+n>>0]=o}while(0);u=u+1|0}while((u|0)<(g|0));s=s+1|0}while((s|0)<(g|0));break}case 2:{a=Cv(e)|0;Wi[M+31277>>0]=a;n=Wi[M+31264>>0]|0;if((a|0)==4)a=n&255;else{a=Wi[122129+a>>0]|0;a=n<<24>>24==a<<24>>24?34:a&255}Wi[M+31273>>0]=Wi[122133+a>>0]|0;break}case 0:break;default:{a=Cv(e)|0;l=Wi[M+31264>>0]|0;if((a|0)==4){Wi[M+31273>>0]=l;break r}n=Wi[122129+a>>0]|0;a=M+31273|0;if(l<<24>>24==n<<24>>24){Wi[a>>0]=34;break r}else{Wi[a>>0]=n;break r}}}}while(0)}r:do{if((Xi[C>>2]|0)==1){a=Xi[j>>2]|0;N=140}else{if((Xi[D>>2]|0)==0?(Wi[z+31272>>0]|0)!=0:0)a=Xi[j>>2]|0;else N=138;do{if((N|0)==138){if(Uv(e)|0){a=Xi[j>>2]|0;if((Xi[C>>2]|0)==1){N=140;break r}else break}if(Wi[e+3057>>0]|0)break i;Xv(e,i,r,f);break i}}while(0);a=Xi[a+13344>>2]|0}}while(0);if((N|0)==140)a=(qi[P>>0]|0)+(Xi[a+13348>>2]|0)|0;Wi[z+31253>>0]=a;a=$d(e,i,r,i,r,i,r,f,f,0,0,156388,156388)|0;if((a|0)<0)break e}else{Xd(e,i,r,K,K,f,0);Qd(e,i,r,f);if(!(Wi[e+3057>>0]|0))Xv(e,i,r,f)}}while(0);if(Wi[(Xi[U>>2]|0)+22>>0]|0?(Wi[z+300>>0]|0)==0:0)Gv(e,i,r,f);if((H|0)>0){l=e+7932|0;t=z+272|0;a=I;n=0;while(1){jT((Xi[l>>2]|0)+a|0,Wi[t>>0]|0,H|0)|0;n=n+1|0;if((n|0)==(H|0))break;else a=a+x|0}}if((B&W|0)==0?(B&K+r|0)==0:0)Xi[z+276>>2]=Wi[z+272>>0];a=Xi[j>>2]|0;l=Xi[a+13320>>2]|0;t=K>>l;n=i>>l;l=r>>l;if((t|0)>0?(V=e+7952|0,Y=Xi[z+31232>>2]&255,i=(Zi(Xi[a+13396>>2]|0,l)|0)+n|0,jT((Xi[V>>2]|0)+i|0,Y|0,t|0)|0,(t|0)!=1):0){a=1;do{i=(Zi(Xi[(Xi[j>>2]|0)+13396>>2]|0,a+l|0)|0)+n|0;jT((Xi[V>>2]|0)+i|0,Y|0,t|0)|0;a=a+1|0}while((a|0)!=(t|0))}a=Xi[j>>2]|0;n=1<<Xi[a+13336>>2];if((W|0)%(n|0)|0|0?(W|0)<(Xi[a+13376>>2]|0):0){a=1;break}r=K+r|0;if((r|0)%(n|0)|0|0?(r|0)<(Xi[a+13380>>2]|0):0){a=1;break}a=(Sv(e)|0)==0&1}}while(0);Ue=G;return a|0}function Gd(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;o=1<<f;t=Xi[e+1412>>2]|0;f=Xi[t+13340>>2]|0;s=Xi[t+13412>>2]|0;a=o+i|0;n=Xi[t+13376>>2]|0;o=o+r|0;t=Xi[t+13380>>2]|0;l=r>>f;o=((o|0)>(t|0)?t:o)>>f;if((l|0)<(o|0)){t=i>>f;n=((a|0)>(n|0)?n:a)>>f;i=(t|0)<(n|0);a=e+7964|0;do{if(i){f=Zi(l,s)|0;r=t;do{Wi[(Xi[a>>2]|0)+(r+f)>>0]=2;r=r+1|0}while((r|0)!=(n|0))}l=l+1|0}while((l|0)!=(o|0))}return}function Xd(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;B=Ue;Ue=Ue+16|0;H=B;c=e+136|0;t=Xi[c>>2]|0;Xi[H>>2]=0;Xi[H+4>>2]=0;Xi[H+8>>2]=0;C=e+1412|0;N=Xi[C>>2]|0;h=Xi[N+13412>>2]|0;b=Xi[e+3516>>2]|0;w=Xi[b+16>>2]|0;b=Xi[b+20>>2]|0;d=e+160|0;T=Xi[d>>2]|0;P=Zi(Xi[T+32>>2]|0,r>>Xi[N+13436>>2])|0;D=Xi[N+56>>2]|0;P=(Xi[T>>2]|0)+((i>>Xi[N+13424>>2]<<D)+P)|0;L=Zi(r>>Xi[N+13440>>2],Xi[T+36>>2]|0)|0;L=(Xi[T+4>>2]|0)+((i>>Xi[N+13428>>2]<<D)+L)|0;I=Zi(r>>Xi[N+13444>>2],Xi[T+40>>2]|0)|0;I=(Xi[T+8>>2]|0)+((i>>Xi[N+13432>>2]<<D)+I)|0;D=Xi[N+13320>>2]|0;D=(Zi(r>>D,Xi[N+13396>>2]|0)|0)+(i>>D)|0;do{if((Wi[(Xi[e+7948>>2]|0)+D>>0]|0)==0?(D=(Lv(e)|0)&255,Wi[t+31272>>0]=D,D<<24>>24==0):0){s=Xi[c>>2]|0;lE(e,i,r,f,l);u=H+10|0;Wi[u>>0]=0;if(!(Xi[e+2420>>2]|0)){t=Iv(e,f,l)|0;if((t|0)==1)t=1;else k=8}else{t=0;k=8}if((k|0)==8){o=Xi[e+3044>>2]|0;if(o|0)Wi[H+8>>0]=Hv(e,o)|0;Wi[u>>0]=1;Wv(e,i,r,0);sE(e,i,r,f,l,a,n,0,H,Bv(e)|0,0);D=Xi[H>>2]|0;Gi[H>>1]=D+(Ji[s+31268>>1]|0);Gi[H+2>>1]=(D>>>16)+(Ji[s+31270>>1]|0);if(!t)break}o=Xi[e+3048>>2]|0;if(o|0)Wi[H+9>>0]=Hv(e,o)|0;if((t|0)==2&(Wi[e+3055>>0]|0)==1)Xi[s+31268>>2]=0;else Wv(e,i,r,1);Wi[u>>0]=(qi[u>>0]|0)+2;sE(e,i,r,f,l,a,n,0,H,Bv(e)|0,1);N=H+4|0;D=Xi[N>>2]|0;Gi[N>>1]=D+(Ji[s+31268>>1]|0);Gi[H+6>>1]=(D>>>16)+(Ji[s+31270>>1]|0)}else k=3}while(0);if((k|0)==3){if((Xi[e+3088>>2]|0)>>>0>1)t=Pv(e)|0;else t=0;aE(e,i,r,f,l,a,n,t,H)}t=Xi[(Xi[C>>2]|0)+13340>>2]|0;a=i>>t;n=r>>t;if((l>>t|0)>0){u=0;do{if((f>>t|0)>0){o=(Zi(u+n|0,h)|0)+a|0;s=0;do{t=w+((o+s|0)*12|0)|0;Xi[t>>2]=Xi[H>>2];Xi[t+4>>2]=Xi[H+4>>2];Xi[t+8>>2]=Xi[H+8>>2];s=s+1|0;t=Xi[(Xi[C>>2]|0)+13340>>2]|0}while((s|0)<(f>>t|0))}u=u+1|0}while((u|0)<(l>>t|0))}u=H+10|0;t=Wi[u>>0]|0;if(t&1){o=Xi[H+8>>2]|0;s=Xi[b+(o<<24>>24<<2)>>2]|0;if(s|0){t=l+r+(Gi[H+2>>1]>>2)|0;if((Wi[e+140>>0]|0)==1){YO(s+4|0,(t|0)<-9?0:t+9|0,0);t=Wi[u>>0]|0;D=s;k=26}else{t=o>>>16&255;D=s;k=26}}}else{D=0;k=26}e:do{if((k|0)==26){if(t&2){s=Xi[b+196+(Wi[H+9>>0]<<2)>>2]|0;if(!s)break;o=l+r+(Gi[H+6>>1]>>2)|0;if((Wi[e+140>>0]|0)==1){YO(s+4|0,(o|0)<-9?0:o+9|0,0);t=Wi[u>>0]|0;N=s}else N=s}else N=0;switch(t<<24>>24){case 1:{u=Xi[C>>2]|0;s=Xi[u+13428>>2]|0;t=i>>s;u=Xi[u+13440>>2]|0;o=r>>u;s=f>>s;u=l>>u;a=H+8|0;N=Wi[a>>0]|0;qd(e,P,Xi[(Xi[d>>2]|0)+32>>2]|0,Xi[D>>2]|0,H,i,r,f,l,Gi[e+3112+(N<<1)>>1]|0,Gi[e+3304+(N<<1)>>1]|0);if(!(Xi[(Xi[C>>2]|0)+4>>2]|0))break e;f=Xi[D>>2]|0;l=Wi[a>>0]|0;Jd(e,L,Xi[(Xi[d>>2]|0)+36>>2]|0,Xi[f+4>>2]|0,Xi[f+36>>2]|0,0,t,o,s,u,H,Gi[e+3144+(l<<2)>>1]|0,Gi[e+3336+(l<<2)>>1]|0);l=Xi[D>>2]|0;f=Wi[a>>0]|0;Jd(e,I,Xi[(Xi[d>>2]|0)+40>>2]|0,Xi[l+8>>2]|0,Xi[l+40>>2]|0,0,t,o,s,u,H,Gi[e+3144+(f<<2)+2>>1]|0,Gi[e+3336+(f<<2)+2>>1]|0);break e}case 2:{u=Xi[C>>2]|0;s=Xi[u+13428>>2]|0;t=i>>s;u=Xi[u+13440>>2]|0;o=r>>u;s=f>>s;u=l>>u;a=H+9|0;D=Wi[a>>0]|0;qd(e,P,Xi[(Xi[d>>2]|0)+32>>2]|0,Xi[N>>2]|0,H+4|0,i,r,f,l,Gi[e+3272+(D<<1)>>1]|0,Gi[e+3400+(D<<1)>>1]|0);if(!(Xi[(Xi[C>>2]|0)+4>>2]|0))break e;f=Xi[N>>2]|0;l=Wi[a>>0]|0;Jd(e,L,Xi[(Xi[d>>2]|0)+36>>2]|0,Xi[f+4>>2]|0,Xi[f+36>>2]|0,1,t,o,s,u,H,Gi[e+3208+(l<<2)>>1]|0,Gi[e+3432+(l<<2)>>1]|0);l=Xi[N>>2]|0;f=Wi[a>>0]|0;Jd(e,I,Xi[(Xi[d>>2]|0)+40>>2]|0,Xi[l+8>>2]|0,Xi[l+40>>2]|0,1,t,o,s,u,H,Gi[e+3208+(f<<2)+2>>1]|0,Gi[e+3432+(f<<2)+2>>1]|0);break e}case 3:{a=Xi[C>>2]|0;R=Xi[a+13428>>2]|0;g=i>>R;T=Xi[a+13440>>2]|0;M=r>>T;R=f>>R;T=l>>T;A=Xi[(Xi[d>>2]|0)+32>>2]|0;s=Xi[D>>2]|0;n=Xi[N>>2]|0;_=Xi[c>>2]|0;v=Xi[s+32>>2]|0;u=Xi[n+32>>2]|0;E=Xi[a+13376>>2]|0;S=Xi[a+13380>>2]|0;t=Xi[H>>2]|0;m=t&3;p=t>>>16&3;o=Xi[H+4>>2]|0;F=o&3;y=o>>>16&3;switch(Xi[e+2420>>2]|0){case 1:{O=(Wi[(Xi[e+1416>>2]|0)+37>>0]|0)!=0;break}case 0:{O=(Wi[(Xi[e+1416>>2]|0)+38>>0]|0)!=0;break}default:O=0}c=(t<<16>>18)+i|0;b=(t>>18)+r|0;d=(o<<16>>18)+i|0;k=(o>>18)+r|0;i=qi[120735+f>>0]|0;h=Xi[s>>2]|0;t=Zi(b,v)|0;s=Xi[a+56>>2]|0;t=(c<<s)+t|0;o=h+t|0;w=Xi[n>>2]|0;n=(d<<s)+(Zi(k,u)|0)|0;a=w+n|0;if((!((c|0)<3|(b|0)<4)?(c|0)<(-4-f+E|0):0)?(b|0)<(-4-l+S|0):0)t=v;else{r=80<<s;o=3<<s;t=h+((Zi(v,-3)|0)-o+t)|0;$z[Xi[e+7916>>2]&3](_+320|0,t,r,v,f+7|0,l+7|0,c+-3|0,b+-3|0,E,S);o=(r*3|0)+o+(_+320)|0;t=r}if(!((!((d|0)<3|(k|0)<4)?(d|0)<(-4-f+E|0):0)?(k|0)<(-4-l+S|0):0)){a=Xi[(Xi[C>>2]|0)+56>>2]|0;r=80<<a;a=3<<a;v=w+(n+(Zi(u,-3)|0)-a)|0;$z[Xi[e+7916>>2]&3](_+11680|0,v,r,u,f+7|0,l+7|0,d+-3|0,k+-3|0,E,S);a=(r*3|0)+a+(_+11680)|0;u=r}s=_+23040|0;Zz[Xi[e+6284+(i<<4)+(((p|0)!=0&1)<<3)+(((m|0)!=0&1)<<2)>>2]&63](s,o,t,l,m,p,f);t=(F|0)!=0&1;o=(y|0)!=0&1;if(O){r=Gi[H+8>>1]|0;O=(r&65535)<<24>>24;r=((r&65535)>>>8&65535)<<24>>24;Jz[Xi[e+6924+(i<<4)+(o<<3)+(t<<2)>>2]&31](P,A,a,u,s,l,qi[e+3109>>0]|0,Gi[e+3112+(O<<1)>>1]|0,Gi[e+3272+(r<<1)>>1]|0,Gi[e+3304+(O<<1)>>1]|0,Gi[e+3400+(r<<1)>>1]|0,F,y,f)}else Qz[Xi[e+6764+(i<<4)+(o<<3)+(t<<2)>>2]&31](P,A,a,u,s,l,F,y,f);if(!(Xi[(Xi[C>>2]|0)+4>>2]|0))break e;Zd(e,L,Xi[D>>2]|0,Xi[N>>2]|0,g,M,R,T,H,0);Zd(e,I,Xi[D>>2]|0,Xi[N>>2]|0,g,M,R,T,H,1);break e}default:break e}}}while(0);Ue=B;return}function qd(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;d=Xi[e+136>>2]|0;v=Xi[f>>2]|0;h=Xi[f+32>>2]|0;k=Xi[e+1412>>2]|0;c=Xi[k+13376>>2]|0;b=Xi[k+13380>>2]|0;f=Gi[l>>1]|0;m=f&3;l=Gi[l+2>>1]|0;E=l&3;switch(Xi[e+2420>>2]|0){case 1:{_=(Wi[(Xi[e+1416>>2]|0)+37>>0]|0)!=0;break}case 0:{_=(Wi[(Xi[e+1416>>2]|0)+38>>0]|0)!=0;break}default:_=0}S=qi[120735+t>>0]|0;w=(f<<16>>16>>2)+a|0;n=(l<<16>>16>>2)+n|0;l=Zi(n,h)|0;f=Xi[k+56>>2]|0;l=l+(w<<f)|0;a=v+l|0;if(!((!((w|0)<3|(n|0)<4)?(w|0)<(-4-t+c|0):0)?(n|0)<(-4-o+b|0):0)){k=80<<f;a=3<<f;v=v+(l+(Zi(h,-3)|0)-a)|0;$z[Xi[e+7916>>2]&3](d+320|0,v,k,h,t+7|0,o+7|0,w+-3|0,n+-3|0,c,b);a=(k*3|0)+a+(d+320)|0;h=k}f=(m|0)!=0&1;l=(E|0)!=0&1;if(_)jz[Xi[e+6604+(S<<4)+(l<<3)+(f<<2)>>2]&31](i,r,a,h,o,qi[e+3109>>0]|0,s,u,m,E,t);else Gz[Xi[e+6444+(S<<4)+(l<<3)+(f<<2)>>2]&63](i,r,a,h,o,m,E,t);return}function Jd(e,i,r,f,l,a,n,t,o,s,u,h,w){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;var k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;d=Xi[e+136>>2]|0;c=Xi[e+1412>>2]|0;k=Xi[c+13428>>2]|0;S=Xi[c+13376>>2]>>k;b=Xi[c+13440>>2]|0;v=Xi[c+13380>>2]>>b;switch(Xi[e+2420>>2]|0){case 1:{y=(Wi[(Xi[e+1416>>2]|0)+37>>0]|0)!=0;break}case 0:{y=(Wi[(Xi[e+1416>>2]|0)+38>>0]|0)!=0;break}default:y=0}F=qi[120735+o>>0]|0;A=Gi[u+(a<<2)>>1]|0;O=k+2|0;p=(1<<O)+-1&A;u=Gi[u+(a<<2)+2>>1]|0;a=b+2|0;_=(1<<a)+-1&u;m=p<<1-k;E=_<<1-b;n=(A>>O)+n|0;b=(u>>a)+t|0;a=Zi(b,l)|0;u=Xi[c+56>>2]|0;a=a+(n<<u)|0;k=f+a|0;if(!((!((n|0)<1|(b|0)<2)?(n|0)<(-2-o+S|0):0)?(b|0)<(-2-s+v|0):0)){A=80<<u;k=1<<u;$z[Xi[e+7916>>2]&3](d+320|0,f+(a-l-k)|0,A,l,o+3|0,s+3|0,n+-1|0,b+-1|0,S,v);k=A+k+(d+320)|0;l=A}a=(p|0)!=0&1;u=(_|0)!=0&1;if(y)jz[Xi[e+7404+(F<<4)+(u<<3)+(a<<2)>>2]&31](i,r,k,l,s,Gi[e+3110>>1]|0,h,w,m,E,o);else Gz[Xi[e+7244+(F<<4)+(u<<3)+(a<<2)>>2]&63](i,r,k,l,s,m,E,o);return}function Zd(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;g=Xi[e+136>>2]|0;C=s+1|0;_=Xi[r+(C<<2)>>2]|0;m=Xi[f+(C<<2)>>2]|0;r=Xi[r+32+(C<<2)>>2]|0;u=Xi[f+32+(C<<2)>>2]|0;switch(Xi[e+2420>>2]|0){case 1:{T=(Wi[(Xi[e+1416>>2]|0)+37>>0]|0)!=0;break}case 0:{T=(Wi[(Xi[e+1416>>2]|0)+38>>0]|0)!=0;break}default:T=0}v=e+1412|0;f=Xi[v>>2]|0;N=Xi[f+13428>>2]|0;E=Xi[f+13376>>2]>>N;D=Xi[f+13440>>2]|0;S=Xi[f+13380>>2]>>D;w=Gi[o>>1]|0;d=N+2|0;y=(1<<d)+-1|0;p=w&y;k=Gi[o+2>>1]|0;b=D+2|0;M=(1<<b)+-1|0;F=M&k;c=Gi[o+4>>1]|0;y=c&y;R=Gi[o+6>>1]|0;M=R&M;N=1-N|0;O=p<<N;D=1-D|0;A=F<<D;N=y<<N;D=M<<D;w=(w>>d)+l|0;k=(k>>b)+a|0;d=(c>>d)+l|0;b=(R>>b)+a|0;R=qi[120735+n>>0]|0;a=Zi(k,r)|0;l=Xi[f+56>>2]|0;a=(w<<l)+a|0;f=_+a|0;c=(Zi(b,u)|0)+(d<<l)|0;h=m+c|0;if(!((!((w|0)<1|(k|0)<2)?(w|0)<(-2-n+E|0):0)?(k|0)<(-2-t+S|0):0)){P=80<<l;f=1<<l;$z[Xi[e+7916>>2]&3](g+320|0,_+(a-r-f)|0,P,r,n+3|0,t+3|0,w+-1|0,k+-1|0,E,S);f=P+f+(g+320)|0;r=P}if(!((!((d|0)<1|(b|0)<2)?(d|0)<(-2-n+E|0):0)?(b|0)<(-2-t+S|0):0)){h=Xi[(Xi[v>>2]|0)+56>>2]|0;P=80<<h;h=1<<h;$z[Xi[e+7916>>2]&3](g+11680|0,m+(c-u-h)|0,P,u,n+3|0,t+3|0,d+-1|0,b+-1|0,E,S);h=P+h+(g+11680)|0;u=P}a=g+23040|0;Zz[Xi[e+7084+(R<<4)+(((F|0)!=0&1)<<3)+(((p|0)!=0&1)<<2)>>2]&63](a,f,r,t,O,A,n);l=(y|0)!=0&1;f=(M|0)!=0&1;r=Xi[(Xi[e+160>>2]|0)+32+(C<<2)>>2]|0;if(T){C=Wi[o+8>>0]|0;P=Wi[o+9>>0]|0;Jz[Xi[e+7724+(R<<4)+(f<<3)+(l<<2)>>2]&31](i,r,h,u,a,t,Gi[e+3110>>1]|0,Gi[e+3144+(C<<2)+(s<<1)>>1]|0,Gi[e+3208+(P<<2)+(s<<1)>>1]|0,Gi[e+3336+(C<<2)+(s<<1)>>1]|0,Gi[e+3432+(P<<2)+(s<<1)>>1]|0,N,D,n)}else Qz[Xi[e+7564+(R<<4)+(f<<3)+(l<<2)>>2]&31](i,r,h,u,a,t,N,D,n);return}function Qd(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;a=Xi[e+136>>2]|0;s=Xi[e+1412>>2]|0;n=Xi[s+13340>>2]|0;l=1<<f>>n;s=Xi[s+13412>>2]|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=i>>n;n=r>>n;l=(l|0)==0?1:l;r=(l|0)>0;if(r){f=e+7956|0;i=0;do{e=(Zi(i+n|0,s)|0)+t|0;jT((Xi[f>>2]|0)+e|0,1,l|0)|0;i=i+1|0}while((i|0)<(l|0))}if(!((Xi[a+31244>>2]|0)!=1|r^1)){i=0;do{f=(Zi(i+n|0,s)|0)+t|0;r=0;do{Wi[o+((f+r|0)*12|0)+10>>0]=0;r=r+1|0}while((r|0)<(l|0));i=i+1|0}while((i|0)<(l|0))}return}function $d(e,i,r,f,l,a,n,t,o,s,u,h,w){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;var k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;V=Ue;Ue=Ue+48|0;g=V+8|0;M=V;H=V+32|0;z=V+24|0;m=e+136|0;x=Xi[m>>2]|0;v=Xi[h>>2]|0;Xi[H>>2]=v;E=Xi[h+4>>2]|0;d=H+4|0;Xi[d>>2]=E;h=Xi[w>>2]|0;Xi[z>>2]=h;_=Xi[w+4>>2]|0;S=z+4|0;Xi[S>>2]=_;w=Wi[x+31252>>0]|0;do{if(w<<24>>24){if((s|0)==1){Xi[x+288>>2]=qi[x+31264+u>>0];if((Xi[(Xi[e+1412>>2]|0)+4>>2]|0)==3){Xi[x+292>>2]=qi[x+31273+u>>0];Xi[x+296>>2]=qi[x+31277+u>>0];break}else{Xi[x+292>>2]=qi[x+31273>>0];Xi[x+296>>2]=qi[x+31277>>0];break}}}else{Xi[x+288>>2]=qi[x+31264>>0];Xi[x+292>>2]=qi[x+31273>>0];Xi[x+296>>2]=qi[x+31277>>0]}}while(0);B=e+1412|0;k=Xi[B>>2]|0;b=(Xi[k+13332>>2]|0)>>>0<o>>>0;if(((!b?(Xi[k+13328>>2]|0)>>>0<o>>>0:0)?(qi[x+31253>>0]|0)>(s|0):0)?!((s|0)==0&w<<24>>24!=0):0){c=(xv(e,o)|0)&255;k=Xi[B>>2]|0}else{if((Xi[k+13344>>2]|0)==0?(Xi[x+31244>>2]|0)==0:0)c=(s|0)==0&(Xi[x+31248>>2]|0)!=0;else c=0;if(b)w=1;else w=c|(s|0)==0&w<<24>>24!=0;c=w&1}I=Xi[k+4>>2]|0;if((I|0)!=0?(o|0)>2|(I|0)==3:0){k=(s|0)!=0;if(!(k&(v|0)==0)){w=zv(e,s)|0;Xi[H>>2]=w;if((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?(o|0)==3|c<<24>>24==0:0){b=zv(e,s)|0;Xi[d>>2]=b}else b=E}else{b=E;w=0}if(!(k&(h|0)==0)){h=zv(e,s)|0;Xi[z>>2]=h;if((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?(o|0)==3|c<<24>>24==0:0){k=zv(e,s)|0;Xi[S>>2]=k;v=w}else{v=w;k=_}}else{h=0;v=w;k=_}}else{b=E;k=_}e:do{if(!(c<<24>>24)){w=Xi[B>>2]|0;P=Xi[w+13328>>2]|0;L=1<<P;I=Xi[w+13404>>2]|0;if(((v|s|h|0)==0?(Xi[x+31244>>2]|0)!=1:0)?(k|b|0)==0?1:(Xi[w+4>>2]|0)!=2:0)C=1;else{C=Vv(e,s)|0;w=Xi[B>>2]|0}O=Xi[m>>2]|0;T=o-(Xi[w+13428>>2]|0)|0;D=O+31244|0;if((Xi[D>>2]|0)==1){s=1<<o;lE(e,i,r,s,s);nV[Xi[e+6120+(o+-2<<2)>>2]&255](e,i,r,0)}d=(C|0)!=0;w=(h|v|0)==0;i:do{if(d)if(w)if((Xi[(Xi[B>>2]|0)+4>>2]|0)==2)if(!b)N=46;else{b=1;N=47}else{b=0;N=47}else{b=1;N=47}else if(w){c=Xi[B>>2]|0;w=Xi[c+4>>2]|0;switch(w|0){case 0:break i;case 2:{if(b|k|0)if(!(h|b)){N=46;break i}else{b=1;N=47;break i}break}default:{}}if((Xi[D>>2]|0)==1){if((o|0)>2|(w|0)==3){k=1<<(Xi[c+13428>>2]|0)+T;h=1<<(Xi[c+13440>>2]|0)+T;lE(e,i,r,k,h);w=e+6120+(T+-2<<2)|0;nV[Xi[w>>2]&255](e,i,r,1);nV[Xi[w>>2]&255](e,i,r,2);if((Xi[(Xi[B>>2]|0)+4>>2]|0)!=2)break;z=(1<<T)+r|0;lE(e,i,z,k,h);nV[Xi[w>>2]&255](e,i,z,1);nV[Xi[w>>2]&255](e,i,z,2);break}if((u|0)==3?(p=1<<o+1,F=1<<(Xi[c+13440>>2]|0)+o,lE(e,f,l,p,F),y=e+6120+(o+-2<<2)|0,nV[Xi[y>>2]&255](e,f,l,1),nV[Xi[y>>2]&255](e,f,l,2),(Xi[(Xi[B>>2]|0)+4>>2]|0)==2):0){z=(1<<o)+l|0;lE(e,f,z,p,F);nV[Xi[y>>2]&255](e,f,z,1);nV[Xi[y>>2]&255](e,f,z,2)}}}else{b=1;N=47}}while(0);if((N|0)==46){b=(k|0)!=0;N=47}if((N|0)==47){c=e+1416|0;do{if(Wi[(Xi[c>>2]|0)+22>>0]|0?(A=O+300|0,(Wi[A>>0]|0)==0):0){y=pv(e)|0;h=O+280|0;Xi[h>>2]=y;if(y){y=(Fv(e)|0)==1;w=Xi[h>>2]|0;if(y){w=0-w|0;Xi[h>>2]=w}}else w=0;Wi[A>>0]=1;k=(Xi[(Xi[B>>2]|0)+13448>>2]|0)/2|0;h=-26-k|0;k=k+25|0;if((w|0)<(h|0)|(w|0)>(k|0)){r=Xi[e+4>>2]|0;Xi[g>>2]=w;Xi[g+4>>2]=h;Xi[g+8>>2]=k;nA(r,16,122209,g);h=-1094995529;break e}else{Gv(e,a,n,t);break}}}while(0);if((b&(Wi[e+3076>>0]|0)!=0?(Wi[O+31254>>0]|0)==0:0)?(R=O+301|0,(Wi[R>>0]|0)==0):0){if(!(yv(e)|0)){Wi[O+302>>0]=0;Wi[O+303>>0]=0}else{h=Xi[c>>2]|0;if(!(Wi[h+1633>>0]|0))w=0;else{w=Ov(e)|0;nA(Xi[e+4>>2]|0,16,122168,M);h=Xi[c>>2]|0}Wi[O+302>>0]=Wi[h+1634+w>>0]|0;Wi[O+303>>0]=Wi[h+1639+w>>0]|0}Wi[R>>0]=1}if((o|0)<4&(Xi[D>>2]|0)==1){h=Xi[O+288>>2]|0;h=(h+-6|0)>>>0<9?2:(h+-22|0)>>>0<9&1;w=Xi[O+292>>2]|0;if((w+-6|0)>>>0<9)y=2;else y=(w+-22|0)>>>0<9&1}else{h=0;y=0}F=O+304|0;Wi[F>>0]=0;if(d)Kv(e,i,r,o,h,0);w=Xi[B>>2]|0;h=Xi[w+4>>2]|0;i:do{if(h|0){if(!((o|0)>2|(h|0)==3)){if((u|0)!=3)break;b=1<<o+1;w=1<<(Xi[w+13440>>2]|0)+o;k=e+6120+(o+-2<<2)|0;h=0;do{if((Xi[D>>2]|0)==1){N=(h<<o)+l|0;lE(e,f,N,b,w);nV[Xi[k>>2]&255](e,f,N,1)}if(Xi[H+(h<<2)>>2]|0)Kv(e,f,(h<<o)+l|0,o,y,1);h=h+1|0}while((h|0)<(((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?2:1)|0));h=0;while(1){if((Xi[D>>2]|0)==1){H=(h<<o)+l|0;lE(e,f,H,b,w);nV[Xi[k>>2]&255](e,f,H,2)}if(Xi[z+(h<<2)>>2]|0)Kv(e,f,(h<<o)+l|0,o,y,2);h=h+1|0;if((h|0)>=(((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?2:1)|0))break i}}p=1<<(Xi[w+13428>>2]|0)+T;s=1<<(Xi[w+13440>>2]|0)+T;do{if(d&(Wi[(Xi[c>>2]|0)+1630>>0]|0)!=0){if(Xi[D>>2]|0){l=(Xi[O+296>>2]|0)==4;Wi[F>>0]=l&1;if(!l)break}else Wi[F>>0]=1;ev(e,0)}else Wi[F>>0]=0}while(0);m=T+-2|0;c=e+6120+(m<<2)|0;d=e+160|0;v=O+320|0;E=O+11680|0;S=1<<T<<T;_=(S|0)>0;m=e+6176+(m<<2)|0;b=O+284|0;h=0;do{if((Xi[D>>2]|0)==1){l=(h<<T)+r|0;lE(e,i,l,p,s);nV[Xi[c>>2]&255](e,i,l,1)}do{if(!(Xi[H+(h<<2)>>2]|0)){if(!(Wi[F>>0]|0))break;f=Xi[d>>2]|0;w=Xi[f+36>>2]|0;k=Xi[B>>2]|0;l=Zi(r>>Xi[k+13440>>2],w)|0;k=(Xi[f+4>>2]|0)+(l+(i>>Xi[k+13428>>2]<<Xi[k+56>>2]))|0;if(_){h=0;do{Gi[E+(h<<1)>>1]=(Zi(Gi[v+(h<<1)>>1]|0,Xi[b>>2]|0)|0)>>>3;h=h+1|0}while((h|0)!=(S|0));h=S}else h=0;aV[Xi[m>>2]&1023](k,E,w)}else Kv(e,i,(h<<T)+r|0,T,y,1)}while(0);h=h+1|0}while((h|0)<(((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?2:1)|0));if(!(Wi[F>>0]|0))h=0;else{ev(e,1);h=0}do{if((Xi[D>>2]|0)==1){H=(h<<T)+r|0;lE(e,i,H,p,s);nV[Xi[c>>2]&255](e,i,H,2)}do{if(!(Xi[z+(h<<2)>>2]|0)){if(!(Wi[F>>0]|0))break;l=Xi[d>>2]|0;w=Xi[l+40>>2]|0;k=Xi[B>>2]|0;H=Zi(r>>Xi[k+13444>>2],w)|0;k=(Xi[l+8>>2]|0)+(H+(i>>Xi[k+13432>>2]<<Xi[k+56>>2]))|0;if(_){h=0;do{Gi[E+(h<<1)>>1]=(Zi(Gi[v+(h<<1)>>1]|0,Xi[b>>2]|0)|0)>>>3;h=h+1|0}while((h|0)!=(S|0));h=S}else h=0;aV[Xi[m>>2]&1023](k,E,w)}else Kv(e,i,(h<<T)+r|0,T,y,2)}while(0);h=h+1|0}while((h|0)<(((Xi[(Xi[B>>2]|0)+4>>2]|0)==2?2:1)|0))}}while(0);if(C|0?(U=1<<o,(o|0)!=31):0){h=e+7960|0;k=0;do{w=Zi(k+r>>P,I)|0;b=0;do{Wi[(Xi[h>>2]|0)+((b+i>>P)+w)>>0]=1;b=b+L|0}while((b|0)<(U|0));k=k+L|0}while((k|0)<(U|0))}}if(((Wi[e+3057>>0]|0)==0?(Xv(e,i,r,o),(Wi[(Xi[e+1416>>2]|0)+40>>0]|0)!=0):0)?(Wi[x+31254>>0]|0)!=0:0){Gd(e,i,r,o);N=127}else N=127}else{k=o+-1|0;c=1<<k;b=c+i|0;c=c+r|0;w=s+1|0;h=$d(e,i,r,i,r,a,n,t,k,w,0,H,z)|0;if((h|0)>=0){h=$d(e,b,r,i,r,a,n,t,k,w,1,H,z)|0;if((h|0)>=0){h=$d(e,i,c,i,r,a,n,t,k,w,2,H,z)|0;if((h|0)>=0){h=$d(e,b,c,i,r,a,n,t,k,w,3,H,z)|0;if((h|0)>=0)N=127}}}}}while(0);if((N|0)==127)h=0;Ue=V;return h|0}function ev(e,i){e=e|0;i=i|0;var r=0,f=0;f=Xi[e+136>>2]|0;r=Yv(e,i)|0;if(!r)r=0;else r=1-((jv(e,i)|0)<<1)<<r+-1;Xi[f+284>>2]=r;return}function iv(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;a=d+8|0;l=d;c=Xi[e+60>>2]|0;w=c+1412|0;f=Xi[w>>2]|0;b=1<<Xi[f+13336>>2];k=c+1416|0;e=Xi[k>>2]|0;i=Xi[(Xi[e+1668>>2]|0)+(Xi[c+3496>>2]<<2)>>2]|0;r=(Wi[c+2429>>0]|0)==0;if(!i)if(r)n=6;else{nA(Xi[c+4>>2]|0,16,122266,l);i=-1094995529}else if(!r?(Xi[(Xi[c+7944>>2]|0)+(Xi[(Xi[e+1672>>2]|0)+(i+-1<<2)>>2]<<2)>>2]|0)!=(Xi[c+2416>>2]|0):0){nA(Xi[c+4>>2]|0,16,122292,a);i=-1094995529}else n=6;e:do{if((n|0)==6){a=b+-1|0;n=c+3080|0;t=c+3504|0;o=c+3084|0;s=c+3058|0;u=c+7968|0;i:do{if((i|0)<(Xi[f+13392>>2]|0)){l=i;while(1){e=Xi[(Xi[(Xi[k>>2]|0)+1672>>2]|0)+(l<<2)>>2]|0;h=Xi[f+13336>>2]|0;i=a+(Xi[f+13376>>2]|0)>>h;r=((e|0)%(i|0)|0)<<h;h=((e|0)/(i|0)|0)<<h;jd(c,r,h,l);av(c,l);i=Xi[(Xi[w>>2]|0)+13336>>2]|0;Kd(c,r>>i,h>>i);i=Xi[t>>2]|0;Xi[i+(e<<3)>>2]=Xi[n>>2];Xi[i+(e<<3)+4>>2]=Xi[o>>2];Wi[(Xi[u>>2]|0)+e>>0]=Wi[s>>0]|0;i=Wd(c,r,h,Xi[(Xi[w>>2]|0)+13336>>2]|0,0)|0;if((i|0)<0)break;l=l+1|0;lv(c,l);fE(c,r,h,b);f=Xi[w>>2]|0;if(!i){i=l;e=h;break i}if((l|0)>=(Xi[f+13392>>2]|0)){i=l;e=h;break i}}Xi[(Xi[c+7944>>2]|0)+(e<<2)>>2]=-1;break e}else{r=0;e=0}}while(0);if((r+b|0)>=(Xi[f+13376>>2]|0)?(e+b|0)>=(Xi[f+13380>>2]|0):0)Jv(c,r,e,b)}}while(0);Ue=d;return i|0}function rv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;T=Ue;Ue=Ue+112|0;M=T+88|0;S=T+80|0;O=T+72|0;y=T+64|0;F=T+56|0;p=T+48|0;_=T+40|0;v=T+32|0;d=T+24|0;c=T+16|0;t=T+8|0;n=T;m=T+96|0;g=Xi[e+60>>2]|0;R=f+28|0;l=Xi[R>>2]|0;e:do{if(!l){l=PE(g,i,1)|0;if((l|0)>=0){Xi[r>>2]=l;l=0}}else{A=g+3516|0;Xi[A>>2]=0;l=xd(g,Xi[f+24>>2]|0,l)|0;if((l|0)>=0){l=Xi[e+704>>2]|0;i:do{if(!l){E=e+688|0;if((Xi[E>>2]&1|0?Xi[g+6112>>2]|0:0)?Wi[g+8064>>0]|0:0){w=Xi[Xi[A>>2]>>2]|0;f=Wg(Xi[w+80>>2]|0)|0;r:do{if(!f)l=-22;else{k=(Xi[f+32>>2]|0)>8&1;b=g+4|0;l=Xi[b>>2]|0;Xi[t>>2]=Xi[g+6080>>2];nA(l,48,122464,t);l=Xi[b>>2]|0;f:do{if(Xi[w>>2]|0){h=f+5|0;s=f+6|0;u=g+8012|0;o=w;a=0;while(1){f=Xi[l+132>>2]|0;l=Xi[l+136>>2]|0;if((a+-1|0)>>>0<2){l=l>>qi[s>>0];f=f>>qi[h>>0]}nM(Xi[u>>2]|0);if((l|0)>0){t=w+32+(a<<2)|0;f=f<<k;n=0;do{N=(Xi[o>>2]|0)+(Zi(Xi[t>>2]|0,n)|0)|0;tM(Xi[u>>2]|0,N,f);n=n+1|0}while((n|0)!=(l|0))}sM(Xi[u>>2]|0,m);N=(kR(m,g+8016+(a<<4)|0,16)|0)==0;l=Xi[b>>2]|0;if(!N)break;Xi[c>>2]=a;nA(l,48,122507,c);l=Xi[b>>2]|0;f=0;do{Xi[d>>2]=qi[m+f>>0];nA(l,48,122527,d);f=f+1|0}while((f|0)!=16);nA(Xi[b>>2]|0,48,122532,v);a=a+1|0;o=w+(a<<2)|0;l=Xi[b>>2]|0;if(!(Xi[o>>2]|0))break f}Xi[_>>2]=a;nA(l,16,122535,_);l=Xi[b>>2]|0;f=0;do{Xi[p>>2]=qi[m+f>>0];nA(l,16,122527,p);f=f+1|0}while((f|0)!=16);nA(Xi[b>>2]|0,16,122571,F);l=Xi[b>>2]|0;f=0;do{Xi[y>>2]=qi[g+8016+(a<<4)+f>>0];nA(l,16,122527,y);f=f+1|0}while((f|0)!=16);nA(Xi[b>>2]|0,16,122576,O);l=-1094995529;break r}}while(0);nA(l,48,122576,S);break i}}while(0);if(Xi[E>>2]&8|0){ME(g,Xi[A>>2]|0,-1);break e}}}else if(Xi[A>>2]|0?(a=Yz[Xi[l+36>>2]&15](e)|0,(a|0)<0):0){nA(e,16,122417,n);ME(g,Xi[A>>2]|0,-1);l=a;break e}}while(0);Wi[g+8064>>0]=0;l=g+6112|0;if(Xi[l>>2]|0){Xi[M>>2]=Xi[g+6080>>2];nA(e,48,122578,M);Xi[l>>2]=0}l=Xi[g+164>>2]|0;if(Xi[l+248>>2]|0){fM(i,l);Xi[r>>2]=1}l=Xi[R>>2]|0}}}while(0);Ue=T;return l|0}function fv(e){e=e|0;e=Xi[e+60>>2]|0;NE(e);Xi[e+6100>>2]=2147483647;Xi[e+6092>>2]=1;return}function lv(e,i){e=e|0;i=i|0;var r=0;do{if(Wi[(Xi[e+1416>>2]|0)+43>>0]|0){r=Xi[(Xi[e+1412>>2]|0)+13384>>2]|0;i=(i|0)%(r|0)|0;if((i|0)!=2?!((r|0)==2&(i|0)==0):0)break;qT(Xi[e+152>>2]|0,Xi[e+136>>2]|0,199)|0}}while(0);return}function av(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=e+1416|0;r=Xi[l>>2]|0;do{if((Xi[(Xi[r+1668>>2]|0)+(Xi[e+3496>>2]<<2)>>2]|0)==(i|0)){nv(e);f=e+2429|0;if(Wi[f>>0]|0){r=Xi[l>>2]|0;if(Wi[r+42>>0]|0?(r=Xi[r+1676>>2]|0,(Xi[r+(i<<2)>>2]|0)!=(Xi[r+(i+-1<<2)>>2]|0)):0)n=5}else n=5;if((n|0)==5)tv(e);if(((Wi[e+2428>>0]|0)==0?Wi[(Xi[l>>2]|0)+43>>0]|0:0)?(a=Xi[(Xi[e+1412>>2]|0)+13384>>2]|0,((i|0)%(a|0)|0|0)==0):0){if((a|0)==1){tv(e);break}if((Wi[f>>0]|0)==1)qT(Xi[e+136>>2]|0,Xi[e+152>>2]|0,199)|0}}else{if((Wi[r+42>>0]|0)!=0?(n=Xi[r+1676>>2]|0,(Xi[n+(i<<2)>>2]|0)!=(Xi[n+(i+-1<<2)>>2]|0)):0){if((Wi[e+141>>0]|0)==1)ov(Xi[e+136>>2]|0);else nv(e);tv(e);r=Xi[l>>2]|0}if(Wi[r+43>>0]|0?(f=e+1412|0,((i|0)%(Xi[(Xi[f>>2]|0)+13384>>2]|0)|0|0)==0):0){r=e+136|0;sv((Xi[r>>2]|0)+224|0)|0;if((Wi[e+141>>0]|0)==1)ov(Xi[r>>2]|0);else nv(e);if((Xi[(Xi[f>>2]|0)+13384>>2]|0)==1){tv(e);break}else{qT(Xi[r>>2]|0,Xi[e+152>>2]|0,199)|0;break}}}}while(0);return}function nv(e){e=e|0;var i=0,r=0,f=0,l=0;f=Xi[e+136>>2]|0;l=f+212|0;i=Xi[f+220>>2]|0;e=(Xi[l>>2]|0)+1|0;e=i>>>0>e>>>0?e:i;r=0-e&7;if(r){e=r+e|0;e=i>>>0>e>>>0?e:i}Xi[l>>2]=e;AN(f+224|0,(Xi[f+204>>2]|0)+((e|0)/8|0)|0,(7-e+(Xi[f+216>>2]|0)|0)/8|0)|0;return}function tv(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;r=Xi[e+2420>>2]|0;f=2-r|0;f=(r|0)==2|(Wi[e+3056>>0]|0)==0?f:f^3;r=e+3108|0;e=e+136|0;i=0;do{l=qi[122606+(f*199|0)+i>>0]|0;n=Wi[r>>0]|0;a=n<<24>>24;l=((l<<3&120)+-16+((Zi(n<<24>>24<0?0:(a|0)>51?51:a,((l>>>4)*5|0)+-45|0)|0)>>4)<<1)+-127|0;l=l>>31^l;Wi[(Xi[e>>2]|0)+i>>0]=(l|0)>124?l&1|124:l;i=i+1|0}while((i|0)!=199);Wi[(Xi[e>>2]|0)+199>>0]=0;Wi[(Xi[e>>2]|0)+200>>0]=0;Wi[(Xi[e>>2]|0)+201>>0]=0;Wi[(Xi[e>>2]|0)+202>>0]=0;return}function ov(e){e=e|0;var i=0,r=0,f=0;i=e+224|0;r=Xi[e+240>>2]|0;f=Xi[i>>2]|0;r=(f&1|0)==0?r:r+-1|0;r=(f&511|0)==0?r:r+-1|0;e=(Xi[e+244>>2]|0)-r|0;if((e|0)>=0)AN(i,r,e)|0;return}function sv(e){e=e|0;var i=0,r=0,f=0,l=0;i=e+4|0;r=Xi[i>>2]|0;f=r+-2|0;Xi[i>>2]=f;l=Xi[e>>2]|0;if((l|0)<(f<<17|0)){r=(r+-258|0)>>>31;Xi[i>>2]=f<<r;l=l<<r;Xi[e>>2]=l;if(!(l&65535)){uv(e);i=0}else i=0}else i=(Xi[e+16>>2]|0)-(Xi[e+12>>2]|0)|0;return i|0}function uv(e){e=e|0;var i=0,r=0;i=e+16|0;r=Xi[i>>2]|0;Xi[e>>2]=(Xi[e>>2]|0)+-65535+((qi[r+1>>0]|0)<<1|(qi[r>>0]|0)<<9);if(r>>>0<(Xi[e+20>>2]|0)>>>0)Xi[i>>2]=r+2;return}function hv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e)|0}function wv(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;n=qi[i>>0]|0;a=e+4|0;t=Xi[a>>2]|0;o=qi[93532+((t<<1&384)+(n|512))>>0]|0;t=t-o|0;s=t<<17;u=Xi[e>>2]|0;r=s-u>>31;Xi[e>>2]=u-(r&s);Xi[a>>2]=(r&o-t)+t;n=r^n;Wi[i>>0]=Wi[93532+(n+1152)>>0]|0;i=n&1;n=Xi[a>>2]|0;r=qi[93532+n>>0]|0;Xi[a>>2]=n<<r;r=Xi[e>>2]<<r;Xi[e>>2]=r;if((r&65535|0)==0?(f=e+16|0,l=Xi[f>>2]|0,Xi[e>>2]=(((qi[l+1>>0]|0)<<1|(qi[l>>0]|0)<<9)+-65535<<7-(qi[93532+((r+-1^r)>>>15)>>0]|0))+r,l>>>0<(Xi[e+20>>2]|0)>>>0):0)Xi[f>>2]=l+2;return i|0}function kv(e){e=e|0;var i=0;e=e+136|0;i=Xi[e>>2]|0;if(!(wv(i+224|0,i+1|0)|0))e=0;else{e=(bv((Xi[e>>2]|0)+224|0)|0)==0;e=e?1:2}return e|0}function bv(e){e=e|0;var i=0,r=0;i=Xi[e>>2]<<1;Xi[e>>2]=i;if(!(i&65534)){uv(e);i=Xi[e>>2]|0}r=Xi[e+4>>2]<<17;if((i|0)<(r|0))i=0;else{Xi[e>>2]=i-r;i=1}return i|0}function cv(e){e=e|0;var i=0;i=e+136|0;e=(bv((Xi[i>>2]|0)+224|0)|0)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;return bv((Xi[i>>2]|0)+224|0)|0|e|0}function dv(e){e=e|0;var i=0,r=0;r=Xi[(Xi[e+1412>>2]|0)+52>>2]|0;r=(r|0)>10?31:(1<<r+-5)+-1|0;i=e+136|0;e:do{if((r|0)>0){e=0;do{if(!(bv((Xi[i>>2]|0)+224|0)|0))break e;e=e+1|0}while((e|0)<(r|0))}else e=0}while(0);return e|0}function vv(e){e=e|0;return bv((Xi[e+136>>2]|0)+224|0)|0}function Ev(e){e=e|0;var i=0;i=e+136|0;e=(bv((Xi[i>>2]|0)+224|0)|0)<<1;return bv((Xi[i>>2]|0)+224|0)|0|e|0}function Sv(e){e=e|0;return sv((Xi[e+136>>2]|0)+224|0)|0}function _v(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+5|0)|0}function mv(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;n=Xi[e+1412>>2]|0;a=Xi[n+13396>>2]|0;n=(1<<Xi[n+13336>>2])+-1|0;t=Xi[e+136>>2]|0;if((Wi[t+308>>0]|0)!=0|(n&i|0)!=0){i=f+-1+(Zi(a,l)|0)|0;i=(Wi[(Xi[e+7948>>2]|0)+i>>0]|0)!=0&1}else i=0;if((n&r|0)!=0|(Wi[t+309>>0]|0)!=0){l=(Zi(a,l+-1|0)|0)+f|0;i=((Wi[(Xi[e+7948>>2]|0)+l>>0]|0)!=0&1)+i|0}return wv(t+224|0,t+(i+6)|0)|0}function pv(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;n=Ue;Ue=Ue+16|0;f=n;a=e+136|0;l=Xi[a>>2]|0;do{if(wv(l+224|0,l+9|0)|0){l=Xi[a>>2]|0;if(wv(l+224|0,l+10|0)|0){l=Xi[a>>2]|0;if(wv(l+224|0,l+10|0)|0){l=Xi[a>>2]|0;if(wv(l+224|0,l+10|0)|0){l=Xi[a>>2]|0;if(!(wv(l+224|0,l+10|0)|0)){r=4;i=0}else{r=0;i=0;while(1){if(!(bv((Xi[a>>2]|0)+224|0)|0)){l=7;break}i=(1<<r)+i|0;r=r+1|0;if((r|0)>=31){l=5;break}}if((l|0)==5){if((r|0)==31){r=Xi[e+4>>2]|0;Xi[f>>2]=31;nA(r,16,123203,f);r=31}}else if((l|0)==7)if(!r){r=5;break}do{r=r+-1|0;i=((bv((Xi[a>>2]|0)+224|0)|0)<<r)+i|0}while((r|0)!=0);r=5}}else{r=3;i=0}}else{r=2;i=0}}else{r=1;i=0}}else{r=0;i=0}}while(0);Ue=n;return i+r|0}function Fv(e){e=e|0;return bv((Xi[e+136>>2]|0)+224|0)|0}function yv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+176|0)|0}function Ov(e){e=e|0;var i=0,r=0,f=0;r=Wi[(Xi[e+1416>>2]|0)+1633>>0]|0;r=(r&255)<5?5:r&255;i=e+136|0;e:do{if(!r)e=0;else{e=0;do{f=Xi[i>>2]|0;if(!(wv(f+224|0,f+177|0)|0))break e;e=e+1|0}while((e|0)<(r|0))}}while(0);return e|0}function Av(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+12|0)|0}function gv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;l=Xi[e+1412>>2]|0;t=(1<<Xi[l+13336>>2])+-1|0;n=Xi[l+13320>>2]|0;a=r>>n;n=f>>n;s=Xi[e+136>>2]|0;if((Wi[s+308>>0]|0)!=0|(t&r|0)!=0){o=a+-1+(Zi(Xi[l+13396>>2]|0,n)|0)|0;o=qi[(Xi[e+7952>>2]|0)+o>>0]|0}else o=0;if((t&f|0)!=0|(Wi[s+309>>0]|0)!=0){r=(Zi(Xi[l+13396>>2]|0,n+-1|0)|0)+a|0;r=qi[(Xi[e+7952>>2]|0)+r>>0]|0}else r=0;return wv(s+224|0,s+(((o|0)>(i|0)|2)+((r|0)>(i|0)&1))|0)|0}function Mv(e,i){e=e|0;i=i|0;var r=0,f=0;r=e+136|0;f=Xi[r>>2]|0;do{if(!(wv(f+224|0,f+13|0)|0)){e=Xi[e+1412>>2]|0;if((Xi[e+13320>>2]|0)==(i|0)){e=Xi[r>>2]|0;if((Xi[e+31244>>2]|0)==1){e=3;break}if(wv(e+224|0,e+14|0)|0){e=1;break}if((i|0)==3){e=2;break}e=Xi[r>>2]|0;e=(wv(e+224|0,e+15|0)|0)==0;e=e?3:2;break}f=(Wi[e+13196>>0]|0)==0;e=Xi[r>>2]|0;e=(wv(e+224|0,e+14|0)|0)!=0;if(f){e=e?1:2;break}i=Xi[r>>2]|0;i=(wv(i+224|0,i+16|0)|0)!=0;if(e){if(i){e=1;break}e=(bv((Xi[r>>2]|0)+224|0)|0)==0;e=e?4:5;break}else{if(i){e=2;break}e=(bv((Xi[r>>2]|0)+224|0)|0)==0;e=e?6:7;break}}else e=0}while(0);return e|0}function Rv(e){e=e|0;return sv((Xi[e+136>>2]|0)+224|0)|0}function Tv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+17|0)|0}function Nv(e){e=e|0;e=e+136|0;if(!(bv((Xi[e>>2]|0)+224|0)|0))e=0;else{e=(bv((Xi[e>>2]|0)+224|0)|0)==0;e=e?1:2}return e|0}function Dv(e){e=e|0;var i=0;i=e+136|0;e=(bv((Xi[i>>2]|0)+224|0)|0)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;e=(bv((Xi[i>>2]|0)+224|0)|0|e)<<1;return bv((Xi[i>>2]|0)+224|0)|0|e|0}function Cv(e){e=e|0;var i=0;e=e+136|0;i=Xi[e>>2]|0;if(!(wv(i+224|0,i+18|0)|0))e=4;else{i=(bv((Xi[e>>2]|0)+224|0)|0)<<1;e=bv((Xi[e>>2]|0)+224|0)|0|i}return e|0}function Pv(e){e=e|0;var i=0,r=0;r=e+136|0;i=Xi[r>>2]|0;i=wv(i+224|0,i+21|0)|0;e:do{if(i){e=e+3088|0;if(i>>>0<((Xi[e>>2]|0)+-1|0)>>>0)do{if(!(bv((Xi[r>>2]|0)+224|0)|0))break e;i=i+1|0}while(i>>>0<((Xi[e>>2]|0)+-1|0)>>>0)}else i=0}while(0);return i|0}function Lv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+20|0)|0}function Iv(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;e=e+136|0;f=Xi[e>>2]|0;l=f+224|0;if((r+i|0)!=12)if(!(wv(l,f+((Xi[f+31232>>2]|0)+22)|0)|0)){e=Xi[e>>2]|0;e=wv(e+224|0,e+26|0)|0}else e=2;else e=wv(l,f+26|0)|0;return e|0}function Hv(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;l=i+-1|0;f=(l|0)>2;r=f?2:l;e=e+136|0;e:do{if((r|0)>0){i=0;do{a=Xi[e>>2]|0;if(!(wv(a+224|0,a+(i+27)|0)|0))break;i=i+1|0}while((i|0)<(r|0));if(!((i|0)!=2|f^1)){i=2;do{if(!(bv((Xi[e>>2]|0)+224|0)|0))break e;i=i+1|0}while((i|0)<(l|0))}}else i=0}while(0);return i|0}function Bv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+35|0)|0}function Uv(e){e=e|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+36|0)|0}function xv(e,i){e=e|0;i=i|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+(42-i)|0)|0}function zv(e,i){e=e|0;i=i|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+(i+42)|0)|0}function Vv(e,i){e=e|0;i=i|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+((i|0)==0|40)|0)|0}function Yv(e,i){e=e|0;i=i|0;var r=0;r=e+136|0;e=i<<2;i=Xi[r>>2]|0;if(wv(i+224|0,i+(e+166)|0)|0){i=Xi[r>>2]|0;if(wv(i+224|0,i+(e+167)|0)|0){i=Xi[r>>2]|0;if(!(wv(i+224|0,i+(e+168)|0)|0))e=2;else{i=Xi[r>>2]|0;i=(wv(i+224|0,i+(e+169)|0)|0)==0;return(i?3:4)|0}}else e=1}else e=0;return e|0}function jv(e,i){e=e|0;i=i|0;e=Xi[e+136>>2]|0;return wv(e+224|0,e+(i+174)|0)|0}function Kv(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0,ge=0,Me=0,Re=0,Te=0,Ne=0,De=0,Ce=0,Pe=0,Le=0;Le=Ue;Ue=Ue+112|0;ge=Le+8|0;Ae=Le;Oe=Le+40|0;ye=Le+24|0;Fe=Le+16|0;me=e+136|0;Ne=Xi[me>>2]|0;Ce=Xi[e+160>>2]|0;Pe=Xi[Ce+32+(a<<2)>>2]|0;Me=e+1412|0;De=Xi[Me>>2]|0;c=Zi(r>>Xi[De+13436+(a<<2)>>2],Pe)|0;De=(Xi[Ce+(a<<2)>>2]|0)+(c+(i>>Xi[De+13424+(a<<2)>>2]<<Xi[De+56>>2]))|0;c=(a|0)!=0;Ce=Ne+320|0;Te=c?Ne+11680|0:Ce;i=Oe;r=i+64|0;do{Wi[i>>0]=0;i=i+1|0}while((i|0)<(r|0));b=1<<f;Ee=(a|0)==0;pe=Xi[(Ee?Ne+288|0:Ne+292|0)>>2]|0;Re=b<<f;jT(Te|0,0,Re<<1|0)|0;Se=Ne+31254|0;if(!(Wi[Se>>0]|0)){r=Wi[Ne+272>>0]|0;s=e+1416|0;ve=Xi[s>>2]|0;if((Wi[ve+21>>0]|0)!=0?(qi[ve+1629>>0]|0)>=(f|0):0){h=Xi[me>>2]|0;h=wv(h+224|0,h+(c&1|46)|0)|0}else h=0;if(Ee){i=Xi[Me>>2]|0;t=i;i=(Xi[i+13448>>2]|0)+r|0}else{i=Xi[s>>2]|0;if((a|0)==1)i=(Xi[e+3068>>2]|0)+(Xi[i+28>>2]|0)+(Wi[Ne+302>>0]|0)|0;else i=(Xi[e+3072>>2]|0)+(Xi[i+32>>2]|0)+(Wi[Ne+303>>0]|0)|0;i=i+r|0;r=Xi[Me>>2]|0;n=Xi[r+13448>>2]|0;ve=0-n|0;i=(i|0)<(ve|0)?ve:(i|0)>57?57:i;do{if((Xi[r+4>>2]|0)==1){if((i|0)>=30)if((i|0)>43){i=i+-6|0;break}else{i=Xi[88696+(i+-30<<2)>>2]|0;break}}else i=(i|0)>51?51:i}while(0);t=r;i=n+i|0}n=(Xi[t+52>>2]|0)+f|0;u=n+-5|0;n=1<<n+-6;o=qi[123299+(qi[123223+i>>0]|0)>>0]<<qi[123305+i>>0];if((Wi[t+634>>0]|0)!=0?!((f|0)>2&(h|0)!=0):0){i=Xi[s>>2]|0;i=(Wi[i+68>>0]|0)==0?t+635|0:i+69|0;r=((Xi[Ne+31244>>2]|0)!=1?3:0)+a|0;t=i+((f+-2|0)*384|0)+(r<<6)|0;if((f|0)>3){d=Wi[i+1536+((f+-4|0)*6|0)+r>>0]|0;be=h}else{d=16;be=h}}else{d=16;t=0;be=h}}else{n=0;d=0;o=0;t=0;u=0;be=0}de=Ne+31244|0;do{if((Xi[de>>2]|0)==0?(Xi[(Xi[Me>>2]|0)+13364>>2]|0)!=0:0){if((be|0)==0?(Wi[Se>>0]|0)==0:0){ve=0;ce=0;break}r=Xi[me>>2]|0;i=c&1;r=wv(r+224|0,r+(i|48)|0)|0;if(r){ve=Xi[me>>2]|0;ve=wv(ve+224|0,ve+(i|50)|0)|0;ce=r}else{ve=0;ce=0}}else{ve=0;ce=0}}while(0);i=f<<1;w=i+-1|0;if(Ee){s=(f*3|0)+-6+(f+-1>>2)|0;k=f+1>>2}else{s=15;k=f+-2|0}if((i|0)>1){r=s+52|0;i=0;while(1){ke=Xi[me>>2]|0;if(!(wv(ke+224|0,ke+(r+(i>>k))|0)|0)){h=i;break}i=i+1|0;if((i|0)>=(w|0)){h=i;break}}r=s+70|0;i=0;while(1){ke=Xi[me>>2]|0;if(!(wv(ke+224|0,ke+(r+(i>>k))|0)|0)){k=i;break}i=i+1|0;if((i|0)>=(w|0)){k=i;break}}if((h|0)>3){s=(h>>1)+-1|0;i=bv((Xi[me>>2]|0)+224|0)|0;if((s|0)>1){r=1;do{i=bv((Xi[me>>2]|0)+224|0)|0|i<<1;r=r+1|0}while((r|0)!=(s|0))}h=i+((h&1|2)<<s)|0}if((k|0)>3){s=(k>>1)+-1|0;i=bv((Xi[me>>2]|0)+224|0)|0;if((s|0)>1){r=1;do{i=bv((Xi[me>>2]|0)+224|0)|0|i<<1;r=r+1|0}while((r|0)!=(s|0))}k=i+((k&1|2)<<s)|0}}else{k=0;h=0}e:do{if((l|0)==2){s=k;w=h;r=h>>2;i=k>>2;_e=53}else{i=h>>2;r=k>>2;switch(l|0){case 0:break;case 1:{he=i;ue=r;we=h;ke=k;s=qi[123465+(k<<3)+h>>0]|0;ne=123561;te=123529;oe=123565;se=123545;break e}default:{s=h;w=k;_e=53;break e}}s=qi[(h&3)+(123381+((k&3)<<2))>>0]|0;switch(f|0){case 2:{he=i;ue=r;we=h;ke=k;ne=237325;te=123649;oe=237325;se=123665;break e}case 3:{he=i;ue=r;we=h;ke=k;s=(qi[123397+(r<<1)+i>>0]<<4)+s|0;ne=123565;te=123649;oe=123561;se=123665;break e}case 4:{he=i;ue=r;we=h;ke=k;s=(qi[123381+(r<<2)+i>>0]<<4)+s|0;ne=123649;te=123649;oe=123665;se=123665;break e}default:{he=i;ue=r;we=h;ke=k;s=(qi[123401+(r<<3)+i>>0]<<4)+s|0;ne=123681;te=123649;oe=123745;se=123665;break e}}}}while(0);if((_e|0)==53){he=i;ue=r;we=s;ke=w;s=qi[123465+(s<<3)+w>>0]|0;ne=123565;te=123545;oe=123561;se=123529}ae=s+1|0;fe=s>>4;if((fe|0)>-1){le=(1<<f+-2)+-1|0;ie=(a|0)>0;re=ie?90:88;ee=b+-1>>2;J=c?27:0;Z=(f|0)==2;Q=J+3|0;$=(f|0)==3;x=(l|0)==0?9:15;B=Ee?0:27;z=(be|0)==0;H=Ee?42:43;I=Ee?40:41;V=(be|0)!=0;X=(pe&-17|0)==10|(ce|0)!=0;U=(ce|0)==0;Y=e+1416|0;j=e+4|0;K=((o|0)<0)<<31>>31;W=((n|0)<0)<<31>>31;q=(f|0)>2&V;G=(f|0)<4;N=d&255;D=(Ee&1)<<1;C=D|1;T=J+($?9:12)|0;s=1;L=fe;r=0;i=16;while(1){w=L<<4;a=Wi[ne+L>>0]|0;v=a&255;c=Wi[oe+L>>0]|0;E=c&255;P=(L|0)>0;if((L|0)<(fe|0)&P){if((v|0)<(le|0))h=qi[Oe+(v+1<<3)+E>>0]|0;else h=0;if((E|0)<(le|0))h=(qi[E+1+(Oe+(v<<3))>>0]|0)+h|0;k=Xi[me>>2]|0;k=(wv(k+224|0,k+(((h|0)>1?1:h)+re)|0)|0)&255;Wi[Oe+(v<<3)+E>>0]=k;l=1}else{if((v|0)==(he|0)&(E|0)==(ue|0))h=1;else h=(c|a)<<24>>24==0;k=h&1;Wi[Oe+(v<<3)+E>>0]=k;l=0}h=ae-w|0;if((L|0)==(fe|0)){Wi[ye>>0]=h+255;d=h+-2|0;w=1}else{d=15;w=0}if((v|0)<(ee|0))h=(Wi[Oe+(v+1<<3)+E>>0]|0)!=0&1;else h=0;if((E|0)<(ee|0))h=((Wi[E+1+(Oe+(v<<3))>>0]|0)!=0&1)<<1|h;do{if((d|0)>-1&k<<24>>24!=0){if(!(Xi[(Xi[Me>>2]|0)+13356>>2]|0))if(Z){k=123569;c=J}else _e=76;else if(z){b=(Wi[Se>>0]|0)!=0;if(b|Z){k=b?123633:123569;c=b?I:J}else _e=76}else{k=123633;c=I}do{if((_e|0)==76){_e=0;k=123569+((h<<4)+16)|0;if(Ee){h=(c|a)<<24>>24==0?J:Q;if($){c=h+x|0;break}else{c=h+21|0;break}}else c=T}}while(0);if((d|0)>0){a=c+92|0;h=l;b=d;while(1){R=Xi[me>>2]|0;if(wv(R+224|0,R+(a+(qi[k+((qi[se+b>>0]<<2)+(qi[te+b>>0]|0))>>0]|0))|0)|0){Wi[ye+(w&255)>>0]=b;h=0;w=w+1<<24>>24}if((b|0)>1)b=b+-1|0;else break}}else h=l;if(h|0){Wi[ye+(w&255)>>0]=0;w=w+1<<24>>24;break}if(Xi[(Xi[Me>>2]|0)+13356>>2]|0)if(z?(Wi[Se>>0]|0)==0:0)_e=89;else h=H;else _e=89;if((_e|0)==89){_e=0;h=(L|0)==0?B:c+2|0}R=Xi[me>>2]|0;if((wv(R+224|0,R+(h+92)|0)|0)==1){Wi[ye+(w&255)>>0]=0;w=w+1<<24>>24}}}while(0);R=w&255;e:do{if(w<<24>>24){h=Ee&P?2:0;if(!(Xi[(Xi[Me>>2]|0)+13372>>2]|0))d=0;else{if(z?(Wi[Se>>0]|0)==0:0)r=D;else r=C;d=(qi[Ne+199+r>>0]|0)>>>2&255}c=(L|0)!=(fe|0)&(s|0)==0&1|h;l=Wi[ye>>0]|0;a=l&255;if(!(w<<24>>24)){M=-1;s=1}else{w=c<<2;k=(R^-8)>>>0>4294967287?R:8;h=-1;s=1;b=0;do{M=s+w|0;g=Xi[me>>2]|0;M=(wv(g+224|0,g+((ie?M+16|0:M)+136)|0)|0)&255;Wi[Fe+b>>0]=M;if(!(M<<24>>24))s=((s+-1|0)>>>0<2&1)+s|0;else{h=(h|0)==-1?b:h;s=0}b=b+1|0}while((b|0)!=(k|0));M=h}w=R+-1|0;g=Wi[ye+w>>0]|0;h=g&255;i:do{if(!(Wi[Se>>0]|0)){do{if((Xi[de>>2]|0)==1){if(!(V&(Xi[(Xi[Me>>2]|0)+13360>>2]|0)!=0)){_e=109;break}if(X){h=0;break i}}else _e=109}while(0);if((_e|0)==109?(_e=0,!U):0){h=0;break}h=(a-h|0)>3&1}else h=0}while(0);if((M|0)!=-1){O=Xi[me>>2]|0;O=wv(O+224|0,O+((ie?c|4:c)|160)|0)|0;A=Fe+M|0;Wi[A>>0]=(qi[A>>0]|0)+O}A=(h|0)!=0;if(A&(Wi[(Xi[Y>>2]|0)+4>>0]|0)!=0){if(!((w&255)<<24>>24))h=0;else{w=w&255;k=0;h=0;do{h=bv((Xi[me>>2]|0)+224|0)|0|h<<1;k=k+1|0}while((k|0)!=(w|0))}h=h<<17-R}else{w=0;h=0;do{h=bv((Xi[me>>2]|0)+224|0)|0|h<<1;w=w+1|0}while((w|0)!=(R|0));h=h<<16-R}O=v<<2;F=E<<2;y=Ne+199+r|0;S=l;p=0;v=0;E=0;while(1){m=S&255;_=(qi[te+m>>0]|0)+O|0;m=(qi[se+m>>0]|0)+F|0;do{if((p|0)<8){l=(qi[Fe+p>>0]|0)+1|0;c=(p|0)==(M|0);if((l|0)==((c?3:2)|0)&0==((c?0:0)|0))w=0;else{w=l;k=0;c=v;break}while(1){if(!(bv((Xi[me>>2]|0)+224|0)|0)){_e=127;break}w=w+1|0;if((w|0)>=31){_e=125;break}}do{if((_e|0)==125){_e=0;if((w|0)!=31){_e=131;break}c=Xi[j>>2]|0;Xi[Ae>>2]=31;nA(c,16,123203,Ae);c=0}else if((_e|0)==127){_e=0;if((w|0)>=3){_e=131;break}if((d|0)>0){b=0;k=0;do{k=bv((Xi[me>>2]|0)+224|0)|0|k<<1;b=b+1|0}while((b|0)!=(d|0))}else k=0;c=k+(w<<d)|0}}while(0);if((_e|0)==131){_e=0;a=w+-3|0;if((a+d|0)>0){k=d+-3+w|0;b=0;w=0;do{w=bv((Xi[me>>2]|0)+224|0)|0|w<<1;b=b+1|0}while((b|0)!=(k|0))}else w=0;c=w+((1<<a)+2<<d)|0}w=WT(c|0,((c|0)<0)<<31>>31|0,l|0,0)|0;k=Ie;l=3<<d;a=((l|0)<0)<<31>>31;b=Xi[(Xi[Me>>2]|0)+13372>>2]|0;if((k|0)>(a|0)|(k|0)==(a|0)&w>>>0>l>>>0)d=(d|0)>3&(b|0)==0?4:d+1|0;if((v|0)!=0|(b|0)==0){c=v;break}b=Wi[y>>0]|0;a=(b&255)>>>2&255;if((c|0)>=(3<<a|0)){Wi[y>>0]=b+1<<24>>24;c=1;break}if(b<<24>>24==0|(c<<1|0)>=(1<<a|0)){c=1;break}Wi[y>>0]=b+-1<<24>>24;c=1}else{w=0;while(1){if(!(bv((Xi[me>>2]|0)+224|0)|0)){_e=146;break}w=w+1|0;if((w|0)>=31){_e=144;break}}do{if((_e|0)==144){_e=0;if((w|0)!=31){_e=150;break}c=Xi[j>>2]|0;Xi[ge>>2]=31;nA(c,16,123203,ge);c=0}else if((_e|0)==146){_e=0;if((w|0)>=3){_e=150;break}if((d|0)>0){b=0;k=0;do{k=bv((Xi[me>>2]|0)+224|0)|0|k<<1;b=b+1|0}while((b|0)!=(d|0))}else k=0;c=k+(w<<d)|0}}while(0);if((_e|0)==150){_e=0;a=w+-3|0;if((a+d|0)>0){k=d+-3+w|0;b=0;w=0;do{w=bv((Xi[me>>2]|0)+224|0)|0|w<<1;b=b+1|0}while((b|0)!=(k|0))}else w=0;c=w+((1<<a)+2<<d)|0}w=c+1|0;k=((w|0)<0)<<31>>31;b=Xi[(Xi[Me>>2]|0)+13372>>2]|0;if((c|0)>=(3<<d|0))d=(d|0)>3&(b|0)==0?4:d+1|0;if((v|0)!=0|(b|0)==0){c=v;break}b=Wi[y>>0]|0;a=(b&255)>>>2&255;if((c|0)>=(3<<a|0)){Wi[y>>0]=b+1<<24>>24;c=1;break}if(b<<24>>24==0|(c<<1|0)>=(1<<a|0)){c=1;break}Wi[y>>0]=b+-1<<24>>24;c=1}}while(0);if(A&(Wi[(Xi[Y>>2]|0)+4>>0]|0)!=0){a=WT(w|0,k|0,E|0,0)|0;S=(a&1|0)==0?1:S<<24>>24!=g<<24>>24;E=YT(0,0,w|0,k|0)|0;w=S?w:E;k=S?k:Ie}else a=E;S=(h&32768|0)==0;b=YT(0,0,w|0,k|0)|0;b=S?w:b;k=S?k:Ie;h=h<<1&131070;w=b&65535;do{if(!(Wi[Se>>0]|0)){do{if(!((Wi[(Xi[Me>>2]|0)+634>>0]|0)==0|q)){if(!(G|(m|_|0)!=0)){i=N;break}switch(f|0){case 3:{i=(m<<3)+_|0;break}case 4:{i=(m>>>1<<3)+(_>>>1)|0;break}case 5:{i=(m>>>2<<3)+(_>>>2)|0;break}default:i=(m<<2)+_|0}i=qi[t+i>>0]|0}}while(0);w=rN(b|0,k|0,o|0,K|0)|0;w=rN(w|0,Ie|0,i|0,((i|0)<0)<<31>>31|0)|0;w=WT(w|0,Ie|0,n|0,W|0)|0;w=GT(w|0,Ie|0,u|0)|0;k=Ie;if((k|0)<0){w=(w&-32768|0)==-32768&(k&268435455|0)==268435455?w&65535:-32768;break}else{w=k>>>0>0|(k|0)==0&w>>>0>32767?32767:w&65535;break}}}while(0);Gi[Te+((m<<f)+_<<1)>>1]=w;w=p+1|0;if((w|0)==(R|0))break e;S=Wi[ye+w>>0]|0;p=w;v=c;E=a}}}while(0);if(P)L=L+-1|0;else break}}do{if(!(Wi[Se>>0]|0)){if(be|0){if(((f|0)==2?(Xi[(Xi[Me>>2]|0)+13352>>2]|0)!=0:0)?(Xi[de>>2]|0)==1:0){i=0;do{Oe=Te+(15-i<<1)|0;Ae=Gi[Oe>>1]|0;ge=Te+(i<<1)|0;Gi[Oe>>1]=Gi[ge>>1]|0;Gi[ge>>1]=Ae;i=i+1|0}while((i|0)!=8)}r=f&65535;zz[Xi[e+6192>>2]&255](Te,r);i=(ce|0)!=0;if(!i){if(!(Xi[(Xi[Me>>2]|0)+13360>>2]|0))break;if(!((pe&-17|0)==10&(Xi[de>>2]|0)==1))break}aV[Xi[e+6196>>2]&1023](Te,r,i?ve:(pe|0)==26&1);break}if((f|0)==2&(Ee&(Xi[de>>2]|0)==1)){xz[Xi[e+6200>>2]&31](Te);break}r=(we|0)>(ke|0)?we:ke;if(!r){xz[Xi[e+6220+(f+-2<<2)>>2]&31](Te);break}i=ke+4+we|0;do{if((r|0)>=4){if((r|0)<8){i=(i|0)<8?i:8;break}if((r|0)<12)i=(i|0)<24?i:24}else i=(i|0)<4?i:4}while(0);zz[Xi[e+6204+(f+-2<<2)>>2]&255](Te,i)}else{i=Xi[(Xi[Me>>2]|0)+13360>>2]|0;if((ce|0)==0?!((pe&-17|0)==10&(i|0)!=0):0)break;aV[Xi[e+6196>>2]&1023](Te,f&65535,i|0?(pe|0)==26&1:ve)}}while(0);if(Wi[Ne+304>>0]|0?(Re|0)>0:0){i=Xi[Ne+284>>2]|0;r=0;do{Ne=Te+(r<<1)|0;Gi[Ne>>1]=((Zi(Gi[Ce+(r<<1)>>1]|0,i)|0)>>>3)+(Ji[Ne>>1]|0);r=r+1|0}while((r|0)!=(Re|0))}aV[Xi[e+6176+(f+-2<<2)>>2]&1023](De,Te,Pe);Ue=Le;return}function Wv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+16|0;o=h+8|0;r=h;s=e+136|0;u=Xi[s>>2]|0;f=wv(u+224|0,u+31|0)|0;i=Xi[s>>2]|0;i=wv(i+224|0,i+31|0)|0;if(!f)f=0;else{t=Xi[s>>2]|0;f=(wv(t+224|0,t+34|0)|0)+f|0}if(!i)t=0;else{t=Xi[s>>2]|0;t=(wv(t+224|0,t+34|0)|0)+i|0}switch(f|0){case 2:{f=1;i=2;while(1){if(!(bv((Xi[s>>2]|0)+224|0)|0)){n=10;break}i=(1<<f)+i|0;f=f+1|0;if((f|0)>=31){n=8;break}}do{if((n|0)==8)if((f|0)==31){f=Xi[e+4>>2]|0;Xi[r>>2]=31;nA(f,16,123203,r);f=0;break}else{r=(Xi[s>>2]|0)+224|0;n=12;break}else if((n|0)==10){l=Xi[s>>2]|0;r=l+224|0;if(!f)n=13;else n=12}}while(0);if((n|0)==12)while(1){f=f+-1|0;i=((bv(r)|0)<<f)+i|0;l=Xi[s>>2]|0;r=l+224|0;if(!f){n=13;break}else n=12}if((n|0)==13){a=l+224|0;f=Xi[a>>2]<<1;Xi[a>>2]=f;if(!(f&65534)){uv(r);f=Xi[a>>2]|0}l=Xi[l+228>>2]<<17;n=f-l|0;f=n>>31;Xi[a>>2]=(f&l)+n;f=(f^0-i)-f&65535}Gi[u+31268>>1]=f;break}case 1:{i=Xi[s>>2]|0;r=i+224|0;f=Xi[r>>2]<<1;Xi[r>>2]=f;if(!(f&65534)){uv(r);f=Xi[r>>2]|0}l=Xi[i+228>>2]<<17;a=f-l|0;n=a>>31;Xi[r>>2]=(n&l)+a;Gi[u+31268>>1]=(n^65535)-n;break}case 0:{Gi[u+31268>>1]=0;break}default:{}}switch(t|0){case 2:{f=1;i=2;while(1){if(!(bv((Xi[s>>2]|0)+224|0)|0)){l=f;n=26;break}i=(1<<f)+i|0;f=f+1|0;if((f|0)>=31){n=24;break}}do{if((n|0)==24)if((f|0)==31){f=Xi[e+4>>2]|0;Xi[o>>2]=31;nA(f,16,123203,o);f=0;break}else{l=f;f=(Xi[s>>2]|0)+224|0;n=28;break}else if((n|0)==26){r=Xi[s>>2]|0;f=r+224|0;if(!l){a=f;n=29}else n=28}}while(0);if((n|0)==28)while(1){l=l+-1|0;i=((bv(f)|0)<<l)+i|0;r=Xi[s>>2]|0;f=r+224|0;if(!l){a=f;n=29;break}else n=28}if((n|0)==29){l=r+224|0;f=Xi[l>>2]<<1;Xi[l>>2]=f;if(!(f&65534)){uv(a);f=Xi[l>>2]|0}e=Xi[r+228>>2]<<17;s=f-e|0;f=s>>31;Xi[l>>2]=(f&e)+s;f=(f^0-i)-f&65535}Gi[u+31270>>1]=f;break}case 1:{i=Xi[s>>2]|0;r=i+224|0;f=Xi[r>>2]<<1;Xi[r>>2]=f;if(!(f&65534)){uv(r);f=Xi[r>>2]|0}o=Xi[i+228>>2]<<17;e=f-o|0;s=e>>31;Xi[r>>2]=(s&o)+e;Gi[u+31270>>1]=(s^65535)-s;break}case 0:{Gi[u+31270>>1]=0;break}default:{}}Ue=h;return}function Gv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Xi[e+136>>2]|0;u=Xi[e+1412>>2]|0;a=Xi[u+13336>>2]|0;s=(1<<a)+-1|0;a=-1<<a-(Xi[(Xi[e+1416>>2]|0)+24>>2]|0);l=a&i;a=a&r;n=Xi[u+13396>>2]|0;o=Xi[u+13320>>2]|0;t=l>>o;o=a>>o;f=h+203|0;if((Wi[f>>0]|0)!=0|(l|a|0)==0){Wi[f>>0]=(Wi[h+300>>0]|0)==0&1;f=Wi[e+3108>>0]|0}else f=Xi[h+276>>2]|0;if((s&i|0)!=0&(l&s|0)!=0){l=t+-1+(Zi(o,n)|0)|0;l=Wi[(Xi[e+7932>>2]|0)+l>>0]|0}else l=f;if((s&r|0)!=0&(a&s|0)!=0){f=(Zi(o+-1|0,n)|0)+t|0;f=Wi[(Xi[e+7932>>2]|0)+f>>0]|0}f=l+1+f>>1;l=Xi[h+280>>2]|0;if(l){r=Xi[u+13448>>2]|0;u=l+52+f+(r<<1)|0;f=u+((u|0)>0?0:-52-r+1|0)|0;f=((f|0)%(r+52|0)|0)-r+u-f|0}Wi[h+272>>0]=f;return}function Xv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;_=Xi[e+136>>2]|0;O=e+3516|0;o=Xi[O>>2]|0;M=Xi[o+16>>2]|0;m=e+1412|0;t=Xi[m>>2]|0;R=Xi[t+13340>>2]|0;p=Xi[t+13328>>2]|0;g=Xi[t+13412>>2]|0;F=Xi[t+13404>>2]|0;S=Zi(g,r>>R)|0;y=i>>R;A=(Wi[M+((S+y|0)*12|0)+10>>0]|0)==0;n=(r|0)>0&(r&7|0)==0;do{if(n){if(((Wi[e+3058>>0]|0)==0?Xi[_+31308>>2]&4|0:0)?((r|0)%(1<<Xi[t+13336>>2]|0)|0|0)==0:0)break;if((Wi[(Xi[e+1416>>2]|0)+53>>0]|0)==0?(a=Xi[_+31308>>2]|0,(a&8|0)!=0):0){if(!((r|0)%(1<<Xi[t+13336>>2]|0)|0))break}else{if(!n)break;a=Xi[_+31308>>2]|0}if(!(a&4)){a=r+-1|0;E=Xi[o+20>>2]|0}else{E=r+-1|0;a=E;E=RE(e,o,i,E)|0}d=1<<f;if((f|0)!=31){v=Zi(g,a>>R)|0;s=Zi(F,a>>p)|0;u=e+7960|0;h=Zi(F,r>>p)|0;w=e+6104|0;k=e+7936|0;c=0;do{b=c+i|0;N=b>>R;o=b>>p;T=N+v|0;a=M+(T*12|0)|0;N=N+S|0;n=M+(N*12|0)|0;D=Xi[u>>2]|0;t=Wi[D+(o+s)>>0]|0;o=Wi[D+(o+h)>>0]|0;if((Wi[M+(N*12|0)+10>>0]|0)!=0?(Wi[M+(T*12|0)+10>>0]|0)!=0:0)if(!((o|t)<<24>>24))a=qv(e,n,a,E)|0;else a=1;else a=2;D=(Zi(Xi[w>>2]|0,r)|0)+b>>2;Wi[(Xi[k>>2]|0)+D>>0]=a;c=c+4|0}while((c|0)<(d|0))}}}while(0);a=(i|0)>0&(i&7|0)==0;do{if(a){if(((Wi[e+3058>>0]|0)==0?Xi[_+31308>>2]&1|0:0)?((i|0)%(1<<Xi[(Xi[m>>2]|0)+13336>>2]|0)|0|0)==0:0)break;if((Wi[(Xi[e+1416>>2]|0)+53>>0]|0)==0?(l=Xi[_+31308>>2]|0,(l&2|0)!=0):0){if(!((i|0)%(1<<Xi[(Xi[m>>2]|0)+13336>>2]|0)|0))break}else{if(!a)break;l=Xi[_+31308>>2]|0}a=Xi[O>>2]|0;if(!(l&1)){l=i+-1|0;v=Xi[a+20>>2]|0}else{v=i+-1|0;l=v;v=RE(e,a,v,r)|0}d=l>>R;o=l>>p;s=i>>p;u=1<<f;if((f|0)!=31){h=e+7960|0;w=e+6104|0;k=e+7940|0;c=0;do{b=c+r|0;N=Zi(b>>R,g)|0;D=N+d|0;l=M+(D*12|0)|0;N=N+y|0;a=M+(N*12|0)|0;t=Zi(b>>p,F)|0;T=Xi[h>>2]|0;n=Wi[T+(t+o)>>0]|0;t=Wi[T+(t+s)>>0]|0;if((Wi[M+(N*12|0)+10>>0]|0)!=0?(Wi[M+(D*12|0)+10>>0]|0)!=0:0)if(!((t|n)<<24>>24))l=qv(e,a,l,v)|0;else l=1;else l=2;D=(Zi(Xi[w>>2]|0,b)|0)+i>>2;Wi[(Xi[k>>2]|0)+D>>0]=l;c=c+4|0}while((c|0)<(u|0))}}}while(0);if(!((R|0)>=(f|0)|A)){w=Xi[(Xi[O>>2]|0)+20>>2]|0;k=1<<f;b=(k|0)>8;if(b){l=(f|0)==31;a=e+6104|0;n=e+7936|0;h=8;do{t=h+r|0;if(!l){o=Zi(t+-1>>R,g)|0;s=Zi(t>>R,g)|0;u=0;do{D=u+i|0;N=D>>R;N=(qv(e,M+((N+s|0)*12|0)|0,M+((N+o|0)*12|0)|0,w)|0)&255;D=(Zi(Xi[a>>2]|0,t)|0)+D>>2;Wi[(Xi[n>>2]|0)+D>>0]=N;u=u+4|0}while((u|0)<(k|0))}h=h+8|0}while((h|0)<(k|0))}if((f|0)!=31){l=e+6104|0;a=e+7940|0;s=0;do{n=s+r|0;if(b){t=Zi(n>>R,g)|0;o=8;do{D=o+i|0;N=(qv(e,M+(((D>>R)+t|0)*12|0)|0,M+(((D+-1>>R)+t|0)*12|0)|0,w)|0)&255;D=(Zi(Xi[l>>2]|0,n)|0)+D>>2;Wi[(Xi[a>>2]|0)+D>>0]=N;o=o+8|0}while((o|0)<(k|0))}s=s+4|0}while((s|0)<(k|0))}}return}function qv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0;a=Wi[i+10>>0]|0;t=Wi[r+10>>0]|0;l=t<<24>>24==3;do{if(a<<24>>24==3)if(l){e=Xi[(Xi[e+3516>>2]|0)+20>>2]|0;a=Xi[e+64+(Wi[i+8>>0]<<2)>>2]|0;n=Xi[f+64+(Wi[r+8>>0]<<2)>>2]|0;if((a|0)==(n|0)){if((a|0)==(Xi[e+260+(Wi[i+9>>0]<<2)>>2]|0)?(a|0)==(Xi[f+260+(Wi[r+9>>0]<<2)>>2]|0):0){l=Gi[r>>1]|0;e=Gi[i>>1]|0;f=l-e|0;if(!((((((f|0)>-1?f:0-f|0)|0)<=3?(f=(Gi[r+2>>1]|0)-(Gi[i+2>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0)?(f=(Gi[r+4>>1]|0)-(Gi[i+4>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0)?(f=(Gi[r+6>>1]|0)-(Gi[i+6>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0)){f=(Gi[r+4>>1]|0)-e|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}f=(Gi[r+6>>1]|0)-(Gi[i+2>>1]|0)|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}f=l-(Gi[i+4>>1]|0)|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}r=(Gi[r+2>>1]|0)-(Gi[i+6>>1]|0)|0;if((((r|0)>-1?r:0-r|0)|0)>3){l=1;break}}l=0;break}l=Xi[f+260+(Wi[r+9>>0]<<2)>>2]|0;if((l|0)==(Xi[e+260+(Wi[i+9>>0]<<2)>>2]|0)){f=(Gi[r>>1]|0)-(Gi[i>>1]|0)|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}f=(Gi[r+2>>1]|0)-(Gi[i+2>>1]|0)|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}f=(Gi[r+4>>1]|0)-(Gi[i+4>>1]|0)|0;if((((f|0)>-1?f:0-f|0)|0)>3){l=1;break}r=(Gi[r+6>>1]|0)-(Gi[i+6>>1]|0)|0;return(((r|0)>-1?r:0-r|0)|0)>3|0}}else l=Xi[f+260+(Wi[r+9>>0]<<2)>>2]|0;if(((((l|0)==(a|0)?(n|0)==(Xi[e+260+(Wi[i+9>>0]<<2)>>2]|0):0)?(f=(Gi[r+4>>1]|0)-(Gi[i>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0)?(f=(Gi[r+6>>1]|0)-(Gi[i+2>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0)?(f=(Gi[r>>1]|0)-(Gi[i+4>>1]|0)|0,(((f|0)>-1?f:0-f|0)|0)<=3):0){l=(Gi[r+2>>1]|0)-(Gi[i+6>>1]|0)|0;l=(((l|0)>-1?l:0-l|0)|0)>3&1}else l=1}else l=1;else if(!l){l=Xi[(Xi[e+3516>>2]|0)+20>>2]|0;if(!(a&1)){o=i+4|0;e=i+6|0;i=l+260+(Wi[i+9>>0]<<2)|0}else{o=i;e=i+2|0;i=l+64+(Wi[i+8>>0]<<2)|0}n=Gi[e>>1]|0;if(!(t&1)){a=r+4|0;l=r+6|0;e=f+260+(Wi[r+9>>0]<<2)|0}else{a=r;l=r+2|0;e=f+64+(Wi[r+8>>0]<<2)|0}l=Gi[l>>1]|0;if((Xi[i>>2]|0)==(Xi[e>>2]|0)?(r=(Gi[o>>1]|0)-(Gi[a>>1]|0)|0,(((r|0)>-1?r:0-r|0)|0)<=3):0){l=(n<<16>>16)-(l<<16>>16)|0;l=(((l|0)>-1?l:0-l|0)|0)>3&1}else l=1}else l=1}while(0);return l|0}function Jv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;J=Ue;Ue=Ue+32|0;W=J+8|0;H=J;G=J+18|0;X=J+16|0;V=e+1412|0;l=Xi[V>>2]|0;o=Xi[l+13376>>2]|0;q=(o-f|0)<=(i|0);if((Xi[(Xi[e+4>>2]|0)+836>>2]|0)<48){Gi[G>>1]=0;Gi[X>>1]=0;a=Xi[l+13336>>2]|0;t=1<<a;a=(Zi(r>>a,Xi[l+13384>>2]|0)|0)+(i>>a)|0;n=Xi[e+3504>>2]|0;Y=Xi[n+(a<<3)+4>>2]|0;I=Xi[n+(a<<3)>>2]|0;if((Xi[l+68>>2]|0)!=0?(Wi[l+13312>>0]|0)!=0:0)K=1;else K=(Wi[(Xi[e+1416>>2]|0)+40>>0]|0)!=0;j=(i|0)!=0;if(j){B=a+-1|0;L=Xi[n+(B<<3)>>2]|0;B=Xi[n+(B<<3)+4>>2]|0}else{L=0;B=0}z=t+i|0;z=(z|0)>(o|0)?o:z;x=t+r|0;P=Xi[l+13380>>2]|0;x=(x|0)>(P|0)?P:x;P=(z|0)==(o|0)?z:z+-8|0;U=(x|0)>(r|0);if(U){E=j?i:8;S=(E|0)<(z|0);_=j?i+-8|0:0;m=e+6104|0;p=e+7936|0;F=e+7932|0;y=H+4|0;O=e+160|0;A=G+1|0;g=X+1|0;M=e+7900|0;R=e+7884|0;T=e+7940|0;N=e+7904|0;D=e+7888|0;v=(_|0)>=(P|0);l=I;a=Y;C=r;do{if(S){k=C+4|0;b=a+-2&-2;d=E;do{c=Xi[m>>2]|0;n=(Zi(c,C)|0)+d>>2;s=Xi[T>>2]|0;n=Wi[s+n>>0]|0;t=n&255;c=Wi[s+((Zi(c,k)|0)+d>>2)>>0]|0;s=c&255;u=c<<24>>24==0;do{if((c|n)<<24>>24){c=d+-1|0;h=Xi[V>>2]|0;o=Xi[h+13320>>2]|0;w=Zi(C>>o,Xi[h+13396>>2]|0)|0;Z=Xi[F>>2]|0;o=(Wi[Z+(w+(c>>o))>>0]|0)+1+(Wi[Z+(w+(d>>o))>>0]|0)>>1;w=o+l|0;w=qi[123809+((w|0)<0?0:(w|0)>51?51:w)>>0]|0;if(!(n<<24>>24))n=0;else{n=(t<<1)+b+o|0;n=qi[123861+((n|0)<0?0:(n|0)>53?53:n)>>0]|0}Xi[H>>2]=n;if(u)n=0;else{n=(s<<1)+b+o|0;n=qi[123861+((n|0)<0?0:(n|0)>53?53:n)>>0]|0}Xi[y>>2]=n;Z=Xi[O>>2]|0;t=Xi[Z+32>>2]|0;n=Zi(t,C)|0;n=(Xi[Z>>2]|0)+((d<<Xi[h+56>>2])+n)|0;if(K){Wi[G>>0]=Zv(e,c,C)|0;Wi[A>>0]=Zv(e,c,k)|0;Wi[X>>0]=Zv(e,d,C)|0;Wi[g>>0]=Zv(e,d,k)|0;Xz[Xi[N>>2]&127](n,t,w,H,G,X);break}else{Xz[Xi[D>>2]&127](n,t,w,H,G,X);break}}}while(0);d=d+8|0}while((d|0)<(z|0))}if(!(v|(C|0)==0)){c=C+-1|0;b=_;do{Z=Zi(Xi[m>>2]|0,C)|0;s=Xi[p>>2]|0;n=Wi[s+(Z+b>>2)>>0]|0;o=n&255;k=b+4|0;Z=Wi[s+(Z+k>>2)>>0]|0;s=Z&255;u=Z<<24>>24==0;do{if((Z|n)<<24>>24){h=Xi[V>>2]|0;a=Xi[h+13320>>2]|0;t=b>>a;l=Xi[h+13396>>2]|0;Z=(Zi(c>>a,l)|0)+t|0;w=Xi[F>>2]|0;t=(Wi[w+Z>>0]|0)+1+(Wi[w+((Zi(C>>a,l)|0)+t)>>0]|0)>>1;l=(b|0)>=(i|0);a=l?Y:B;l=l?I:L;w=t+l|0;w=qi[123809+((w|0)<0?0:(w|0)>51?51:w)>>0]|0;if(!(n<<24>>24))n=0;else{n=(o<<1)+(a+-2&-2)+t|0;n=qi[123861+((n|0)<0?0:(n|0)>53?53:n)>>0]|0}Xi[H>>2]=n;if(u)n=0;else{n=(s<<1)+(a+-2&-2)+t|0;n=qi[123861+((n|0)<0?0:(n|0)>53?53:n)>>0]|0}Xi[y>>2]=n;Z=Xi[O>>2]|0;t=Xi[Z+32>>2]|0;n=Zi(t,C)|0;n=(Xi[Z>>2]|0)+((b<<Xi[h+56>>2])+n)|0;if(K){Wi[G>>0]=Zv(e,b,c)|0;Wi[A>>0]=Zv(e,k,c)|0;Wi[X>>0]=Zv(e,b,C)|0;Wi[g>>0]=Zv(e,k,C)|0;Xz[Xi[M>>2]&127](n,t,w,H,G,X);break}else{Xz[Xi[R>>2]&127](n,t,w,H,G,X);break}}}while(0);b=b+8|0}while((b|0)<(P|0))}C=C+8|0}while((C|0)<(x|0));l=Xi[V>>2]|0}else a=Y;if(Xi[l+4>>2]|0){O=j?B:Y;A=e+6104|0;g=e+7936|0;M=e+7932|0;R=W+4|0;T=e+160|0;N=G+1|0;D=X+1|0;C=e+7908|0;P=e+7892|0;L=e+7940|0;I=e+7912|0;H=e+7896|0;y=1;do{n=1<<Xi[l+13424+(y<<2)>>2];l=1<<Xi[l+13436+(y<<2)>>2];if(U){S=n<<3;_=j?i:S;m=(_|0)<(z|0);p=l<<3;F=j?i-S|0:0;E=n<<2;v=l<<2;d=r;do{if(m){k=d+v|0;c=_;do{u=Xi[A>>2]|0;l=(Zi(u,d)|0)+c>>2;Z=Xi[L>>2]|0;l=(Wi[Z+l>>0]|0)==2;u=(Wi[Z+((Zi(u,k)|0)+c>>2)>>0]|0)==2;do{if(l|u){b=c+-1|0;w=Xi[V>>2]|0;Z=Xi[w+13320>>2]|0;n=b>>Z;h=Xi[w+13396>>2]|0;t=Zi(d>>Z,h)|0;o=Xi[M>>2]|0;s=c>>Z;h=Zi(k>>Z,h)|0;h=(Wi[o+(h+n)>>0]|0)+1+(Wi[o+(h+s)>>0]|0)>>1;if(l)l=Qv(e,(Wi[o+(t+s)>>0]|0)+1+(Wi[o+(t+n)>>0]|0)>>1,y,a)|0;else l=0;Xi[W>>2]=l;if(u)l=Qv(e,h,y,a)|0;else l=0;Xi[R>>2]=l;Z=Xi[T>>2]|0;n=Xi[Z+32+(y<<2)>>2]|0;l=Zi(n,d>>Xi[w+13436+(y<<2)>>2])|0;l=(Xi[Z+(y<<2)>>2]|0)+((c>>Xi[w+13424+(y<<2)>>2]<<Xi[w+56>>2])+l)|0;if(K){Wi[G>>0]=Zv(e,b,d)|0;Wi[N>>0]=Zv(e,b,k)|0;Wi[X>>0]=Zv(e,c,d)|0;Wi[D>>0]=Zv(e,c,k)|0;Uz[Xi[I>>2]&127](l,n,W,G,X);break}else{Uz[Xi[H>>2]&127](l,n,W,G,X);break}}}while(0);c=c+S|0}while((c|0)<(z|0))}if(d){o=z-((z|0)==(Xi[(Xi[V>>2]|0)+13376>>2]|0)?0:S)|0;if((F|0)<(o|0)){s=d+-1|0;h=F;do{n=Zi(Xi[A>>2]|0,d)|0;Z=Xi[g>>2]|0;u=h+E|0;l=(Wi[Z+(n+h>>2)>>0]|0)==2;n=(Wi[Z+(n+u>>2)>>0]|0)==2;do{if(l|n){if(l){Z=Xi[V>>2]|0;B=Xi[Z+13320>>2]|0;a=h>>B;Z=Xi[Z+13396>>2]|0;b=(Zi(s>>B,Z)|0)+a|0;c=Xi[M>>2]|0;a=(Wi[c+b>>0]|0)+1+(Wi[c+((Zi(d>>B,Z)|0)+a)>>0]|0)>>1}else a=0;if(n){Z=Xi[V>>2]|0;B=Xi[Z+13320>>2]|0;t=u>>B;Z=Xi[Z+13396>>2]|0;b=(Zi(s>>B,Z)|0)+t|0;c=Xi[M>>2]|0;t=(Wi[c+b>>0]|0)+1+(Wi[c+((Zi(d>>B,Z)|0)+t)>>0]|0)>>1}else t=0;if(l)l=Qv(e,a,y,O)|0;else l=0;Xi[W>>2]=l;if(n)l=Qv(e,t,y,Y)|0;else l=0;Xi[R>>2]=l;Z=Xi[V>>2]|0;B=Xi[T>>2]|0;l=Xi[B+32+(y<<2)>>2]|0;a=Zi(l,d>>Xi[Z+13440>>2])|0;a=(Xi[B+(y<<2)>>2]|0)+((h>>Xi[Z+13428>>2]<<Xi[Z+56>>2])+a)|0;if(K){Wi[G>>0]=Zv(e,h,s)|0;Wi[N>>0]=Zv(e,u,s)|0;Wi[X>>0]=Zv(e,h,d)|0;Wi[D>>0]=Zv(e,u,d)|0;Uz[Xi[C>>2]&127](a,l,W,G,X);break}else{Uz[Xi[P>>2]&127](a,l,W,G,X);break}}}while(0);h=h+S|0}while((h|0)<(o|0));a=O}else a=O}d=d+p|0}while((d|0)<(x|0))}y=y+1|0;l=Xi[V>>2]|0}while((y|0)!=3)}}if(!(Wi[l+13197>>0]|0)){if(q&(Wi[e+140>>0]&1)!=0)VO((Xi[e+3516>>2]|0)+4|0,r+-4+f|0,0)}else{l=((Xi[l+13380>>2]|0)-f|0)<=(r|0);a=(r|0)!=0;n=(i|0)!=0;if(n&a)$v(e,i-f|0,r-f|0);if(n&l)$v(e,i-f|0,r);if(a&q?($v(e,i,r-f|0),Wi[e+140>>0]&1):0)VO((Xi[e+3516>>2]|0)+4|0,r,0);if(q&l?($v(e,i,r),Wi[e+140>>0]&1):0)VO((Xi[e+3516>>2]|0)+4|0,f+r|0,0)}Ue=J;return}function Zv(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;f=Xi[e+1412>>2]|0;l=Xi[f+13340>>2]|0;if(((r|i|0)>=0?(a=i>>l,n=r>>l,t=Xi[f+13412>>2]|0,(a|0)<(t|0)):0)?(n|0)<(Xi[f+13416>>2]|0):0){f=(Zi(t,n)|0)+a|0;f=qi[(Xi[e+7964>>2]|0)+f>>0]|0}else f=2;return f|0}function Qv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=Xi[e+1416>>2]|0;r=(Xi[((r|0)==1?l+28|0:l+32|0)>>2]|0)+i|0;r=(r|0)<0?0:(r|0)>57?57:r;do{if((Xi[(Xi[e+1412>>2]|0)+4>>2]|0)==1){if((r|0)>=30)if((r|0)>43){r=r+-6|0;break}else{r=Xi[88696+(r+-30<<2)>>2]|0;break}}else r=(r|0)<0?0:(r|0)>51?51:r}while(0);l=f+2+r|0;return qi[123861+((l|0)<0?0:(l|0)>53?53:l)>>0]|0|0}function $v(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0;fe=Ue;Ue=Ue+48|0;Z=fe+24|0;ie=fe+42|0;Q=fe+40|0;J=fe+16|0;$=fe+8|0;ee=fe;z=Xi[e+136>>2]|0;W=e+1412|0;m=Xi[W>>2]|0;q=Xi[m+13336>>2]|0;X=i>>q;q=r>>q;S=m+13384|0;V=(Zi(q,Xi[S>>2]|0)|0)+X|0;Y=e+1416|0;s=Xi[Y>>2]|0;u=s+1668|0;h=Xi[(Xi[u>>2]|0)+(V<<2)>>2]|0;j=e+3500|0;K=Xi[j>>2]|0;G=K+(V*148|0)|0;Gi[ie>>1]=0;Gi[Q>>1]=0;Xi[J>>2]=0;f=(Zi(Xi[S>>2]|0,q)|0)+X|0;if(!(Wi[s+42>>0]|0))w=0;else w=(Wi[s+53>>0]|0)==0;d=(Wi[(Xi[e+7968>>2]|0)+f>>0]|0)==0;_=d|w;f=(X|0)==0;v=f&1;Xi[Z>>2]=v;n=(q|0)==0;b=n&1;B=Z+4|0;Xi[B>>2]=b;a=(X|0)==((Xi[S>>2]|0)+-1|0);c=a&1;U=Z+8|0;Xi[U>>2]=c;o=(q|0)==((Xi[m+13388>>2]|0)+-1|0);E=o&1;x=Z+12|0;Xi[x>>2]=E;if(_){if(f)k=0;else{if(w){f=Xi[s+1676>>2]|0;f=(Xi[f+(h<<2)>>2]|0)!=(Xi[f+(Xi[(Xi[u>>2]|0)+(V+-1<<2)>>2]<<2)>>2]|0)}else f=0;l=f&1;if(d?(H=Zi(Xi[S>>2]|0,q)|0,I=Xi[e+7944>>2]|0,(Xi[I+(H+X<<2)>>2]|0)!=(Xi[I+(X+-1+H<<2)>>2]|0)):0)f=1;Wi[ie>>0]=f&1;k=l}if(a)t=0;else{if(w){f=Xi[s+1676>>2]|0;f=(Xi[f+(h<<2)>>2]|0)!=(Xi[f+(Xi[(Xi[u>>2]|0)+(V+1<<2)>>2]<<2)>>2]|0)}else f=0;l=f&1;if(d?(H=Zi(Xi[S>>2]|0,q)|0,I=Xi[e+7944>>2]|0,(Xi[I+(H+X<<2)>>2]|0)!=(Xi[I+(X+1+H<<2)>>2]|0)):0)f=1;Wi[ie+1>>0]=f&1;t=l}if(n)l=0;else{if(w){f=Xi[s+1676>>2]|0;f=(Xi[f+(h<<2)>>2]|0)!=(Xi[f+(Xi[(Xi[u>>2]|0)+(V-(Xi[S>>2]|0)<<2)>>2]<<2)>>2]|0)}else f=0;l=f&1;if(d?(H=Xi[S>>2]|0,L=(Zi(H,q)|0)+X|0,I=Xi[e+7944>>2]|0,(Xi[I+(L<<2)>>2]|0)!=(Xi[I+((Zi(H,q+-1|0)|0)+X<<2)>>2]|0)):0)f=1;Wi[Q>>0]=f&1}if(o)f=0;else{if(w){a=Xi[s+1676>>2]|0;a=(Xi[a+(h<<2)>>2]|0)!=(Xi[a+(Xi[(Xi[u>>2]|0)+((Xi[S>>2]|0)+V<<2)>>2]<<2)>>2]|0)}else a=0;f=a&1;if(d?(H=Xi[S>>2]|0,L=(Zi(H,q)|0)+X|0,I=Xi[e+7944>>2]|0,(Xi[I+(L<<2)>>2]|0)!=(Xi[I+((Zi(H,q+1|0)|0)+X<<2)>>2]|0)):0)a=1;Wi[Q+1>>0]=a&1}if(!(b|v)){if(d){H=Xi[S>>2]|0;L=(Zi(H,q)|0)+X|0;I=Xi[e+7944>>2]|0;if(k<<24>>24==0?(Xi[I+(L<<2)>>2]|0)==(Xi[I+(X+-1+(Zi(H,q+-1|0)|0)<<2)>>2]|0):0)re=36;else a=1}else if(!(k<<24>>24))re=36;else a=1;if((re|0)==36)a=l;Wi[J>>0]=a}if(!(c|b)){if(d){H=Xi[S>>2]|0;L=(Zi(H,q)|0)+X|0;I=Xi[e+7944>>2]|0;if(t<<24>>24==0?(Xi[I+(L<<2)>>2]|0)==(Xi[I+(X+1+(Zi(H,q+-1|0)|0)<<2)>>2]|0):0)re=42;else l=1}else if(!(t<<24>>24))re=42;else l=1;Wi[J+1>>0]=l}if(!(E|c)){if(d){H=Xi[S>>2]|0;L=(Zi(H,q)|0)+X|0;I=Xi[e+7944>>2]|0;if(t<<24>>24==0?(Xi[I+(L<<2)>>2]|0)==(Xi[I+(X+1+(Zi(H,q+1|0)|0)<<2)>>2]|0):0)re=48;else l=1}else if(!(t<<24>>24))re=48;else l=1;if((re|0)==48)l=f;Wi[J+2>>0]=l}if(!(E|v)){if(d){H=Xi[S>>2]|0;L=(Zi(H,q)|0)+X|0;I=Xi[e+7944>>2]|0;if(k<<24>>24==0?(Xi[I+(L<<2)>>2]|0)==(Xi[I+(X+-1+(Zi(H,q+1|0)|0)<<2)>>2]|0):0)re=54;else f=1}else if(!(k<<24>>24))re=54;else f=1;Wi[J+3>>0]=f}}O=e+160|0;A=z+320|0;g=z+512|0;C=q<<1;M=C+-1|0;R=$+4|0;T=q+-1|0;N=X+1|0;D=X+-1|0;C=C+2|0;P=ee+4|0;L=q+1|0;H=X<<1;I=H+-1|0;H=H+2|0;y=e+6276+((_&1)<<2)|0;f=m;F=0;do{o=Xi[f+13424+(F<<2)>>2]|0;w=i>>o;h=Xi[f+13436+(F<<2)>>2]|0;k=r>>h;d=Xi[O>>2]|0;E=Xi[d+32+(F<<2)>>2]|0;S=1<<Xi[f+13336>>2];v=S>>o;S=S>>h;o=Xi[f+13376>>2]>>o;_=o-w|0;v=(v|0)>(_|0)?_:v;h=Xi[f+13380>>2]>>h;_=h-k|0;S=(S|0)>(_|0)?_:S;_=qi[123915+((v+7>>3)+-1)>>0]|0;c=Zi(E,k)|0;b=Xi[f+56>>2]|0;c=(w<<b)+c|0;d=Xi[d+(F<<2)>>2]|0;m=d+c|0;p=K+(V*148|0)+142+F|0;switch(qi[p>>0]|0){case 1:{eE(e,m,E,w,k,v,S,F,X,q);f=Xi[W>>2]|0;do{if(!(Wi[(Xi[Y>>2]|0)+40>>0]|0)){if(Wi[f+13312>>0]|0?Xi[f+68>>2]|0:0){re=61;break}Gz[Xi[e+6236+(_<<2)>>2]&63](m,m,E,E,K+(V*148|0)+112+(F*10|0)|0,qi[K+(V*148|0)+96+F>>0]|0,v,S)}else re=61}while(0);if((re|0)==61){re=0;iE(A,m,v<<Xi[f+56>>2],S,128,E);Gz[Xi[e+6236+(_<<2)>>2]&63](m,A,E,128,K+(V*148|0)+112+(F*10|0)|0,qi[K+(V*148|0)+96+F>>0]|0,v,S);rE(e,m,A,E,128,i,r,v,S,F)}Wi[p>>0]=3;break}case 2:{s=Xi[Z>>2]|0;u=Xi[U>>2]|0;t=Xi[x>>2]|0;do{if(!(Xi[B>>2]|0)){a=1-s|0;l=a<<b;n=32-l|0;Xi[$>>2]=d+(c-E-l);Xi[R>>2]=(Xi[e+168+(F<<2)>>2]|0)+((Zi(o,M)|0)+w-a<<b);if(!a)l=0;else{l=z+320+n|0;a=D+(Zi(Xi[f+13384>>2]|0,T)|0)|0;a=Xi[$+(((Wi[(Xi[j>>2]|0)+(a*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0;if(!b){Wi[l>>0]=Wi[a>>0]|0;f=Xi[W>>2]|0}else Gi[l>>1]=Gi[a>>1]|0;l=1<<b}a=(Zi(Xi[f+13384>>2]|0,T)|0)+X|0;f=v<<b;qT(l+n+(z+320)|0,(Xi[$+(((Wi[(Xi[j>>2]|0)+(a*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0)+l|0,f|0)|0;if((u|0)!=1){l=l+f|0;a=N+(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,T)|0)|0;f=l+n+(z+320)|0;l=(Xi[$+(((Wi[(Xi[j>>2]|0)+(a*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0)+l|0;if(!b){Wi[f>>0]=Wi[l>>0]|0;break}else{Gi[f>>1]=Gi[l>>1]|0;break}}}}while(0);do{if(!t){t=1-s|0;n=t<<b;a=(S*160|0)+192-n|0;Xi[ee>>2]=d+((Zi(S,E)|0)+c-n);Xi[P>>2]=(Xi[e+168+(F<<2)>>2]|0)+((Zi(o,C)|0)+w-t<<b);if(!t)l=0;else{f=z+320+a|0;l=D+(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,L)|0)|0;l=Xi[ee+(((Wi[(Xi[j>>2]|0)+(l*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0;if(!b)Wi[f>>0]=Wi[l>>0]|0;else Gi[f>>1]=Gi[l>>1]|0;l=1<<b}o=(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,L)|0)+X|0;f=v<<b;qT(l+a+(z+320)|0,(Xi[ee+(((Wi[(Xi[j>>2]|0)+(o*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0)+l|0,f|0)|0;if((u|0)!=1){l=l+f|0;o=N+(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,L)|0)|0;f=l+a+(z+320)|0;l=(Xi[ee+(((Wi[(Xi[j>>2]|0)+(o*148|0)+142+F>>0]|0)==3&1)<<2)>>2]|0)+l|0;if(!b){Wi[f>>0]=Wi[l>>0]|0;break}else{Gi[f>>1]=Gi[l>>1]|0;break}}}}while(0);do{if(!s){s=D+(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,q)|0)|0;if((Wi[(Xi[j>>2]|0)+(s*148|0)+142+F>>0]|0)==3){n=1<<b;f=192-n+(z+320)|0;l=(Xi[e+180+(F<<2)>>2]|0)+((Zi(h,I)|0)+k<<b)|0;a=(S|0)>0;if(!b){if(a)a=0;else{t=0;break}while(1){Wi[f>>0]=Wi[l>>0]|0;a=a+1|0;if((a|0)==(S|0)){t=0;break}else{l=l+n|0;f=f+160|0}}}else{if(a)a=0;else{t=0;break}while(1){Gi[f>>1]=Gi[l>>1]|0;a=a+1|0;if((a|0)==(S|0)){t=0;break}else{l=l+n|0;f=f+160|0}}}}else t=1}else t=0}while(0);do{if(!u){u=N+(Zi(Xi[(Xi[W>>2]|0)+13384>>2]|0,q)|0)|0;if((Wi[(Xi[j>>2]|0)+(u*148|0)+142+F>>0]|0)==3){f=(v<<b)+192+(z+320)|0;l=(Xi[e+180+(F<<2)>>2]|0)+((Zi(h,H)|0)+k<<b)|0;n=1<<b;a=(S|0)>0;if(!b){if(a)a=0;else{f=0;break}while(1){Wi[f>>0]=Wi[l>>0]|0;a=a+1|0;if((a|0)==(S|0)){f=0;break}else{l=l+n|0;f=f+160|0}}}else{if(a)a=0;else{f=0;break}while(1){Gi[f>>1]=Gi[l>>1]|0;a=a+1|0;if((a|0)==(S|0)){f=0;break}else{l=l+n|0;f=f+160|0}}}}else f=1}else f=0}while(0);h=t<<b;iE(192-h+(z+320)|0,d+(c-h)|0,t+v+f<<b,S,160,E);eE(e,m,E,w,k,v,S,F,X,q);Zz[Xi[e+6256+(_<<2)>>2]&63](m,g,E,K+(V*148|0)+112+(F*10|0)|0,Xi[K+(V*148|0)+100+(F<<2)>>2]|0,v,S);fV[Xi[y>>2]&15](m,g,E,160,G,Z,v,S,F,ie,Q,J);rE(e,m,g,E,160,i,r,v,S,F);Wi[p>>0]=3;break}default:{}}F=F+1|0;f=Xi[W>>2]|0}while((F|0)<((Xi[f+4>>2]|0?3:1)|0));Ue=fe;return}function eE(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0,h=0,w=0,k=0,b=0;w=Xi[e+1412>>2]|0;k=Xi[w+56>>2]|0;u=Xi[w+13376>>2]>>Xi[w+13424+(t<<2)>>2];w=Xi[w+13380>>2]>>Xi[w+13436+(t<<2)>>2];h=e+168+(t<<2)|0;b=s<<1;s=a<<k;qT((Xi[h>>2]|0)+((Zi(u,b)|0)+f<<k)|0,i|0,s|0)|0;qT((Xi[h>>2]|0)+((Zi(u,b|1)|0)+f<<k)|0,i+(Zi(n+-1|0,r)|0)|0,s|0)|0;s=e+180+(t<<2)|0;t=Xi[s>>2]|0;o=o<<1;e=t+((Zi(w,o)|0)+l<<k)|0;b=1<<k;u=(k|0)==0;h=(n|0)>0;if(u){if(h){f=i;t=e;e=0;while(1){Wi[t>>0]=Wi[f>>0]|0;e=e+1|0;if((e|0)==(n|0))break;else{f=f+r|0;t=t+b|0}}t=Xi[s>>2]|0}}else if(h){s=i;f=0;while(1){Gi[e>>1]=Gi[s>>1]|0;f=f+1|0;if((f|0)==(n|0))break;else{s=s+r|0;e=e+b|0}}}t=t+((Zi(w,o|1)|0)+l<<k)|0;f=i+(a+-1<<k)|0;if(u){if(h){e=0;while(1){Wi[t>>0]=Wi[f>>0]|0;e=e+1|0;if((e|0)==(n|0))break;else{f=f+r|0;t=t+b|0}}}}else if(h){e=0;while(1){Gi[t>>1]=Gi[f>>1]|0;e=e+1|0;if((e|0)==(n|0))break;else{f=f+r|0;t=t+b|0}}}return}function iE(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0;n=(f|0)>0;if(!((i|e|l|a)&15)){if(n){s=(r|0)>0;n=i;t=0;while(1){if(s){o=0;do{u=n+o|0;h=Xi[u+4>>2]|0;i=e+o|0;Xi[i>>2]=Xi[u>>2];Xi[i+4>>2]=h;i=o|8;h=n+i|0;u=Xi[h+4>>2]|0;i=e+i|0;Xi[i>>2]=Xi[h>>2];Xi[i+4>>2]=u;o=o+16|0}while((o|0)<(r|0))}t=t+1|0;if((t|0)==(f|0))break;else{e=e+l|0;n=n+a|0}}}}else if(n){s=(r|0)>0;n=e;t=0;while(1){if(s){o=0;do{u=i+o|0;w=u;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=n+o|0;e=h;Wi[e>>0]=w;Wi[e+1>>0]=w>>8;Wi[e+2>>0]=w>>16;Wi[e+3>>0]=w>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24;o=o+8|0}while((o|0)<(r|0))}t=t+1|0;if((t|0)==(f|0))break;else{i=i+a|0;n=n+l|0}}}return}function rE(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;F=e+1412|0;u=Xi[F>>2]|0;if(!(Wi[(Xi[e+1416>>2]|0)+40>>0]|0)){if(Wi[u+13312>>0]|0?Xi[u+68>>2]|0:0)h=4}else h=4;if((h|0)==4?(_=Xi[u+13340>>2]|0,w=1<<_,d=Xi[u+13424+(s<<2)>>2]|0,v=Xi[u+13436+(s<<2)>>2]|0,E=a>>_,k=n>>_,S=t+a>>_,_=o+n>>_,m=w>>d<<Xi[u+56>>2],(k|0)<(_|0)):0){c=(E|0)<(S|0);b=e+7964|0;e=w>>v;w=(e|0)>0;h=k;do{if(c){t=E;do{u=Xi[F>>2]|0;k=(Zi(Xi[u+13412>>2]|0,h)|0)+t|0;if(Wi[(Xi[b>>2]|0)+k>>0]|0?(y=Xi[u+13340>>2]|0,p=(h<<y)-n>>v,y=(t<<y)-a>>d<<Xi[u+56>>2],w):0){u=r+((Zi(p,l)|0)+y)|0;s=0;o=i+((Zi(p,f)|0)+y)|0;while(1){qT(o|0,u|0,m|0)|0;s=s+1|0;if((s|0)==(e|0))break;else{u=u+l|0;o=o+f|0}}}t=t+1|0}while((t|0)!=(S|0))}h=h+1|0}while((h|0)!=(_|0))}return}function fE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0;t=Xi[e+1412>>2]|0;n=((Xi[t+13376>>2]|0)-f|0)<=(i|0);t=((Xi[t+13380>>2]|0)-f|0)<=(r|0);l=(r|0)!=0;a=(i|0)!=0;if(a&l)Jv(e,i-f|0,r-f|0,f);if(l&n)Jv(e,i,r-f|0,f);if(a&t)Jv(e,i-f|0,r,f);return}function lE(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=Xi[e+136>>2]|0;o=1<<Xi[(Xi[e+1412>>2]|0)+13336>>2];w=o+-1|0;s=w&i;w=w&r;t=(w|0)!=0;a=(Wi[h+309>>0]|0)!=0|t;e=a&1;Xi[h+31292>>2]=e;n=(Wi[h+308>>0]|0)!=0|(s|0)!=0;u=n&1;Xi[h+31288>>2]=u;if(!(s|w))a=qi[h+311>>0]|0;else a=n&a&1;Xi[h+31296>>2]=a;if((s+f|0)==(o|0))e=(Wi[h+310>>0]|0)!=0&(t^1)&1;Xi[h+31304>>2]=e;if(!e)e=0;else e=(f+i|0)<(Xi[h+312>>2]|0);Xi[h+31300>>2]=e&1;Xi[h+31284>>2]=(l+r|0)<(Xi[h+316>>2]|0)?u:0;return}function aE(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0,ge=0,Me=0,Re=0,Te=0;Te=Ue;Ue=Ue+80|0;ye=Te+4|0;Oe=Te;s=1<<a;h=Te+8+3&-4;Re=h;be=e+1416|0;u=e+136|0;if((a|0)==3?(Xi[(Xi[be>>2]|0)+1620>>2]|0)>2:0){me=Xi[u>>2]|0;Fe=Xi[me+31236>>2]|0;me=Xi[me+31240>>2]|0;pe=s;_e=s;n=0;i=1}else{Fe=i;me=r;pe=f;_e=l;i=0}lE(e,Fe,me,pe,_e);u=Xi[u>>2]|0;ve=Xi[e+3516>>2]|0;Ae=Xi[ve+20>>2]|0;ve=Xi[ve+16>>2]|0;U=e+1412|0;r=Xi[U>>2]|0;x=Xi[r+13412>>2]|0;y=Xi[u+31284>>2]|0;s=Xi[u+31288>>2]|0;z=Xi[u+31296>>2]|0;w=Xi[u+31292>>2]|0;b=Xi[u+31304>>2]|0;V=Fe+-1|0;O=me+_e|0;Y=O+-1|0;c=Fe+pe|0;le=c+-1|0;j=me+-1|0;Me=e+2420|0;a=Xi[e+3044>>2]|0;if((Xi[Me>>2]|0)==1)ge=a;else{ge=Xi[e+3048>>2]|0;ge=a>>>0>ge>>>0?ge:a}n=(i|0)==0&(n|0)==1;if(n){a=Xi[u+31248>>2]|0;switch(a|0){case 7:case 6:case 2:{r=a;i=0;a=0;k=14;break}default:k=7}}else k=7;do{if((k|0)==7){a=Xi[(Xi[be>>2]|0)+1620>>2]&255;if((V>>a|0)==(Fe>>a|0))a=(Y>>a|0)==(me>>a|0);else a=0;if(!((s|0)==0|a)){a=Xi[r+13340>>2]|0;a=(Zi(Y>>a,x)|0)+(V>>a)|0;s=(Wi[ve+(a*12|0)+10>>0]|0)!=0;i=s&1;if(s){s=ve+(a*12|0)|0;Xi[h>>2]=Xi[s>>2];Xi[h+4>>2]=Xi[s+4>>2];Xi[h+8>>2]=Xi[s+8>>2];if(!t)break;else a=1}else a=0}else{i=0;a=0}if(n){r=Xi[u+31248>>2]|0;k=14}else{s=i;k=15}}}while(0);if((k|0)==14)switch(r|0){case 5:case 4:case 1:{s=i;n=0;k=30;break}default:{s=i;k=15}}e:do{if((k|0)==15){i=Xi[(Xi[be>>2]|0)+1620>>2]&255;if((le>>i|0)==(Fe>>i|0))i=(j>>i|0)==(me>>i|0);else i=0;if(!((w|0)==0|i)){n=Xi[(Xi[U>>2]|0)+13340>>2]|0;i=(Zi(j>>n,x)|0)+(le>>n)|0;r=Wi[ve+(i*12|0)+10>>0]|0;w=r<<24>>24!=0;h=w&1;if(w){u=ve+(i*12|0)|0;i:do{if(s|0?(w=(Zi(Y>>n,x)|0)+(V>>n)|0,d=ve+(w*12|0)|0,d=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24,v=ve+(w*12|0)+4|0,v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24,S=ve+(w*12|0)+8|0,S=qi[S>>0]|qi[S+1>>0]<<8,E=S&255,S=(S&65535)>>>8&255,_=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24,m=ve+(i*12|0)+4|0,m=qi[m>>0]|qi[m+1>>0]<<8|qi[m+2>>0]<<16|qi[m+3>>0]<<24,F=ve+(i*12|0)+8|0,F=qi[F>>0]|qi[F+1>>0]<<8,p=F&255,F=(F&65535)>>>8&255,r<<24>>24==(Wi[ve+(w*12|0)+10>>0]|0)):0){switch(r<<24>>24){case 3:{if(p<<24>>24==E<<24>>24)i=(m|0)==(v|0)&((_|0)==(d|0)?F<<24>>24==S<<24>>24:0);else i=0;i=i&1;break}case 1:{i=((_|0)==(d|0)?p<<24>>24==E<<24>>24:0)&1;break}case 2:{i=((m|0)==(v|0)?F<<24>>24==S<<24>>24:0)&1;break}default:break i}if(i|0){n=h;k=30;break e}}}while(0);F=Re+(a*12|0)|0;Xi[F>>2]=Xi[u>>2];Xi[F+4>>2]=Xi[u+4>>2];Xi[F+8>>2]=Xi[u+8>>2];if((a|0)!=(t|0)){n=h;a=a+1|0;k=30}}else{n=h;k=30}}else{n=0;k=30}}}while(0);e:do{if((k|0)==30){i:do{if(((b|0)!=0?(A=Xi[U>>2]|0,g=Xi[A+13340>>2]|0,M=Zi(j>>g,x)|0,R=M+(c>>g)|0,T=Wi[ve+(R*12|0)+10>>0]|0,T<<24>>24!=0):0)?(c|0)<(Xi[A+13376>>2]|0):0){F=Xi[A+13336>>2]|0;if(((j>>F|0)>=(me>>F|0)?(c>>F|0)>=(Fe>>F|0):0)?(m=Xi[A+13328>>2]|0,p=Xi[A+13420>>2]|0,_=p+2|0,A=(Zi(me>>m&p,_)|0)+(Fe>>m&p)|0,F=Xi[(Xi[be>>2]|0)+1684>>2]|0,(Xi[F+((Zi(j>>m&p,_)|0)+(c>>m&p)<<2)>>2]|0)>(Xi[F+(A<<2)>>2]|0)):0)break;A=Xi[(Xi[be>>2]|0)+1620>>2]&255;if((c>>A|0)==(Fe>>A|0)?(j>>A|0)==(me>>A|0):0)break;r=ve+(R*12|0)|0;r:do{if(n|0?(M=M+(le>>g)|0,N=ve+(M*12|0)|0,N=qi[N>>0]|qi[N+1>>0]<<8|qi[N+2>>0]<<16|qi[N+3>>0]<<24,D=ve+(M*12|0)+4|0,D=qi[D>>0]|qi[D+1>>0]<<8|qi[D+2>>0]<<16|qi[D+3>>0]<<24,P=ve+(M*12|0)+8|0,P=qi[P>>0]|qi[P+1>>0]<<8,C=P&255,P=(P&65535)>>>8&255,L=qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24,I=ve+(R*12|0)+4|0,I=qi[I>>0]|qi[I+1>>0]<<8|qi[I+2>>0]<<16|qi[I+3>>0]<<24,B=ve+(R*12|0)+8|0,B=qi[B>>0]|qi[B+1>>0]<<8,H=B&255,B=(B&65535)>>>8&255,T<<24>>24==(Wi[ve+(M*12|0)+10>>0]|0)):0){switch(T<<24>>24){case 3:{if(H<<24>>24==C<<24>>24)i=(I|0)==(D|0)&((L|0)==(N|0)?B<<24>>24==P<<24>>24:0);else i=0;i=i&1;break}case 1:{i=((L|0)==(N|0)?H<<24>>24==C<<24>>24:0)&1;break}case 2:{i=((I|0)==(D|0)?B<<24>>24==P<<24>>24:0)&1;break}default:break r}if(i|0)break i}}while(0);B=Re+(a*12|0)|0;Xi[B>>2]=Xi[r>>2];Xi[B+4>>2]=Xi[r+4>>2];Xi[B+8>>2]=Xi[r+8>>2];if((a|0)==(t|0))break e;a=a+1|0}}while(0);i:do{if(((y|0)!=0?(K=Xi[U>>2]|0,W=Xi[K+13340>>2]|0,G=V>>W,X=(Zi(O>>W,x)|0)+G|0,q=Wi[ve+(X*12|0)+10>>0]|0,q<<24>>24!=0):0)?(O|0)<(Xi[K+13380>>2]|0):0){B=Xi[K+13336>>2]|0;if(((O>>B|0)>=(me>>B|0)?(V>>B|0)>=(Fe>>B|0):0)?(I=Xi[K+13328>>2]|0,H=Xi[K+13420>>2]|0,L=H+2|0,K=(Zi(me>>I&H,L)|0)+(Fe>>I&H)|0,B=Xi[(Xi[be>>2]|0)+1684>>2]|0,(Xi[B+((Zi(O>>I&H,L)|0)+(V>>I&H)<<2)>>2]|0)>(Xi[B+(K<<2)>>2]|0)):0)break;K=Xi[(Xi[be>>2]|0)+1620>>2]&255;if((V>>K|0)==(Fe>>K|0)?(O>>K|0)==(me>>K|0):0)break;r=ve+(X*12|0)|0;r:do{if(s|0?(G=(Zi(Y>>W,x)|0)+G|0,J=ve+(G*12|0)|0,J=qi[J>>0]|qi[J+1>>0]<<8|qi[J+2>>0]<<16|qi[J+3>>0]<<24,Z=ve+(G*12|0)+4|0,Z=qi[Z>>0]|qi[Z+1>>0]<<8|qi[Z+2>>0]<<16|qi[Z+3>>0]<<24,$=ve+(G*12|0)+8|0,$=qi[$>>0]|qi[$+1>>0]<<8,Q=$&255,$=($&65535)>>>8&255,ee=qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24,ie=ve+(X*12|0)+4|0,ie=qi[ie>>0]|qi[ie+1>>0]<<8|qi[ie+2>>0]<<16|qi[ie+3>>0]<<24,fe=ve+(X*12|0)+8|0,fe=qi[fe>>0]|qi[fe+1>>0]<<8,re=fe&255,fe=(fe&65535)>>>8&255,q<<24>>24==(Wi[ve+(G*12|0)+10>>0]|0)):0){switch(q<<24>>24){case 3:{if(re<<24>>24==Q<<24>>24)i=(ie|0)==(Z|0)&((ee|0)==(J|0)?fe<<24>>24==$<<24>>24:0);else i=0;i=i&1;break}case 1:{i=((ee|0)==(J|0)?re<<24>>24==Q<<24>>24:0)&1;break}case 2:{i=((ie|0)==(Z|0)?fe<<24>>24==$<<24>>24:0)&1;break}default:break r}if(i|0)break i}}while(0);fe=Re+(a*12|0)|0;Xi[fe>>2]=Xi[r>>2];Xi[fe+4>>2]=Xi[r+4>>2];Xi[fe+8>>2]=Xi[r+8>>2];if((a|0)==(t|0))break e;a=a+1|0}}while(0);i:do{if((z|0)!=0?(ce=Xi[(Xi[U>>2]|0)+13340>>2]|0,de=Zi(j>>ce,x)|0,ae=V>>ce,Ee=de+ae|0,Se=Wi[ve+(Ee*12|0)+10>>0]|0,Se<<24>>24!=0):0){be=Xi[(Xi[be>>2]|0)+1620>>2]&255;if((V>>be|0)==(Fe>>be|0)?(j>>be|0)==(me>>be|0):0)break;r:do{if(s|0?(ue=ve+(Ee*12|0)|0,be=(Zi(Y>>ce,x)|0)+ae|0,ne=ve+(be*12|0)|0,ne=qi[ne>>0]|qi[ne+1>>0]<<8|qi[ne+2>>0]<<16|qi[ne+3>>0]<<24,te=ve+(be*12|0)+4|0,te=qi[te>>0]|qi[te+1>>0]<<8|qi[te+2>>0]<<16|qi[te+3>>0]<<24,se=ve+(be*12|0)+8|0,se=qi[se>>0]|qi[se+1>>0]<<8,oe=se&255,se=(se&65535)>>>8&255,ue=qi[ue>>0]|qi[ue+1>>0]<<8|qi[ue+2>>0]<<16|qi[ue+3>>0]<<24,he=ve+(Ee*12|0)+4|0,he=qi[he>>0]|qi[he+1>>0]<<8|qi[he+2>>0]<<16|qi[he+3>>0]<<24,ke=ve+(Ee*12|0)+8|0,ke=qi[ke>>0]|qi[ke+1>>0]<<8,we=ke&255,ke=(ke&65535)>>>8&255,Se<<24>>24==(Wi[ve+(be*12|0)+10>>0]|0)):0){switch(Se<<24>>24){case 3:{if(we<<24>>24==oe<<24>>24)i=(he|0)==(te|0)&((ue|0)==(ne|0)?ke<<24>>24==se<<24>>24:0);else i=0;i=i&1;break}case 1:{i=((ue|0)==(ne|0)?we<<24>>24==oe<<24>>24:0)&1;break}case 2:{i=((he|0)==(te|0)?ke<<24>>24==se<<24>>24:0)&1;break}default:break r}if(i|0)break i}}while(0);if(n){i=ve+(Ee*12|0)|0;de=de+(le>>ce)|0;n=ve+(de*12|0)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;u=ve+(de*12|0)+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;w=ve+(de*12|0)+8|0;w=qi[w>>0]|qi[w+1>>0]<<8;h=w&255;w=(w&65535)>>>8&255;k=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;b=ve+(Ee*12|0)+4|0;b=qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24;s=ve+(Ee*12|0)+8|0;s=qi[s>>0]|qi[s+1>>0]<<8;r=s&255;s=(s&65535)>>>8&255;r:do{if(Se<<24>>24==(Wi[ve+(de*12|0)+10>>0]|0))switch(Se<<24>>24){case 3:{if(r<<24>>24==h<<24>>24)r=(b|0)==(u|0)&((k|0)==(n|0)?s<<24>>24==w<<24>>24:0);else r=0;r=r&1;break r}case 1:{r=((k|0)==(n|0)?r<<24>>24==h<<24>>24:0)&1;break r}case 2:{r=((b|0)==(u|0)?s<<24>>24==w<<24>>24:0)&1;break r}default:{r=0;break r}}else r=0}while(0);if(!((a|0)!=4&(r|0)==0))break}else{if((a|0)==4){a=4;break}i=ve+(Ee*12|0)|0}Se=Re+(a*12|0)|0;Xi[Se>>2]=Xi[i>>2];Xi[Se+4>>2]=Xi[i+4>>2];Xi[Se+8>>2]=Xi[i+8>>2];if((a|0)==(t|0))break e;a=a+1|0}}while(0);k=e+3088|0;if((Wi[e+3043>>0]|0)!=0?a>>>0<(Xi[k>>2]|0)>>>0:0){Xi[ye>>2]=0;Xi[Oe>>2]=0;r=nE(e,Fe,me,pe,_e,0,ye,0)|0;if(!(Xi[Me>>2]|0))i=nE(e,Fe,me,pe,_e,0,Oe,1)|0;else i=0;if(i|r){Wi[Re+(a*12|0)+10>>0]=(i<<1)+r;Gi[Re+(a*12|0)+8>>1]=0;Xi[Re+(a*12|0)>>2]=Xi[ye>>2];Xi[Re+(a*12|0)+4>>2]=Xi[Oe>>2];if((a|0)==(t|0))break;a=a+1|0}}i=Xi[k>>2]|0;i:do{if((a|0)>1&(Xi[Me>>2]|0)==0&a>>>0<i>>>0){w=Zi(a+-1|0,a)|0;h=0;while(1){if((h|0)>=(w|0))break i;ye=qi[123923+(h<<1)>>0]|0;Oe=qi[123923+(h<<1)+1>>0]|0;r=Xi[Re+(ye*12|0)>>2]|0;s=Wi[Re+(ye*12|0)+8>>0]|0;n=Xi[Re+(Oe*12|0)+4>>2]|0;u=Wi[Re+(Oe*12|0)+9>>0]|0;if(((Wi[Re+(ye*12|0)+10>>0]&1)!=0?(Wi[Re+(Oe*12|0)+10>>0]&2)!=0:0)?!((r|0)==(n|0)?(Xi[Ae+64+(s<<24>>24<<2)>>2]|0)==(Xi[Ae+260+(u<<24>>24<<2)>>2]|0):0):0){Wi[Re+(a*12|0)+8>>0]=s;Wi[Re+(a*12|0)+9>>0]=u;Wi[Re+(a*12|0)+10>>0]=3;Xi[Re+(a*12|0)>>2]=r;Xi[Re+(a*12|0)+4>>2]=n;if((a|0)==(t|0))break e;i=Xi[k>>2]|0;a=a+1|0}if(a>>>0<i>>>0)h=h+1|0;else break}}}while(0);if(a>>>0<i>>>0){i=0;while(1){Wi[Re+(a*12|0)+10>>0]=((Xi[Me>>2]|0)==0&1)<<1|1;Xi[Re+(a*12|0)>>2]=0;Xi[Re+(a*12|0)+4>>2]=0;Ae=(i|0)<(ge|0)?i&255:0;Wi[Re+(a*12|0)+8>>0]=Ae;Wi[Re+(a*12|0)+9>>0]=Ae;if((a|0)==(t|0))break e;a=a+1|0;if(a>>>0>=(Xi[k>>2]|0)>>>0)break;else i=i+1|0}}}}while(0);i=Re+(t*12|0)|0;a=Re+(t*12|0)+10|0;if((l+f|0)==12&(Wi[a>>0]|0)==3)Wi[a>>0]=1;Xi[o>>2]=Xi[i>>2];Xi[o+4>>2]=Xi[i+4>>2];Xi[o+8>>2]=Xi[i+8>>2];Ue=Te;return}function nE(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=Ue;Ue=Ue+32|0;E=S+12|0;v=S;w=e+1412|0;u=Xi[w>>2]|0;c=Xi[u+13412>>2]|0;d=Xi[(Xi[e+3516>>2]|0)+36>>2]|0;do{if(d){k=Xi[d+16>>2]|0;b=Xi[d+32>>2]|0;o=f+i|0;s=l+r|0;if(!k)o=0;else{h=Xi[u+13336>>2]|0;if(((r>>h|0)==(s>>h|0)?(s|0)<(Xi[u+13380>>2]|0):0)?(o|0)<(Xi[u+13376>>2]|0):0){h=o&-16;s=s&-16;if((Wi[e+140>>0]|0)==1){YO(d+4|0,s,0);o=Xi[w>>2]|0}else o=u;o=Xi[o+13340>>2]|0;o=k+(((Zi(s>>o,c)|0)+(h>>o)|0)*12|0)|0;Xi[v>>2]=Xi[o>>2];Xi[v+4>>2]=Xi[o+4>>2];Xi[v+8>>2]=Xi[o+8>>2];o=RE(e,d,h,s)|0;Xi[E>>2]=Xi[v>>2];Xi[E+4>>2]=Xi[v+4>>2];Xi[E+8>>2]=Xi[v+8>>2];o=tE(e,E,a,n,t,b,o)|0;if(o|0)break}s=(f>>1)+i&-16;o=(l>>1)+r&-16;if((Wi[e+140>>0]|0)==1)YO(d+4|0,o,0);w=Xi[(Xi[w>>2]|0)+13340>>2]|0;c=k+(((Zi(o>>w,c)|0)+(s>>w)|0)*12|0)|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=Xi[c+4>>2];Xi[v+8>>2]=Xi[c+8>>2];o=RE(e,d,s,o)|0;Xi[E>>2]=Xi[v>>2];Xi[E+4>>2]=Xi[v+4>>2];Xi[E+8>>2]=Xi[v+8>>2];o=tE(e,E,a,n,t,b,o)|0}}else{Gi[n>>1]=0;Gi[n+2>>1]=0>>>16;o=0}}while(0);Ue=S;return o|0}function tE(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Xi[(Xi[e+3516>>2]|0)+20>>2]|0;t=Wi[i+10>>0]|0;e:do{if(t<<24>>24){if(!(t&1)){t=oE(f,i+4|0,a,Xi[e+6080>>2]|0,k,l,r,n,1,Wi[i+9>>0]|0)|0;break}switch(t<<24>>24){case 1:{t=oE(f,i,a,Xi[e+6080>>2]|0,k,l,r,n,0,Wi[i+8>>0]|0)|0;break e}case 3:break;default:{t=0;break e}}h=e+6080|0;t=Xi[k+192>>2]|0;i:do{if((t|0)>0){o=Xi[h>>2]|0;s=0;while(1){if((Xi[k+64+(s<<2)>>2]|0)>(o|0)){s=1;break i}s=s+1|0;if((s|0)>=(t|0)){s=0;break}}}else s=0}while(0);t=Xi[k+388>>2]|0;i:do{if((t|0)>0){o=Xi[h>>2]|0;u=0;while(1){if((Xi[k+260+(u<<2)>>2]|0)>(o|0))break i;u=u+1|0;if((u|0)>=(t|0)){w=21;break}}}else w=21}while(0);if((w|0)==21?(s|0)==0:0){t=Xi[h>>2]|0;if(!l){t=oE(f,i,a,t,k,0,r,n,0,Wi[i+8>>0]|0)|0;break}else{t=oE(f,i+4|0,a,t,k,l,r,n,1,Wi[i+9>>0]|0)|0;break}}t=Xi[h>>2]|0;if((Wi[e+3059>>0]|0)==1){t=oE(f,i,a,t,k,l,r,n,0,Wi[i+8>>0]|0)|0;break}else{t=oE(f,i+4|0,a,t,k,l,r,n,1,Wi[i+9>>0]|0)|0;break}}else t=0}while(0);return t|0}function oE(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0;u=Xi[l+(a*196|0)+128+(n<<2)>>2]|0;do{if((u|0)==(Xi[t+(o*196|0)+128+(s<<2)>>2]|0)){s=Xi[t+(o*196|0)+64+(s<<2)>>2]|0;t=r-s|0;o=f-(Xi[l+(a*196|0)+64+(n<<2)>>2]|0)|0;if((u|0)==0?(s|0)!=(r|0)&(t|0)!=(o|0):0){l=(t+128|0)>>>0>255?t>>31^127:t;u=l<<24>>24;r=(u|0)/2|0;u=(Zi((((l&255)<<24>>24>-2?r:0-r|0)+16384|0)/(u|0)|0,((o+128|0)>>>0>255?o>>31^127:o)<<24>>24)|0)+32|0;o=u>>6;o=(o+4096|0)>>>0>8191?u>>31^4095:o;u=Zi(o,Gi[i>>1]|0)|0;u=u+127+(u>>>31)|0;r=u>>8;Gi[e>>1]=(r+32768|0)>>>0>65535?u>>31^32767:r;i=Zi(o,Gi[i+2>>1]|0)|0;i=i+127+(i>>>31)|0;o=i>>8;Gi[e+2>>1]=(o+32768|0)>>>0>65535?i>>31^32767:o;o=1;break}Gi[e>>1]=Gi[i>>1]|0;Gi[e+2>>1]=Gi[i+2>>1]|0;o=1}else{Gi[e>>1]=0;Gi[e+2>>1]=0;o=0}}while(0);return o|0}function sE(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;N=Ue;Ue=Ue+32|0;T=N;A=N+16|0;g=N+12|0;R=N+8|0;p=Xi[e+136>>2]|0;S=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;F=e+1412|0;k=Xi[F>>2]|0;_=Xi[k+13412>>2]|0;t=T;Xi[t>>2]=0;Xi[t+4>>2]=0;t=Xi[p+31288>>2]|0;E=Xi[p+31296>>2]|0;v=Xi[p+31292>>2]|0;b=Xi[p+31304>>2]|0;M=Wi[o+8+u>>0]|0;y=(u|0)==0&1;O=i+-1|0;w=l+r|0;if(((Xi[p+31284>>2]|0)!=0?(p=Xi[k+13340>>2]|0,(Wi[S+(((Zi(w>>p,_)|0)+(O>>p)|0)*12|0)+10>>0]|0)!=0):0)?(w|0)<(Xi[k+13380>>2]|0):0){p=Xi[k+13336>>2]|0;if((w>>p|0)>=(r>>p|0)?(O>>p|0)>=(i>>p|0):0){c=Xi[k+13328>>2]|0;m=Xi[k+13420>>2]|0;h=m+2|0;a=(Zi(r>>c&m,h)|0)+(i>>c&m)|0;p=Xi[(Xi[e+1416>>2]|0)+1684>>2]|0;a=(Xi[p+((Zi(w>>c&m,h)|0)+(O>>c&m)<<2)>>2]|0)<=(Xi[p+(a<<2)>>2]|0)&1}else a=1;h=(a|0)!=0}else h=0;n=w+-1|0;if(!t)a=0;else{a=Xi[k+13340>>2]|0;a=(Wi[S+(((Zi(n>>a,_)|0)+(O>>a)|0)*12|0)+10>>0]|0)!=0}m=h|a;if(h){p=Xi[k+13340>>2]|0;if((uE(e,O>>p,w>>p,u,A,u,M)|0)==0?(p=Xi[(Xi[F>>2]|0)+13340>>2]|0,(uE(e,O>>p,w>>p,y,A,u,M)|0)==0):0)C=13;else a=1}else C=13;do{if((C|0)==13){if(a){p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,O>>p,n>>p,u,A,u,M)|0){a=1;break}p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,O>>p,n>>p,y,A,u,M)|0){a=1;break}}if(h){p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(hE(e,O>>p,w>>p,u,A,u,M)|0){a=1;break}p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(hE(e,O>>p,w>>p,y,A,u,M)|0){a=1;break}}if(a){p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(hE(e,O>>p,n>>p,u,A,u,M)|0){a=1;break}p=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(hE(e,O>>p,n>>p,y,A,u,M)|0){a=1;break}}a=0}}while(0);c=f+i|0;p=r+-1|0;if(((b|0)!=0?(d=Xi[F>>2]|0,b=Xi[d+13340>>2]|0,(Wi[S+(((Zi(p>>b,_)|0)+(c>>b)|0)*12|0)+10>>0]|0)!=0):0)?(c|0)<(Xi[d+13376>>2]|0):0){b=Xi[d+13336>>2]|0;if((p>>b|0)>=(r>>b|0)?(c>>b|0)>=(i>>b|0):0){k=Xi[d+13328>>2]|0;b=Xi[d+13420>>2]|0;w=b+2|0;t=(Zi(r>>k&b,w)|0)+(i>>k&b)|0;d=Xi[(Xi[e+1416>>2]|0)+1684>>2]|0;t=(Xi[d+((Zi(p>>k&b,w)|0)+(c>>k&b)<<2)>>2]|0)<=(Xi[d+(t<<2)>>2]|0)&1}else t=1;h=(t|0)!=0}else h=0;k=c+-1|0;if(!v)w=0;else{w=Xi[(Xi[F>>2]|0)+13340>>2]|0;w=(Wi[S+(((Zi(p>>w,_)|0)+(k>>w)|0)*12|0)+10>>0]|0)!=0}if(!E)n=0;else{n=Xi[(Xi[F>>2]|0)+13340>>2]|0;n=(Wi[S+(((Zi(p>>n,_)|0)+(O>>n)|0)*12|0)+10>>0]|0)!=0}if(h){_=Xi[(Xi[F>>2]|0)+13340>>2]|0;if((uE(e,c>>_,p>>_,u,g,u,M)|0)==0?(_=Xi[(Xi[F>>2]|0)+13340>>2]|0,(uE(e,c>>_,p>>_,y,g,u,M)|0)==0):0)C=37;else t=1}else C=37;do{if((C|0)==37){if(w){_=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,k>>_,p>>_,u,g,u,M)|0){t=1;break}_=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,k>>_,p>>_,y,g,u,M)|0){t=1;break}}if(n){_=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,O>>_,p>>_,u,g,u,M)|0){t=1;break}_=Xi[(Xi[F>>2]|0)+13340>>2]|0;if(uE(e,O>>_,p>>_,y,g,u,M)|0){t=1;break}}t=0}}while(0);do{if(!m){if(t){Xi[A>>2]=Xi[g>>2];a=1}if(h){t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,c>>t,p>>t,u,g,u,M)|0;if(t|0)break;t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,c>>t,p>>t,y,g,u,M)|0}else t=0;if(!((t|0)!=0|w^1)){t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,k>>t,p>>t,u,g,u,M)|0;if(t|0)break;t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,k>>t,p>>t,y,g,u,M)|0}if(!((t|0)!=0|n^1)){t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,O>>t,p>>t,u,g,u,M)|0;if(!t){t=Xi[(Xi[F>>2]|0)+13340>>2]|0;t=hE(e,O>>t,p>>t,y,g,u,M)|0}}}}while(0);a=(a|0)!=0;if(a){Xi[T>>2]=Xi[A>>2];n=1}else n=0;do{if(t){if(a){A=Xi[A>>2]|0;a=Xi[g>>2]|0;if((A&65535)<<16>>16==(a&65535)<<16>>16?(A>>>16&65535)<<16>>16==(a>>>16&65535)<<16>>16:0){D=n;C=64;break}}else a=Xi[g>>2]|0;Xi[T+(n<<2)>>2]=a;if((n+1|0)>>>0<2){D=1;C=64}}else{D=n;C=64}}while(0);if(((C|0)==64?(D|0)==(s|0)&(Wi[e+3043>>0]|0)!=0:0)?nE(e,i,r,f,l,M,R,u)|0:0)Xi[T+(s<<2)>>2]=Xi[R>>2];C=o+(u<<2)|0;r=Xi[T+(s<<2)>>2]|0;Gi[C>>1]=r;Gi[C+2>>1]=r>>>16;Ue=N;return}function uE(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0;o=Xi[e+3516>>2]|0;t=Xi[o+16>>2]|0;o=Xi[o+20>>2]|0;e=(Zi(Xi[(Xi[e+1412>>2]|0)+13412>>2]|0,r)|0)+i|0;if((Wi[t+(e*12|0)+10>>0]&1<<f|0)!=0?(Xi[o+(f*196|0)+64+(Wi[t+(e*12|0)+8+f>>0]<<2)>>2]|0)==(Xi[o+(a*196|0)+64+(n<<2)>>2]|0):0){e=t+(e*12|0)+(f<<2)|0;e=Ji[e>>1]|Ji[e+2>>1]<<16;Gi[l>>1]=e;Gi[l+2>>1]=e>>>16;e=1}else e=0;return e|0}function hE(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0;s=e+3516|0;o=Xi[s>>2]|0;t=Xi[o+16>>2]|0;o=Xi[o+20>>2]|0;r=(Zi(Xi[(Xi[e+1412>>2]|0)+13412>>2]|0,r)|0)+i|0;if((Wi[t+(r*12|0)+10>>0]&1<<f|0)!=0?(u=Xi[o+(a*196|0)+128+(n<<2)>>2]|0,(Xi[o+(f*196|0)+128+(Wi[t+(r*12|0)+8+f>>0]<<2)>>2]|0)==(u|0)):0){i=t+(r*12|0)+(f<<2)|0;i=Ji[i>>1]|Ji[i+2>>1]<<16;Gi[l>>1]=i;Gi[l+2>>1]=i>>>16;if((u|0)==0?(h=Xi[s>>2]|0,w=Xi[h+20>>2]|0,h=Xi[w+(f*196|0)+64+(Wi[(Xi[h+16>>2]|0)+(r*12|0)+8+f>>0]<<2)>>2]|0,w=Xi[w+(a*196|0)+64+(n<<2)>>2]|0,(h|0)!=(w|0)):0){f=Xi[e+6080>>2]|0;a=(f|0)!=(h|0)?f-h|0:1;f=f-w|0;a=(a+128|0)>>>0>255?a>>31^127:a;n=a<<24>>24;e=(n|0)/2|0;n=(Zi(((f+128|0)>>>0>255?f>>31^127:f)<<24>>24,(((a&255)<<24>>24>-2?e:0-e|0)+16384|0)/(n|0)|0)|0)+32|0;e=n>>6;e=(e+4096|0)>>>0>8191?n>>31^4095:e;n=Zi(e,i<<16>>16)|0;n=n+127+(n>>>31)|0;a=n>>8;Gi[l>>1]=(a+32768|0)>>>0>65535?n>>31^32767:a;e=Zi(e,i>>16)|0;e=e+127+(e>>>31)|0;i=e>>8;Gi[l+2>>1]=(i+32768|0)>>>0>65535?e>>31^32767:i;i=1}else i=1}else i=0;return i|0}function wE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+16|0;b=E;w=(e|0)!=0;if(w)Xi[f+52>>2]=0;e:do{if((r|0)>1){e=0;while(1){if(!(Wi[i+e>>0]|0)){if((e|0)>0){h=e+-1|0;e=(Wi[i+h>>0]|0)==0?h:e}a=e+2|0;if(((a|0)<(r|0)?(Wi[i+(e+1)>>0]|0)==0:0)?(l=Wi[i+a>>0]|0,(l&255)<4):0)break;else a=e}else a=e;e=a+2|0;if((a+3|0)>=(r|0)){l=e;break e}}r=l<<24>>24==3?r:e;l=e}else l=0}while(0);e:do{if((l|0)<(r+-1|0)){pM(f,f+4|0,r+32|0);h=Xi[f>>2]|0;if(!h)r=-12;else{qT(h|0,i|0,l|0)|0;e=l+2|0;i:do{if((e|0)<(r|0)){o=f+60|0;s=f+52|0;u=f+56|0;t=e;e=l;n=l;while(1){l=i+t|0;a=Wi[l>>0]|0;if((a&255)<=3){l=Wi[i+n>>0]|0;if(!(l<<24>>24))if(!(Wi[i+(n+1)>>0]|0)){if(a<<24>>24!=3){v=e;c=n;break i}t=e+1|0;Wi[h+e>>0]=0;e=e+2|0;Wi[h+t>>0]=0;n=n+3|0;if(w?(k=Xi[o>>2]|0,(k|0)!=0):0){a=(Xi[s>>2]|0)+1|0;Xi[s>>2]=a;l=Xi[u>>2]|0;if((l|0)<(a|0)){l=l<<1;Xi[u>>2]=l;if((l|0)<(a|0)){d=28;break}mM(o,l,4)|0;l=Xi[o>>2]|0;if(!l){d=31;break}a=Xi[s>>2]|0}else l=k;Xi[l+(a+-1<<2)>>2]=t}}else{l=0;d=33}else d=33}else{Wi[h+e>>0]=Wi[i+n>>0]|0;Wi[h+(e+1)>>0]=Wi[i+(n+1)>>0]|0;l=Wi[l>>0]|0;e=e+2|0;n=t;d=33}if((d|0)==33){d=0;Wi[h+e>>0]=l;e=e+1|0;n=n+1|0}t=n+2|0;if((t|0)>=(r|0)){d=17;break i}}if((d|0)==28){Xi[b>>2]=123947;Xi[b+4>>2]=123997;Xi[b+8>>2]=117;nA(0,0,150445,b);$e()}else if((d|0)==31){Xi[u>>2]=0;r=-12;break e}}else{e=l;n=l;d=17}}while(0);if((d|0)==17)if((n|0)<(r|0)){a=r+e|0;l=n;while(1){Wi[h+e>>0]=Wi[i+l>>0]|0;l=l+1|0;if((l|0)==(r|0))break;else e=e+1|0}v=a-n|0;c=r}else{v=e;c=n}r=h+v|0;e=r+32|0;do{Wi[r>>0]=0;r=r+1|0}while((r|0)<(e|0));Xi[f+12>>2]=h;Xi[f+8>>2]=v;Xi[f+20>>2]=i;Xi[f+16>>2]=c;r=c}}else{Xi[f+20>>2]=i;Xi[f+12>>2]=i;Xi[f+16>>2]=r;Xi[f+8>>2]=r}}while(0);Ue=E;return r|0}function kE(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=Ue;Ue=Ue+48|0;p=y+32|0;m=y+16|0;_=y+8|0;S=y;E=i+4|0;Xi[E>>2]=0;e:do{if((f|0)>3){c=(a|0)==0;d=i+8|0;v=(n|0)>0;t=f;i:while(1){if(!c){if(v){a=0;f=0;do{a=qi[r+f>>0]|a<<8;f=f+1|0}while((f|0)!=(n|0));f=a}else f=0;a=t-n|0;if((f|0)>(a|0)){F=7;break}else{b=r+n|0;k=a}}else{f=r;a=t;while(1){r=f;f=f+1|0;if(((Wi[r>>0]|0)==0?(Wi[f>>0]|0)==0:0)?(Wi[r+2>>0]|0)==1:0)break;if((a|0)<5)break i;else a=a+-1|0}f=a+-3|0;b=r+3|0;k=f}a=Xi[d>>2]|0;r=Xi[E>>2]|0;if((a|0)<(r+1|0)){a=a+1|0;r=_M(Xi[i>>2]|0,a,64)|0;if(!r){a=-12;break e}Xi[i>>2]=r;h=Xi[d>>2]|0;jT(r+(h<<6)|0,0,a-h<<6|0)|0;h=Xi[E>>2]|0;u=Xi[i>>2]|0;Xi[u+(h<<6)+56>>2]=1024;w=rA(4096)|0;Xi[u+(h<<6)+60>>2]=w;if(!w){a=-12;break e}Xi[d>>2]=a;w=Xi[E>>2]|0}else w=r;h=Xi[i>>2]|0;a=wE(e,b,f,h+(w<<6)|0)|0;if((a|0)<0)break e;Xi[E>>2]=(Xi[E>>2]|0)+1;u=Xi[h+(w<<6)+12>>2]|0;r=Xi[h+(w<<6)+8>>2]|0;r=r>>>0>268435455?-8:r<<3;s=(u|0)!=0&r>>>0<2147483640;r=s?r:0;u=s?u:0;Xi[h+(w<<6)+24>>2]=u;Xi[h+(w<<6)+36>>2]=r;t=r+8|0;Xi[h+(w<<6)+40>>2]=t;Xi[h+(w<<6)+28>>2]=u+(r>>3);o=h+(w<<6)+32|0;Xi[o>>2]=0;if(!s){a=-1094995529;break e}s=Wi[u>>0]|0;f=(r|0)>-8&1;Xi[o>>2]=f;if(s<<24>>24>-1){r=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<f>>>26;f=f|6;f=t>>>0>f>>>0?f:t;Xi[o>>2]=f;Xi[h+(w<<6)+44>>2]=r;s=u+(f>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(f&7)>>>26;f=f+6|0;f=t>>>0>f>>>0?f:t;Xi[o>>2]=f;u=u+(f>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(f&7)>>>29;f=f+3|0;Xi[o>>2]=t>>>0>f>>>0?f:t;t=u+-1|0;Xi[h+(w<<6)+48>>2]=t;if(u){do{switch(r|0){case 0:{f=124252;break}case 1:{f=124244;break}case 2:{f=124238;break}case 3:{f=124232;break}case 4:{f=124225;break}case 5:{f=124218;break}case 6:{f=124211;break}case 7:{f=124204;break}case 8:{f=124197;break}case 9:{f=124190;break}case 16:{f=124181;break}case 17:{f=124170;break}case 18:{f=124161;break}case 19:{f=124150;break}case 20:{f=124141;break}case 21:{f=124133;break}case 32:{f=124129;break}case 33:{f=124125;break}case 34:{f=124121;break}case 35:{f=124117;break}case 36:{f=124109;break}case 37:{f=124101;break}case 38:{f=124094;break}case 39:{f=124083;break}case 40:{f=124072;break}default:f=124070}}while(0);Xi[m>>2]=r;Xi[m+4>>2]=f;Xi[m+8>>2]=s;Xi[m+12>>2]=t;nA(l,48,124260,m);if(s|0)F=52}else F=51}else{r=Xi[h+(w<<6)+44>>2]|0;F=51}if((F|0)==51){Xi[p>>2]=r;nA(l,16,124318,p);F=52}if((F|0)==52){F=0;Xi[E>>2]=(Xi[E>>2]|0)+-1}t=k-a|0;if((t|0)<=3){a=0;break e}else r=b+a|0}if((F|0)==7){nA(l,16,124021,S);a=-1094995529;break}if((Xi[E>>2]|0)<=0){nA(l,16,124045,_);a=-1094995529}else a=0}else a=0}while(0);Ue=y;return a|0}function bE(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+32|0;h=d+16|0;w=d+8|0;u=d;n=f+2188|0;e:do{if(((n|0)!=(r|0)?(s=f+2184|0,(Xi[s>>2]|0)!=0):0)?(b=e+8|0,v=Xi[b>>2]|0,a=Xi[e>>2]|0,E=qi[a+(v>>>3)>>0]|0,k=e+16|0,t=Xi[k>>2]|0,o=((v|0)<(t|0)&1)+v|0,Xi[b>>2]=o,(E&128>>>(v&7)|0)!=0):0){do{if(l){n=(cE(e)|0)+1|0;a=Xi[s>>2]|0;if(a>>>0<n>>>0){Xi[u>>2]=n;Xi[u+4>>2]=a;nA(i,16,124350,u);a=-1094995529;break e}else{u=a-n|0;Xi[r+8>>2]=Xi[f+2188+(u*172|0)+4>>2];o=Xi[b>>2]|0;a=Xi[e>>2]|0;t=Xi[k>>2]|0;break}}else u=((r-n|0)/172|0)+-1|0}while(0);n=Wi[a+(o>>>3)>>0]|0;Xi[b>>2]=((o|0)<(t|0)&1)+o;E=cE(e)|0;a=E+1|0;if(E>>>0>32767){Xi[w>>2]=a;nA(i,16,124408,w);a=-1094995529;break}o=Zi(1-((n&255)<<(o&7)>>>6&2)|0,a)|0;l=f+2188+(u*172|0)+4|0;if((Xi[l>>2]|0)<0){Xi[r+4>>2]=0;Xi[r>>2]=0;a=0;break}else{s=0;n=0;a=0}while(1){v=Xi[b>>2]|0;E=(qi[(Xi[e>>2]|0)+(v>>>3)>>0]|0)<<(v&7)>>>7&1;Xi[b>>2]=((v|0)<(Xi[k>>2]|0)&1)+v;Wi[r+140+n>>0]=E;if(!((E|0)==0?(E=Xi[b>>2]|0,v=qi[(Xi[e>>2]|0)+(E>>>3)>>0]|0,Xi[b>>2]=((E|0)<(Xi[k>>2]|0)&1)+E,(v&128>>>(E&7)|0)==0):0)){if((s|0)<(Xi[l>>2]|0))t=(Xi[f+2188+(u*172|0)+12+(s<<2)>>2]|0)+o|0;else t=o;Xi[r+12+(n<<2)>>2]=t;n=n+1|0;a=(t>>>31)+a|0}if((s|0)<(Xi[l>>2]|0))s=s+1|0;else break}h=r+4|0;Xi[h>>2]=n;Xi[r>>2]=a;if((n|0)>1){l=1;do{o=Xi[r+12+(l<<2)>>2]|0;a=Wi[r+140+l>>0]|0;s=l;do{u=s;s=s+-1|0;n=r+12+(s<<2)|0;t=Xi[n>>2]|0;if((o|0)<(t|0)){Xi[r+12+(u<<2)>>2]=t;E=r+140+s|0;Wi[r+140+u>>0]=Wi[E>>0]|0;Xi[n>>2]=o;Wi[E>>0]=a}}while((u|0)>1);l=l+1|0}while((l|0)<(Xi[h>>2]|0));a=Xi[r>>2]|0}if(a>>>0>1){n=0;do{a=a+-1|0;E=r+12+(n<<2)|0;f=Xi[E>>2]|0;b=r+140+n|0;v=Wi[b>>0]|0;e=r+12+(a<<2)|0;Xi[E>>2]=Xi[e>>2];E=r+140+a|0;Wi[b>>0]=Wi[E>>0]|0;Xi[e>>2]=f;Wi[E>>0]=v;n=n+1|0}while(n>>>0<(Xi[r>>2]|0)>>>1>>>0);a=0}else a=0}else c=28}while(0);do{if((c|0)==28){Xi[r>>2]=cE(e)|0;l=cE(e)|0;a=Xi[r>>2]|0;if((a|l)>>>0>15){nA(i,16,124444,h);a=-1094995529;break}E=a+l|0;Xi[r+4>>2]=E;if(E){if(a|0){a=e+8|0;n=e+16|0;t=0;o=0;do{o=o+-1-(cE(e)|0)|0;Xi[r+12+(t<<2)>>2]=o;v=Xi[a>>2]|0;E=(qi[(Xi[e>>2]|0)+(v>>>3)>>0]|0)<<(v&7)>>>7&1;Xi[a>>2]=((v|0)<(Xi[n>>2]|0)&1)+v;Wi[r+140+t>>0]=E;t=t+1|0}while(t>>>0<(Xi[r>>2]|0)>>>0)}if(l){a=e+8|0;n=e+16|0;t=0;o=0;do{o=o+1+(cE(e)|0)|0;Xi[r+12+((Xi[r>>2]|0)+t<<2)>>2]=o;v=Xi[a>>2]|0;E=(qi[(Xi[e>>2]|0)+(v>>>3)>>0]|0)<<(v&7)>>>7&1;Xi[a>>2]=((v|0)<(Xi[n>>2]|0)&1)+v;Wi[(Xi[r>>2]|0)+t+(r+140)>>0]=E;t=t+1|0}while((t|0)!=(l|0));a=0}else a=0}else a=0}}while(0);Ue=d;return a|0}function cE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=e+8|0;r=Xi[n>>2]|0;t=Xi[e>>2]|0;l=Xi[e+16>>2]|0;i=t+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=t+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[n>>2]=r;f=i+1|0;do{if(f){a=t+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){t=r+f|0;Xi[n>>2]=l>>>0>t>>>0?t:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[n>>2]=f;e=i+-15|0;t=t+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[n>>2]=l>>>0>f>>>0?f:l;e=t|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function dE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;M=Ue;Ue=Ue+80|0;p=M+64|0;E=M+56|0;w=M+48|0;u=M+40|0;h=M+32|0;o=M+24|0;t=M+16|0;l=M+8|0;O=M+68|0;F=HA(468)|0;Xi[O>>2]=F;g=F;e:do{if(!F)f=-12;else{y=F+4|0;c=Xi[y>>2]|0;nA(i,48,124480,M);m=e+8|0;f=Xi[m>>2]|0;S=e+16|0;a=Xi[S>>2]|0;n=Xi[e>>2]|0;A=n+(f>>>3)|0;A=(ZT(qi[A>>0]|qi[A+1>>0]<<8|qi[A+2>>0]<<16|qi[A+3>>0]<<24|0)|0)<<(f&7)>>>28;f=f+4|0;f=a>>>0>f>>>0?f:a;Xi[m>>2]=f;v=n+(f>>>3)|0;v=(ZT(qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24|0)|0)<<(f&7);f=f+2|0;f=a>>>0>f>>>0?f:a;Xi[m>>2]=f;i:do{if(v>>>0>3221225471){v=n+(f>>>3)|0;v=(ZT(qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24|0)|0)<<(f&7)>>>26;l=f+6|0;l=a>>>0>l>>>0?l:a;Xi[m>>2]=l;Xi[c+4>>2]=v+1;f=n+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7)>>>29;l=l+3|0;l=a>>>0>l>>>0?l:a;Xi[m>>2]=l;f=f+1|0;v=c+8|0;Xi[v>>2]=f;R=(qi[n+(l>>>3)>>0]|0)<<(l&7)>>>7&1;l=((l|0)<(a|0)&1)+l|0;Xi[m>>2]=l;Wi[c>>0]=R;n=n+(l>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(l&7);l=l+16|0;Xi[m>>2]=a>>>0>l>>>0?l:a;if(n>>>0<=4294901759){nA(i,16,124533,t);break}if(f>>>0>7){Xi[o>>2]=f;nA(i,16,124573,o);break}if((vE(e,i,c+12|0,f)|0)>=0){a=Xi[m>>2]|0;l=Xi[e>>2]|0;R=(qi[l+(a>>>3)>>0]|0)<<(a&7)>>>7&1;f=Xi[S>>2]|0;a=((a|0)<(f|0)&1)+a|0;Xi[m>>2]=a;Xi[c+348>>2]=R;n=Xi[v>>2]|0;if(R){if((n|0)>0){f=0;s=12}}else{f=n+-1|0;s=12}do{if((s|0)==12){n=i+688|0;a=f;while(1){f=c+352+(a<<2)|0;Xi[f>>2]=(cE(e)|0)+1;l=c+380+(a<<2)|0;Xi[l>>2]=cE(e)|0;Xi[c+408+(a<<2)>>2]=(cE(e)|0)+-1;f=(Xi[f>>2]|0)+-1|0;if(f>>>0>15){s=14;break}l=Xi[l>>2]|0;if(l>>>0>f>>>0?(Xi[u>>2]=l,nA(i,24,124924,u),Xi[n>>2]&8|0):0)break i;a=a+1|0;if((a|0)>=(Xi[v>>2]|0)){s=18;break}}if((s|0)==14){Xi[h>>2]=f;nA(i,16,124873,h);break i}else if((s|0)==18){a=Xi[m>>2]|0;l=Xi[e>>2]|0;f=Xi[S>>2]|0;break}}}while(0);R=l+(a>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(a&7)>>>26;o=a+6|0;Xi[m>>2]=f>>>0>o>>>0?o:f;f=c+436|0;Xi[f>>2]=R;R=cE(e)|0;o=R+1|0;s=c+440|0;Xi[s>>2]=o;if(R>>>0<=1023?(t=WT(o|0,((o|0)<0)<<31>>31|0,-1,-1)|0,h=Ie,b=Xi[f>>2]|0,_=WT(b|0,((b|0)<0)<<31>>31|0,1,0)|0,h=rN(_|0,Ie|0,t|0,h|0)|0,t=Ie,_=e+12|0,d=Xi[_>>2]|0,k=Xi[m>>2]|0,R=d-k|0,u=((R|0)<0)<<31>>31,!((t|0)>(u|0)|(t|0)==(u|0)&h>>>0>R>>>0)):0){if((o|0)>1){t=(b|0)<0;f=k;n=1;do{if(!t){a=Xi[S>>2]|0;l=0;while(1){f=f+1|0;f=a>>>0>f>>>0?f:a;if((l|0)<(b|0))l=l+1|0;else break}Xi[m>>2]=f}n=n+1|0}while((n|0)<(o|0))}else f=k;n=Xi[e>>2]|0;R=(qi[n+(f>>>3)>>0]|0)<<(f&7)>>>7&1;l=Xi[S>>2]|0;a=((f|0)<(l|0)&1)+f|0;Xi[m>>2]=a;R=R&255;Wi[c+444>>0]=R;if(!(R<<24>>24))f=d;else{R=n+(a>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(a&7)&-65536;d=a+16|0;d=l>>>0>d>>>0?d:l;Xi[m>>2]=d;b=n+(d>>>3)|0;b=(ZT(qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24|0)|0)<<(d&7)>>>16;d=d+16|0;d=l>>>0>d>>>0?d:l;Xi[m>>2]=d;Xi[c+448>>2]=b|R;R=n+(d>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(d&7)&-65536;d=d+16|0;d=l>>>0>d>>>0?d:l;Xi[m>>2]=d;b=n+(d>>>3)|0;b=(ZT(qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24|0)|0)<<(d&7)>>>16;d=d+16|0;d=l>>>0>d>>>0?d:l;Xi[m>>2]=d;Xi[c+452>>2]=b|R;R=(qi[n+(d>>>3)>>0]|0)<<(d&7)>>>7&1;Xi[m>>2]=((d|0)<(l|0)&1)+d;R=R&255;Wi[c+456>>0]=R;if(R<<24>>24)Xi[c+460>>2]=(cE(e)|0)+1;f=cE(e)|0;a=c+464|0;Xi[a>>2]=f;if(f>>>0>(Xi[s>>2]|0)>>>0){Xi[E>>2]=f;nA(i,16,125001,E);break}if((f|0)>0){l=0;do{cE(e)|0;if(!l)f=1;else{R=Xi[m>>2]|0;f=(qi[(Xi[e>>2]|0)+(R>>>3)>>0]|0)<<(R&7)>>>7&1;Xi[m>>2]=((R|0)<(Xi[S>>2]|0)&1)+R}SE(e,f,Xi[v>>2]|0);l=l+1|0}while((l|0)<(Xi[a>>2]|0))}a=Xi[m>>2]|0;l=Xi[S>>2]|0;f=Xi[_>>2]|0}R=((a|0)<(l|0)&1)+a|0;Xi[m>>2]=R;f=f-R|0;if((f|0)<0){Xi[p>>2]=0-f;nA(i,16,125058,p);f=r+(A<<2)|0;if(Xi[f>>2]|0)break}else{f=r+(A<<2)|0;l=Xi[f>>2]|0;if(l){a=Xi[l+4>>2]|0;if(!(kR(a,Xi[y>>2]|0,Xi[F+8>>2]|0)|0)){UA(O);f=0;break e}l=r+1216|0;if((Xi[l>>2]|0)==(a|0)){Xi[l>>2]=0;a=0}else a=0;do{l=Xi[r+64+(a<<2)>>2]|0;do{if(l|0){if((Xi[Xi[l+4>>2]>>2]|0)!=(A|0))break;mE(r,a)}}while(0);a=a+1|0}while((a|0)!=32)}}UA(f);Xi[f>>2]=g;f=0;break e}nA(i,16,124967,w)}}else nA(i,16,124494,l)}while(0);UA(O);f=-1094995529}}while(0);Ue=M;return f|0}function vE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+32|0;b=d+16|0;k=d+8|0;l=d;e:do{if((EE(e,i,r)|0)>=0?(h=e+12|0,w=e+8|0,a=Xi[w>>2]|0,((Xi[h>>2]|0)-a|0)>=24):0){u=e+16|0;t=Xi[u>>2]|0;n=Xi[e>>2]|0;s=n+(a>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(a&7)>>>24;l=a+8|0;l=t>>>0>l>>>0?l:t;Xi[w>>2]=l;Wi[r+35>>0]=s;s=f+-1|0;o=(f|0)>1;if(o){a=0;while(1){n=qi[n+(l>>>3)>>0]<<(l&7)>>>7&1;Xi[w>>2]=((l|0)<(t|0)&1)+l;Wi[r+320+a>>0]=n;n=Xi[w>>2]|0;t=qi[(Xi[e>>2]|0)+(n>>>3)>>0]<<(n&7)>>>7&1;Xi[w>>2]=((n|0)<(Xi[u>>2]|0)&1)+n;Wi[r+327+a>>0]=t;a=a+1|0;if((a|0)==(s|0))break;l=Xi[w>>2]|0;n=Xi[e>>2]|0;t=Xi[u>>2]|0}if(o){if((f|0)<9){a=Xi[u>>2]|0;l=Xi[w>>2]|0;n=s;do{l=l+2|0;l=a>>>0>l>>>0?l:a;n=n+1|0}while((n|0)<8);Xi[w>>2]=l;if(!o){l=0;break}else l=0}else l=0;while(1){if(Wi[r+320+l>>0]|0?(EE(e,i,r+40+(l*40|0)|0)|0)<0:0){c=14;break}if(Wi[r+327+l>>0]|0){a=Xi[w>>2]|0;if(((Xi[h>>2]|0)-a|0)<8){c=17;break}f=Xi[u>>2]|0;o=(Xi[e>>2]|0)+(a>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(a&7)>>>24;t=a+8|0;Xi[w>>2]=f>>>0>t>>>0?t:f;Wi[r+40+(l*40|0)+35>>0]=o}l=l+1|0;if((l|0)>=(s|0)){l=0;break e}}if((c|0)==14){Xi[k>>2]=l;nA(i,16,124787,k);l=-1;break}else if((c|0)==17){Xi[b>>2]=l;nA(i,16,124830,b);l=-1;break}}else l=0}else l=0}else c=3}while(0);if((c|0)==3){nA(i,16,124760,l);l=-1}Ue=d;return l|0}function EE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=Ue;Ue=Ue+48|0;a=h+32|0;l=h+24|0;u=e+8|0;f=Xi[u>>2]|0;if(((Xi[e+12>>2]|0)-f|0)<88)f=-1;else{s=e+16|0;o=Xi[s>>2]|0;n=Xi[e>>2]|0;w=n+(f>>>3)|0;w=(ZT(qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24|0)|0)<<(f&7)>>>30;t=f+2|0;t=o>>>0>t>>>0?t:o;Xi[u>>2]=t;Wi[r>>0]=w;f=qi[n+(t>>>3)>>0]<<(t&7)>>>7&1;t=((t|0)<(o|0)&1)+t|0;Xi[u>>2]=t;Wi[r+1>>0]=f;f=n+(t>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(t&7)>>>27;t=t+5|0;Xi[u>>2]=o>>>0>t>>>0?t:o;o=r+2|0;Wi[o>>0]=f;e:do{switch(f|0){case 1:{nA(i,48,124610,h);t=0;break}case 2:{nA(i,48,124634,h+8|0);t=0;break}case 3:{nA(i,48,124661,h+16|0);t=0;break}default:if((f|0)==4){nA(i,48,124699,l);t=0;break e}else{Xi[a>>2]=f;nA(i,24,124734,a);t=0;break e}}}while(0);while(1){a=Xi[u>>2]|0;l=Xi[e>>2]|0;n=qi[l+(a>>>3)>>0]<<(a&7)>>>7&1;i=Xi[s>>2]|0;a=((a|0)<(i|0)&1)+a|0;Xi[u>>2]=a;f=n&255;if((t|0)==32)break;Wi[r+3+t>>0]=f;if(!((n|0)==0|((t|0)<1|(Wi[o>>0]|0)!=0)))Wi[o>>0]=t;t=t+1|0}Wi[r+36>>0]=f;w=qi[l+(a>>>3)>>0]<<(a&7)>>>7&1;f=((a|0)<(i|0)&1)+a|0;Xi[u>>2]=f;Wi[r+37>>0]=w;w=qi[l+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(i|0)&1)+f|0;Xi[u>>2]=f;Wi[r+38>>0]=w;Wi[r+39>>0]=qi[l+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(i|0)&1)+f+16|0;f=(i>>>0>f>>>0?f:i)+16|0;f=(i>>>0>f>>>0?f:i)+12|0;Xi[u>>2]=i>>>0>f>>>0?f:i;f=0}Ue=h;return f|0}function SE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;b=Ue;Ue=Ue+16|0;k=b;if(i){l=e+8|0;f=Xi[l>>2]|0;i=Xi[e>>2]|0;a=(qi[i+(f>>>3)>>0]|0)<<(f&7)>>>7&1;n=Xi[e+16>>2]|0;f=((f|0)<(n|0)&1)+f|0;Xi[l>>2]=f;o=(qi[i+(f>>>3)>>0]|0)<<(f&7)>>>7&1;f=((f|0)<(n|0)&1)+f|0;Xi[l>>2]=f;if(!(o|a)){f=a;t=0;i=o}else{t=(qi[i+(f>>>3)>>0]|0)<<(f&7)>>>7&1;i=((f|0)<(n|0)&1)+f|0;Xi[l>>2]=i;if(!t){i=i+4|0;i=n>>>0>i>>>0?i:n;Xi[l>>2]=i;i=i+4|0;i=n>>>0>i>>>0?i:n}else{i=i+8|0;i=(n>>>0>i>>>0?i:n)+5|0;i=(n>>>0>i>>>0?i:n)+1|0;i=(n>>>0>i>>>0?i:n)+5|0;i=(n>>>0>i>>>0?i:n)+4|0;i=(n>>>0>i>>>0?i:n)+4|0;i=n>>>0>i>>>0?i:n;Xi[l>>2]=i;i=i+4|0;i=n>>>0>i>>>0?i:n}f=i+5|0;f=(n>>>0>f>>>0?f:n)+5|0;f=(n>>>0>f>>>0?f:n)+5|0;Xi[l>>2]=n>>>0>f>>>0?f:n;f=a;i=o}}else{f=0;t=0;i=0}e:do{if((r|0)>0){s=e+8|0;u=e+16|0;o=(f|0)==0;a=(i|0)==0;n=0;while(1){c=Xi[s>>2]|0;f=Xi[e>>2]|0;d=qi[f+(c>>>3)>>0]|0;l=Xi[u>>2]|0;i=((c|0)<(l|0)&1)+c|0;Xi[s>>2]=i;if((d&128>>>(c&7)|0)==0?(d=qi[f+(i>>>3)>>0]|0,h=((i|0)<(l|0)&1)+i|0,Xi[s>>2]=h,(d&128>>>(i&7)|0)==0):0){d=qi[f+(h>>>3)>>0]|0;Xi[s>>2]=((h|0)<(l|0)&1)+h;if(!(d&128>>>(h&7)))w=13;else i=1}else{cE(e)|0;w=13}if((w|0)==13){w=0;d=cE(e)|0;i=d+1|0;if(d>>>0>31)break}if(!o)_E(e,i,t);if(!a)_E(e,i,t);n=n+1|0;if((n|0)>=(r|0))break e}Xi[k>>2]=i;nA(0,16,125039,k)}}while(0);Ue=b;return}function _E(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;if(i|0){r=(r|0)==0;f=e+8|0;l=e+16|0;a=0;do{cE(e)|0;cE(e)|0;if(!r){cE(e)|0;cE(e)|0}n=Xi[l>>2]|0;t=(Xi[f>>2]|0)+1|0;Xi[f>>2]=n>>>0>t>>>0?t:n;a=a+1|0}while((a|0)!=(i|0))}return}function mE(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+16|0;s=u;n=e+64+(i<<2)|0;r=Xi[n>>2]|0;if(r|0){o=e+1220|0;if((Xi[o>>2]|0)==(Xi[r+4>>2]|0))Xi[o>>2]=0;f=e+1224|0;a=0;do{l=e+192+(a<<2)|0;r=Xi[l>>2]|0;if(r|0?(t=Xi[r+4>>2]|0,(Xi[t>>2]|0)==(i|0)):0){if((Xi[f>>2]|0)==(t|0))Xi[f>>2]=0;UA(l)}a=a+1|0}while((a|0)!=256);e=Xi[n>>2]|0;if(e|0?(Xi[o>>2]|0)==(Xi[e+4>>2]|0):0){Xi[s>>2]=125083;Xi[s+4>>2]=125147;Xi[s+8>>2]=91;nA(0,0,150445,s);$e()}}UA(n);Ue=u;return}function pE(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0;fe=Ue;Ue=Ue+336|0;re=fe+312|0;ie=fe+304|0;$=fe+296|0;Q=fe+288|0;Z=fe+280|0;J=fe+272|0;q=fe+264|0;X=fe+256|0;G=fe+248|0;W=fe+240|0;K=fe+232|0;j=fe+224|0;z=fe+216|0;B=fe+208|0;I=fe+200|0;P=fe+192|0;D=fe+176|0;T=fe+168|0;R=fe+160|0;M=fe+152|0;g=fe+144|0;A=fe+136|0;O=fe+128|0;y=fe+120|0;F=fe+112|0;p=fe+104|0;m=fe+96|0;S=fe+88|0;_=fe+80|0;E=fe+72|0;v=fe+64|0;d=fe+56|0;c=fe+48|0;b=fe+32|0;k=fe+24|0;w=fe+16|0;h=fe+8|0;s=fe;C=fe+316|0;ee=i+8|0;n=Xi[ee>>2]|0;Y=i+16|0;u=Xi[Y>>2]|0;o=Xi[i>>2]|0;t=o+(n>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(n&7)>>>28;n=n+4|0;n=u>>>0>n>>>0?n:u;Xi[ee>>2]=n;Xi[e>>2]=t;if((l|0)!=0?(Xi[l+(t<<2)>>2]|0)==0:0){Xi[s>>2]=t;nA(a,16,125168,s);n=-1094995529}else N=4;e:do{if((N|0)==4){t=o+(n>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(n&7)>>>29;n=n+3|0;n=u>>>0>n>>>0?n:u;Xi[ee>>2]=n;t=t+1|0;H=e+72|0;Xi[H>>2]=t;if(t>>>0>7){Xi[h>>2]=t;nA(a,16,125191,h);n=-1094995529;break}n=n+1|0;Xi[ee>>2]=u>>>0>n>>>0?n:u;n=vE(i,a,e+300|0,t)|0;if((n|0)>=0){n=cE(i)|0;Xi[r>>2]=n;if(n>>>0>31){Xi[w>>2]=n;nA(a,16,125228,w);n=-1094995529;break}n=cE(i)|0;l=e+4|0;Xi[l>>2]=n;if(n>>>0>3){Xi[k>>2]=n;nA(a,16,125253,k);n=-1094995529;break}if((n|0)==3){V=Xi[ee>>2]|0;n=(qi[(Xi[i>>2]|0)+(V>>>3)>>0]|0)<<(V&7)>>>7&1;Xi[ee>>2]=((V|0)<(Xi[Y>>2]|0)&1)+V;n=n&255;Wi[e+8>>0]=n}else n=Wi[e+8>>0]|0;if(n<<24>>24)Xi[l>>2]=0;U=e+13376|0;Xi[U>>2]=cE(i)|0;n=cE(i)|0;x=e+13380|0;Xi[x>>2]=n;n=Gg(Xi[U>>2]|0,n,0,a)|0;if((n|0)>=0){V=Xi[ee>>2]|0;L=qi[(Xi[i>>2]|0)+(V>>>3)>>0]|0;Xi[ee>>2]=((V|0)<(Xi[Y>>2]|0)&1)+V;if(L&128>>>(V&7)|0){n=e+36|0;Xi[n>>2]=(cE(i)|0)<<1;t=e+40|0;Xi[t>>2]=(cE(i)|0)<<1;o=e+44|0;Xi[o>>2]=(cE(i)|0)<<1;s=(cE(i)|0)<<1;Xi[e+48>>2]=s;if(Xi[a+96>>2]&65536|0){L=Xi[t>>2]|0;V=Xi[o>>2]|0;Xi[b>>2]=Xi[n>>2];Xi[b+4>>2]=L;Xi[b+8>>2]=V;Xi[b+12>>2]=s;nA(a,48,125286,b);Xi[n>>2]=0;Xi[n+4>>2]=0;Xi[n+8>>2]=0;Xi[n+12>>2]=0}V=e+20|0;Xi[V>>2]=Xi[n>>2];Xi[V+4>>2]=Xi[n+4>>2];Xi[V+8>>2]=Xi[n+8>>2];Xi[V+12>>2]=Xi[n+12>>2]}V=e+52|0;Xi[V>>2]=(cE(i)|0)+8;t=(cE(i)|0)+8|0;o=Xi[l>>2]|0;n=Xi[V>>2]|0;if(!((o|0)==0|(t|0)==(n|0))){Xi[c>>2]=n;Xi[c+4>>2]=t;nA(a,16,125362,c);n=-1094995529;break}i:do{switch(n|0){case 8:switch(o|0){case 0:{Xi[e+60>>2]=8;break i}case 1:{Xi[e+60>>2]=0;break i}case 2:{Xi[e+60>>2]=4;break i}case 3:{Xi[e+60>>2]=5;break i}default:break i}case 9:switch(o|0){case 0:{Xi[e+60>>2]=32;break i}case 1:{Xi[e+60>>2]=70;break i}case 2:{Xi[e+60>>2]=80;break i}case 3:{Xi[e+60>>2]=76;break i}default:break i}case 10:switch(o|0){case 0:{Xi[e+60>>2]=32;break i}case 1:{Xi[e+60>>2]=72;break i}case 2:{Xi[e+60>>2]=74;break i}case 3:{Xi[e+60>>2]=78;break i}default:break i}case 12:switch(o|0){case 0:{Xi[e+60>>2]=32;break i}case 1:{Xi[e+60>>2]=300;break i}case 2:{Xi[e+60>>2]=304;break i}case 3:{Xi[e+60>>2]=308;break i}default:break i}default:{nA(a,16,125445,d);n=Xi[V>>2]|0;Xi[v>>2]=Xi[l>>2];Xi[v+4>>2]=n;nA(a,16,125522,v);n=-1094995529;break e}}}while(0);k=e+60|0;n=Wg(Xi[k>>2]|0)|0;if(!n)n=-22;else{Xi[e+13436>>2]=0;Xi[e+13424>>2]=0;L=qi[n+5>>0]|0;Xi[e+13428>>2]=L;Xi[e+13432>>2]=L;L=qi[n+6>>0]|0;Xi[e+13440>>2]=L;Xi[e+13444>>2]=L;L=e+56|0;Xi[L>>2]=(Xi[V>>2]|0)>8&1;n=cE(i)|0;v=n+4|0;w=e+64|0;Xi[w>>2]=v;if(v>>>0>16){Xi[E>>2]=n;nA(a,16,125559,E);n=-1094995529;break}h=Xi[ee>>2]|0;n=qi[(Xi[i>>2]|0)+(h>>>3)>>0]|0;Xi[ee>>2]=((h|0)<(Xi[Y>>2]|0)&1)+h;h=(n&128>>>(h&7)|0)!=0;n=Xi[H>>2]|0;if(h){if((n|0)>0){r=0;N=51}}else{r=n+-1|0;N=51}if((N|0)==51){s=a+688|0;u=r;do{l=e+76+(u*12|0)|0;Xi[l>>2]=(cE(i)|0)+1;t=e+76+(u*12|0)+4|0;Xi[t>>2]=cE(i)|0;Xi[e+76+(u*12|0)+8>>2]=(cE(i)|0)+-1;n=Xi[l>>2]|0;if((n|0)>16){N=53;break}o=Xi[t>>2]|0;if((o|0)>(n+-1|0)){Xi[S>>2]=o;nA(a,24,125659,S);if(Xi[s>>2]&8|0){n=-1094995529;break e}n=Xi[t>>2]|0;if((n|0)>15){n=-1094995529;break e}Xi[l>>2]=n+1}u=u+1|0}while((u|0)<(Xi[H>>2]|0));if((N|0)==53){Xi[_>>2]=n+-1;nA(a,16,125608,_);n=-1094995529;break}if((r|0)>0&(h^1)){n=e+76+(r*12|0)|0;t=e+76+(r*12|0)+4|0;o=e+76+(r*12|0)+8|0;s=0;do{Xi[e+76+(s*12|0)>>2]=Xi[n>>2];Xi[e+76+(s*12|0)+4>>2]=Xi[t>>2];Xi[e+76+(s*12|0)+8>>2]=Xi[o>>2];s=s+1|0}while((s|0)!=(r|0))}}d=e+13320|0;Xi[d>>2]=(cE(i)|0)+3;v=e+13324|0;Xi[v>>2]=cE(i)|0;E=e+13328|0;Xi[E>>2]=(cE(i)|0)+2;t=cE(i)|0;o=Xi[E>>2]|0;S=e+13332|0;Xi[S>>2]=o+t;s=Xi[d>>2]|0;if((s+-3|0)>>>0>27){Xi[m>>2]=s;nA(a,16,125702,m);n=-1094995529;break}n=Xi[v>>2]|0;if(n>>>0>30){Xi[p>>2]=n;nA(a,16,125740,p);n=-1094995529;break}if(o>>>0>=s>>>0|o>>>0<2){nA(a,16,125797,F);n=-1094995529;break}if(t>>>0>30){Xi[y>>2]=t;nA(a,16,125832,y);n=-1094995529;break}b=e+13344|0;Xi[b>>2]=cE(i)|0;c=e+13348|0;Xi[c>>2]=cE(i)|0;n=Xi[ee>>2]|0;t=Xi[i>>2]|0;y=(qi[t+(n>>>3)>>0]|0)<<(n&7)>>>7&1;o=Xi[Y>>2]|0;n=((n|0)<(o|0)&1)+n|0;Xi[ee>>2]=n;y=y&255;Wi[e+634>>0]=y;do{if(y<<24>>24){o=e+635|0;FE(o);y=Xi[ee>>2]|0;t=Xi[i>>2]|0;F=qi[t+(y>>>3)>>0]|0;s=Xi[Y>>2]|0;n=((y|0)<(s|0)&1)+y|0;Xi[ee>>2]=n;if(!(F&128>>>(y&7))){o=s;break}n=yE(i,a,o,e)|0;if((n|0)<0)break e;n=Xi[ee>>2]|0;t=Xi[i>>2]|0;o=Xi[Y>>2]|0}}while(0);y=(qi[t+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(o|0)&1)+n|0;Xi[ee>>2]=n;Wi[e+13196>>0]=y;y=(qi[t+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(o|0)&1)+n|0;Xi[ee>>2]=n;Wi[e+13197>>0]=y;y=(qi[t+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(o|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+68>>2]=y;do{if(y|0){F=t+(n>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(n&7)>>>28;y=n+4|0;y=o>>>0>y>>>0?y:o;Xi[ee>>2]=y;n=e+13300|0;Wi[n>>0]=F+1;t=t+(y>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(y&7)>>>28;y=y+4|0;Xi[ee>>2]=o>>>0>y>>>0?y:o;Wi[e+13301>>0]=t+1;t=(cE(i)|0)+3|0;Xi[e+13304>>2]=t;Xi[e+13308>>2]=t+(cE(i)|0);n=qi[n>>0]|0;t=Xi[V>>2]|0;if((n|0)>(t|0)){Xi[O>>2]=n;Xi[O+4>>2]=t;nA(a,16,126061,O);n=-1094995529;break e}else{y=Xi[ee>>2]|0;O=(qi[(Xi[i>>2]|0)+(y>>>3)>>0]|0)<<(y&7)>>>7&1;Xi[ee>>2]=((y|0)<(Xi[Y>>2]|0)&1)+y;Wi[e+13312>>0]=O;break}}}while(0);n=cE(i)|0;o=e+2184|0;Xi[o>>2]=n;if(n>>>0>64){Xi[A>>2]=n;nA(a,16,126119,A);n=-1094995529;break}if(n|0){t=0;do{n=bE(i,a,e+2188+(t*172|0)|0,e,0)|0;t=t+1|0;if((n|0)<0)break e}while(t>>>0<(Xi[o>>2]|0)>>>0)}o=Xi[ee>>2]|0;t=Xi[i>>2]|0;A=(qi[t+(o>>>3)>>0]|0)<<(o&7)>>>7&1;n=Xi[Y>>2]|0;o=((o|0)<(n|0)&1)+o|0;Xi[ee>>2]=o;A=A&255;Wi[e+13198>>0]=A;if(A<<24>>24){t=cE(i)|0;n=t&255;o=e+13296|0;Wi[o>>0]=n;t=t&255;if(t>>>0>31){Xi[g>>2]=t;nA(a,16,126149,g);n=-1094995529;break}if(n<<24>>24){n=0;do{A=Xi[w>>2]|0;F=Xi[ee>>2]|0;O=Xi[Y>>2]|0;g=Xi[i>>2]|0;y=g+(F>>>3)|0;y=(ZT(qi[y>>0]|qi[y+1>>0]<<8|qi[y+2>>0]<<16|qi[y+3>>0]<<24|0)|0)<<(F&7)>>>(32-A|0);A=F+A|0;A=O>>>0>A>>>0?A:O;Xi[ee>>2]=A;Gi[e+13200+(n<<1)>>1]=y;g=(qi[g+(A>>>3)>>0]|0)<<(A&7)>>>7&1;Xi[ee>>2]=((A|0)<(O|0)&1)+A;Wi[e+13264+n>>0]=g;n=n+1|0}while((n|0)<(qi[o>>0]|0|0))}o=Xi[ee>>2]|0;t=Xi[i>>2]|0;n=Xi[Y>>2]|0}u=(qi[t+(o>>>3)>>0]|0)<<(o&7)>>>7&1;g=((o|0)<(n|0)&1)+o|0;Xi[ee>>2]=g;Wi[e+13316>>0]=u;u=(qi[t+(g>>>3)>>0]|0)<<(g&7)>>>7&1;Xi[ee>>2]=((g|0)<(n|0)&1)+g;Wi[e+13317>>0]=u;Xi[e+160>>2]=0;u=e+164|0;Xi[u>>2]=1;g=Xi[ee>>2]|0;o=Xi[i>>2]|0;A=qi[o+(g>>>3)>>0]|0;n=Xi[Y>>2]|0;t=((g|0)<(n|0)&1)+g|0;Xi[ee>>2]=t;if(A&128>>>(g&7)){l=e+160|0;nA(a,48,126197,M);M=Xi[ee>>2]|0;t=Xi[i>>2]|0;g=qi[t+(M>>>3)>>0]|0;o=Xi[Y>>2]|0;n=((M|0)<(o|0)&1)+M|0;Xi[ee>>2]=n;do{if(g&128>>>(M&7)|0){M=t+(n>>>3)|0;M=(ZT(qi[M>>0]|qi[M+1>>0]<<8|qi[M+2>>0]<<16|qi[M+3>>0]<<24|0)|0)<<(n&7);s=M>>>24;n=n+8|0;n=o>>>0>n>>>0?n:o;Xi[ee>>2]=n;if(M>>>0<285212672){g=88752+(s<<3)|0;M=Xi[g+4>>2]|0;R=l;Xi[R>>2]=Xi[g>>2];Xi[R+4>>2]=M;break}if((s|0)==255){R=t+(n>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(n&7)>>>16;M=n+16|0;M=o>>>0>M>>>0?M:o;Xi[ee>>2]=M;Xi[l>>2]=R;R=t+(M>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(M&7)>>>16;M=M+16|0;Xi[ee>>2]=o>>>0>M>>>0?M:o;Xi[u>>2]=R;break}else{Xi[R>>2]=s;nA(a,24,126211,R);break}}}while(0);n=Xi[ee>>2]|0;o=Xi[i>>2]|0;R=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;r=Xi[Y>>2]|0;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+168>>2]=R;if(R){R=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+172>>2]=R}R=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+176>>2]=R;do{if(R){R=o+(n>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(n&7)>>>29;n=n+3|0;n=r>>>0>n>>>0?n:r;Xi[ee>>2]=n;Xi[e+180>>2]=R;R=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+184>>2]=R;t=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+188>>2]=t;do{if(R|0){if(Xi[k>>2]|0)break;Xi[k>>2]=12}}while(0);if(!t)break;R=o+(n>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(n&7)>>>24;n=n+8|0;n=r>>>0>n>>>0?n:r;Xi[ee>>2]=n;R=R&255;t=e+192|0;Wi[t>>0]=R;s=o+(n>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(n&7)>>>24;n=n+8|0;n=r>>>0>n>>>0?n:r;Xi[ee>>2]=n;s=s&255;l=e+193|0;Wi[l>>0]=s;u=o+(n>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(n&7)>>>24;n=n+8|0;n=r>>>0>n>>>0?n:r;Xi[ee>>2]=n;u=u&255;h=e+194|0;Wi[h>>0]=u;if((R&255)>10)Wi[t>>0]=2;if((s&255)>17)Wi[l>>0]=2;if((u&255)<=10)break;Wi[h>>0]=2}}while(0);R=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;n=((n|0)<(r|0)&1)+n|0;Xi[ee>>2]=n;Xi[e+196>>2]=R;if(!R)l=r;else{Xi[e+200>>2]=cE(i)|0;Xi[e+204>>2]=cE(i)|0;o=Xi[i>>2]|0;n=Xi[ee>>2]|0;l=Xi[Y>>2]|0}u=(qi[o+(n>>>3)>>0]|0)<<(n&7)>>>7&1;s=((n|0)<(l|0)&1)+n|0;Xi[ee>>2]=s;Xi[e+208>>2]=u;u=(qi[o+(s>>>3)>>0]|0)<<(s&7)>>>7&1;s=((s|0)<(l|0)&1)+s|0;Xi[ee>>2]=s;Xi[e+212>>2]=u;u=(qi[o+(s>>>3)>>0]|0)<<(s&7)>>>7&1;s=((s|0)<(l|0)&1)+s|0;Xi[ee>>2]=s;Xi[e+216>>2]=u;u=i+12|0;do{if(((Xi[u>>2]|0)-s|0)>67){o=(Xi[i>>2]|0)+(s>>>3)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;n=s&7;if(((ZT(o|0)|0)<<n&-2048|0)!=-2147483648){t=n;n=o&255;N=115;break}n=e+220|0;Xi[n>>2]=0;nA(a,24,126235,T);l=n;n=Xi[n>>2]|0}else{t=s&7;n=Wi[o+(s>>>3)>>0]|0;N=115}}while(0);if((N|0)==115){n=(n&255)<<t>>>7&1;Xi[ee>>2]=((s|0)<(l|0)&1)+s;l=e+220|0;Xi[l>>2]=n}Xi[C>>2]=Xi[i>>2];Xi[C+4>>2]=Xi[i+4>>2];Xi[C+8>>2]=Xi[i+8>>2];Xi[C+12>>2]=Xi[i+12>>2];Xi[C+16>>2]=Xi[i+16>>2];do{if(n|0){n=e+224|0;Xi[n>>2]=(cE(i)|0)<<1;t=e+228|0;Xi[t>>2]=(cE(i)|0)<<1;o=e+232|0;Xi[o>>2]=(cE(i)|0)<<1;s=(cE(i)|0)<<1;Xi[e+236>>2]=s;if(!f)break;if(!(Xi[a+96>>2]&65536))break;T=Xi[t>>2]|0;N=Xi[o>>2]|0;Xi[D>>2]=Xi[n>>2];Xi[D+4>>2]=T;Xi[D+8>>2]=N;Xi[D+12>>2]=s;nA(a,48,126267,D);Xi[n>>2]=0;Xi[n+4>>2]=0;Xi[n+8>>2]=0;Xi[n+12>>2]=0}}while(0);t=Xi[ee>>2]|0;o=Xi[i>>2]|0;D=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;n=Xi[Y>>2]|0;t=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=t;Xi[e+240>>2]=D;do{if(D){if(((Xi[u>>2]|0)-t|0)<66){nA(a,24,126347,P);Xi[l>>2]=0;t=e+224|0;Xi[t>>2]=0;Xi[t+4>>2]=0;Xi[t+8>>2]=0;Xi[t+12>>2]=0;Xi[i>>2]=Xi[C>>2];Xi[i+4>>2]=Xi[C+4>>2];Xi[i+8>>2]=Xi[C+8>>2];Xi[i+12>>2]=Xi[C+12>>2];Xi[i+16>>2]=Xi[C+16>>2];t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0;u=1}else u=0;s=o+(t>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(t&7)&-65536;t=t+16|0;t=n>>>0>t>>>0?t:n;Xi[ee>>2]=t;l=o+(t>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(t&7)>>>16;t=t+16|0;t=n>>>0>t>>>0?t:n;Xi[ee>>2]=t;s=l|s;Xi[e+244>>2]=s;l=o+(t>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(t&7)&-65536;t=t+16|0;t=n>>>0>t>>>0?t:n;Xi[ee>>2]=t;P=o+(t>>>3)|0;P=(ZT(qi[P>>0]|qi[P+1>>0]<<8|qi[P+2>>0]<<16|qi[P+3>>0]<<24|0)|0)<<(t&7)>>>16;t=t+16|0;t=n>>>0>t>>>0?t:n;Xi[ee>>2]=t;l=P|l;Xi[e+248>>2]=l;if(u){Xi[I>>2]=l;Xi[I+4>>2]=s;nA(a,32,126392,I);t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0}I=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;t=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=t;Xi[e+252>>2]=I;if(I){Xi[e+256>>2]=cE(i)|0;t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0}I=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;t=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=t;Xi[e+260>>2]=I;if(!I)break;SE(i,1,Xi[H>>2]|0);t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0}}while(0);H=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;t=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=t;Xi[e+264>>2]=H;if(H){I=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;H=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=H;Xi[e+268>>2]=I;t=(qi[o+(H>>>3)>>0]|0)<<(H&7)>>>7&1;H=((H|0)<(n|0)&1)+H|0;Xi[ee>>2]=H;Xi[e+272>>2]=t;t=(qi[o+(H>>>3)>>0]|0)<<(H&7)>>>7&1;Xi[ee>>2]=((H|0)<(n|0)&1)+H;Xi[e+276>>2]=t;Xi[e+280>>2]=cE(i)|0;Xi[e+284>>2]=cE(i)|0;Xi[e+288>>2]=cE(i)|0;Xi[e+292>>2]=cE(i)|0;Xi[e+296>>2]=cE(i)|0;t=Xi[ee>>2]|0;n=Xi[Y>>2]|0}o=Xi[i>>2]|0}H=qi[o+(t>>>3)>>0]|0;s=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=s;do{if(H&128>>>(t&7)|0){H=qi[o+(s>>>3)>>0]|0;t=((s|0)<(n|0)&1)+s+7|0;t=n>>>0>t>>>0?t:n;Xi[ee>>2]=t;if(!(H&128>>>(s&7)))break;I=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;H=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=H;Xi[e+13352>>2]=I;I=(qi[o+(H>>>3)>>0]|0)<<(H&7)>>>7&1;H=((H|0)<(n|0)&1)+H|0;Xi[ee>>2]=H;Xi[e+13356>>2]=I;I=(qi[o+(H>>>3)>>0]|0)<<(H&7)>>>7&1;H=((H|0)<(n|0)&1)+H|0;Xi[ee>>2]=H;Xi[e+13360>>2]=I;I=(qi[o+(H>>>3)>>0]|0)<<(H&7)>>>7&1;H=((H|0)<(n|0)&1)+H|0;Xi[ee>>2]=H;Xi[e+13364>>2]=I;I=qi[o+(H>>>3)>>0]|0;t=((H|0)<(n|0)&1)+H|0;Xi[ee>>2]=t;if(I&128>>>(H&7)){nA(a,24,126413,B);t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0}H=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;B=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=B;Xi[e+13368>>2]=H;H=qi[o+(B>>>3)>>0]|0;t=((B|0)<(n|0)&1)+B|0;Xi[ee>>2]=t;if(H&128>>>(B&7)){nA(a,24,126469,z);t=Xi[ee>>2]|0;o=Xi[i>>2]|0;n=Xi[Y>>2]|0}z=(qi[o+(t>>>3)>>0]|0)<<(t&7)>>>7&1;Y=((t|0)<(n|0)&1)+t|0;Xi[ee>>2]=Y;Xi[e+13372>>2]=z;z=qi[o+(Y>>>3)>>0]|0;Xi[ee>>2]=((Y|0)<(n|0)&1)+Y;if(!(z&128>>>(Y&7)))break;nA(a,24,126526,j)}}while(0);if(!f){o=e+20|0;k=o;t=o;o=Xi[o>>2]|0}else{t=e+20|0;o=(Xi[t>>2]|0)+(Xi[e+224>>2]|0)|0;Xi[t>>2]=o;t=e+24|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[e+228>>2]|0);t=e+28|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[e+232>>2]|0);t=e+32|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[e+236>>2]|0);t=e+20|0;k=t}n=31>>>(Xi[L>>2]|0);do{if(n&o){if(Xi[a+92>>2]&1|0)break;o=o&~n;Xi[t>>2]=o;Xi[K>>2]=o;nA(a,24,126583,K);o=Xi[t>>2]|0}}while(0);u=Xi[U>>2]|0;K=Xi[e+24>>2]|0;n=u-o-K|0;t=e+12|0;Xi[t>>2]=n;s=Xi[x>>2]|0;l=Xi[e+28>>2]|0;h=Xi[e+32>>2]|0;r=s-l-h|0;w=e+16|0;Xi[w>>2]=r;f=((u|0)<0)<<31>>31;K=WT(K|0,0,o|0,0)|0;j=Ie;if(!((f|0)>(j|0)|(f|0)==(j|0)&u>>>0>K>>>0?(f=((s|0)<0)<<31>>31,K=WT(h|0,0,l|0,0)|0,j=Ie,(f|0)>(j|0)|(f|0)==(j|0)&s>>>0>K>>>0):0)){Xi[W>>2]=n;Xi[W+4>>2]=r;nA(a,24,126656,W);if(Xi[a+688>>2]&8|0){n=-1094995529;break}nA(a,24,126698,G);u=e+36|0;Xi[u>>2]=0;Xi[u+4>>2]=0;Xi[u+8>>2]=0;Xi[u+12>>2]=0;Xi[k>>2]=0;Xi[k+4>>2]=0;Xi[k+8>>2]=0;Xi[k+12>>2]=0;u=Xi[U>>2]|0;Xi[t>>2]=u;s=Xi[x>>2]|0;Xi[w>>2]=s}o=Xi[d>>2]|0;l=(Xi[v>>2]|0)+o|0;n=e+13336|0;Xi[n>>2]=l;t=o+-1|0;Xi[e+13340>>2]=t;if(l>>>0>6){Xi[X>>2]=l;nA(a,16,126735,X);n=-1094995529;break}if(l>>>0<4){Xi[q>>2]=l;nA(a,16,126764,q);Xi[J>>2]=Xi[n>>2];bM(a,126827,J);n=-1094995529;break}q=1<<l;J=q+-1+u>>l;Xi[e+13384>>2]=J;q=s+-1+q>>l;Xi[e+13388>>2]=q;Xi[e+13392>>2]=Zi(q,J)|0;Xi[e+13396>>2]=u>>o;Xi[e+13400>>2]=s>>o;J=Xi[E>>2]|0;Xi[e+13404>>2]=u>>J;Xi[e+13408>>2]=s>>J;Xi[e+13412>>2]=u>>t;Xi[e+13416>>2]=s>>t;t=l-J|0;Xi[e+13420>>2]=(1<<t)+-1;Xi[e+13448>>2]=((Xi[V>>2]|0)*6|0)+-48;if((1<<o)+-1&(u|s)|0){nA(a,16,126844,Z);n=-1094995529;break}n=Xi[b>>2]|0;if(n>>>0>t>>>0){Xi[Q>>2]=n;nA(a,16,126877,Q);n=-1094995529;break}n=Xi[c>>2]|0;if(n>>>0>t>>>0){Xi[$>>2]=n;nA(a,16,126931,$);n=-1094995529;break}n=Xi[S>>2]|0;if(n>>>0>(l>>>0>5?5:l)>>>0){Xi[ie>>2]=n;nA(a,16,126985,ie);n=-1094995529;break}n=(Xi[i+12>>2]|0)-(Xi[ee>>2]|0)|0;if((n|0)>=0){n=0;break}Xi[re>>2]=0-n;nA(a,16,127028,re);n=-1094995529}}}}}while(0);Ue=fe;return n|0}function FE(e){e=e|0;var i=0,r=0,f=0,l=0;f=e;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));i=e+1536|0;f=e+64|0;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));f=e+128|0;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));f=e+192|0;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));f=e+256|0;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));f=e+320|0;l=f+16|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));r=e+384|0;f=i;l=f+12|0;do{Wi[f>>0]=16;f=f+1|0}while((f|0)<(l|0));f=r;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+448|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+512|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+576|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+640|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+704|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+768|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+832|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+896|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+960|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1024|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1088|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1152|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1216|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1280|0;i=125892;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1344|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1408|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));f=e+1472|0;i=125956;l=f+64|0;do{Wi[f>>0]=Wi[i>>0]|0;f=f+1|0;i=i+1|0}while((f|0)<(l|0));return}function yE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;p=Ue;Ue=Ue+16|0;m=p;h=e+8|0;w=e+16|0;_=0;e:while(1){c=(_|0)>0?64:16;d=(_|0)>1;v=_+-2|0;E=(_|0)==3?3:1;b=1<<(_<<1)+4;k=(_|0)==0;b=(b|0)<64?b:64;S=0;do{u=Xi[h>>2]|0;a=Xi[e>>2]|0;s=qi[a+(u>>>3)>>0]|0;n=Xi[w>>2]|0;l=((u|0)<(n|0)&1)+u|0;Xi[h>>2]=l;if(!(s&128>>>(u&7))){l=cE(e)|0;if(l|0){if(S>>>0<l>>>0){a=6;break e}l=S-l|0;qT(r+(_*384|0)+(S<<6)|0,r+(_*384|0)+(l<<6)|0,c|0)|0;if(d)Wi[r+1536+(v*6|0)+S>>0]=Wi[r+1536+(v*6|0)+l>>0]|0}}else{if(d){t=a+(l>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(l&7);if(t>>>0>134217727){u=t>>>23;l=(qi[98538+u>>0]|0)+l|0;Xi[h>>2]=n>>>0>l>>>0?l:n;l=Wi[99562+u>>0]|0}else{s=t>>>0>65535;o=s?t>>>16:t;s=s?16:0;u=(o&65280|0)==0;s=(qi[145894+(u?o:o>>>8)>>0]|0)+(u?s:s|8)|0;l=31-s+l|0;l=n>>>0>l>>>0?l:n;u=a+(l>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(l&7)>>>s;l=l+(32-s)|0;Xi[h>>2]=n>>>0>l>>>0?l:n;l=u&1;l=(u>>>1^0-l)+l|0}s=l+8|0;Wi[r+1536+(v*6|0)+S>>0]=s;o=0}else{o=0;s=8}do{if(k)u=(qi[123665+o>>0]<<2)+(qi[123649+o>>0]|0)|0;else u=(qi[123745+o>>0]<<3)+(qi[123681+o>>0]|0)|0;l=Xi[h>>2]|0;a=Xi[w>>2]|0;n=Xi[e>>2]|0;t=n+(l>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(l&7);if(t>>>0>134217727){t=t>>>23;l=(qi[98538+t>>0]|0)+l|0;Xi[h>>2]=a>>>0>l>>>0?l:a;l=Wi[99562+t>>0]|0}else{F=t>>>0>65535;y=F?t>>>16:t;F=F?16:0;t=(y&65280|0)==0;F=(qi[145894+(t?y:y>>>8)>>0]|0)+(t?F:F|8)|0;l=31-F+l|0;l=a>>>0>l>>>0?l:a;t=n+(l>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(l&7)>>>F;l=l+(32-F)|0;Xi[h>>2]=a>>>0>l>>>0?l:a;l=t&1;l=(t>>>1^0-l)+l|0}s=(s+256+l|0)%256|0;Wi[r+(_*384|0)+(S<<6)+u>>0]=s;o=o+1|0}while((o|0)!=(b|0))}S=S+E|0}while((S|0)<6);_=_+1|0;if((_|0)>=4){a=23;break}}if((a|0)==6){Xi[m>>2]=l;nA(i,16,126020,m);l=-1094995529}else if((a|0)==23)if((Xi[f+4>>2]|0)==3){l=0;do{Wi[r+1216+l>>0]=Wi[r+832+l>>0]|0;Wi[r+1280+l>>0]=Wi[r+896+l>>0]|0;Wi[r+1408+l>>0]=Wi[r+1024+l>>0]|0;Wi[r+1472+l>>0]=Wi[r+1088+l>>0]|0;l=l+1|0}while((l|0)!=64);Wi[r+1543>>0]=Wi[r+1537>>0]|0;Wi[r+1544>>0]=Wi[r+1538>>0]|0;Wi[r+1546>>0]=Wi[r+1540>>0]|0;Wi[r+1547>>0]=Wi[r+1541>>0]|0;l=0}else l=0;Ue=p;return l|0}function OE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;h=Ue;Ue=Ue+48|0;n=h+8|0;u=h+36|0;l=h+32|0;t=HA(13452)|0;Xi[u>>2]=t;o=t;do{if(!t)f=-12;else{s=t+4|0;a=Xi[s>>2]|0;nA(i,48,127053,h);f=pE(a,e,l,f,r,i)|0;if((f|0)<0){UA(u);break}l=Xi[l>>2]|0;if(Xi[i+680>>2]&4|0){k=Xi[a+13376>>2]|0;w=Xi[a+13380>>2]|0;f=Xi[a+12>>2]|0;e=Xi[a+16>>2]|0;a=zM(Xi[a+60>>2]|0)|0;Xi[n>>2]=l;Xi[n+4>>2]=k;Xi[n+8>>2]=w;Xi[n+12>>2]=f;Xi[n+16>>2]=e;Xi[n+20>>2]=a;nA(i,48,127067,n)}f=r+64+(l<<2)|0;e=Xi[f>>2]|0;if(e|0?(kR(Xi[e+4>>2]|0,Xi[s>>2]|0,Xi[t+8>>2]|0)|0)==0:0){UA(u);f=0;break}mE(r,l);Xi[f>>2]=o;f=0}}while(0);Ue=h;return f|0}function AE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;L=Ue;Ue=Ue+160|0;C=L+136|0;F=L+128|0;p=L+120|0;_=L+112|0;S=L+104|0;v=L+96|0;d=L+88|0;c=L+80|0;b=L+72|0;k=L+64|0;w=L+56|0;h=L+48|0;u=L+40|0;s=L+32|0;t=L+24|0;a=L+16|0;l=L+8|0;f=L;P=L+144|0;m=L+140|0;o=iA(1692)|0;Xi[m>>2]=o;e:do{if(!o)f=-12;else{D=PA(o,1692,183,0,0)|0;Xi[P>>2]=D;if(!D){vA(m);f=-12;break}nA(i,48,127138,f);Wi[o+53>>0]=1;Xi[o+44>>2]=1;Xi[o+48>>2]=1;Wi[o+52>>0]=1;Wi[o+57>>0]=0;Xi[o+60>>2]=0;Xi[o+64>>2]=0;Wi[o+1629>>0]=2;D=cE(e)|0;i:do{if(D>>>0>255){Xi[l>>2]=D;nA(i,16,127152,l);f=-1094995529}else{l=cE(e)|0;Xi[o>>2]=l;if(l>>>0>31){Xi[a>>2]=l;nA(i,16,125228,a);f=-1094995529;break}f=Xi[r+64+(l<<2)>>2]|0;if(!f){Xi[t>>2]=l;nA(i,16,127177,t);f=-1094995529;break}T=Xi[f+4>>2]|0;N=e+8|0;a=Xi[N>>2]|0;f=Xi[e>>2]|0;l=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;E=e+16|0;t=Xi[E>>2]|0;a=((a|0)<(t|0)&1)+a|0;Xi[N>>2]=a;Wi[o+41>>0]=l;l=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(t|0)&1)+a|0;Xi[N>>2]=a;Wi[o+39>>0]=l;l=f+(a>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(a&7)>>>29;a=a+3|0;a=t>>>0>a>>>0?a:t;Xi[N>>2]=a;Xi[o+1624>>2]=l;l=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(t|0)&1)+a|0;Xi[N>>2]=a;Wi[o+4>>0]=l;f=qi[f+(a>>>3)>>0]<<(a&7)>>>7&1;Xi[N>>2]=((a|0)<(t|0)&1)+a;Wi[o+5>>0]=f;Xi[o+8>>2]=(cE(e)|0)+1;Xi[o+12>>2]=(cE(e)|0)+1;f=Xi[N>>2]|0;a=Xi[E>>2]|0;t=Xi[e>>2]|0;l=t+(f>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(f&7);if(l>>>0>134217727){R=l>>>23;l=(qi[98538+R>>0]|0)+f|0;l=a>>>0>l>>>0?l:a;Xi[N>>2]=l;f=Wi[99562+R>>0]|0}else{R=l>>>0>65535;M=R?l>>>16:l;l=R?16:0;R=(M&65280|0)==0;l=(qi[145894+(R?M:M>>>8)>>0]|0)+(R?l:l|8)|0;f=31-l+f|0;f=a>>>0>f>>>0?f:a;R=t+(f>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(f&7)>>>l;l=f+(32-l)|0;l=a>>>0>l>>>0?l:a;Xi[N>>2]=l;f=R&1;f=(R>>>1^0-f)+f|0}o=Xi[m>>2]|0;Xi[o+16>>2]=f;R=qi[t+(l>>>3)>>0]<<(l&7)>>>7&1;f=((l|0)<(a|0)&1)+l|0;Xi[N>>2]=f;Wi[o+20>>0]=R;R=qi[t+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(a|0)&1)+f|0;Xi[N>>2]=f;Wi[o+21>>0]=R;R=qi[t+(f>>>3)>>0]<<(f&7)>>>7&1;Xi[N>>2]=((f|0)<(a|0)&1)+f;R=R&255;Wi[o+22>>0]=R;f=o+24|0;Xi[f>>2]=0;do{if(R<<24>>24){l=cE(e)|0;Xi[f>>2]=l;if((l|0)>=0?l>>>0<=(Xi[T+13324>>2]|0)>>>0:0)break;Xi[s>>2]=l;nA(i,16,127201,s);f=-1094995529;break i}}while(0);f=Xi[N>>2]|0;l=Xi[E>>2]|0;a=Xi[e>>2]|0;t=a+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7);if(t>>>0>134217727){R=t>>>23;t=(qi[98538+R>>0]|0)+f|0;t=l>>>0>t>>>0?t:l;Xi[N>>2]=t;f=Wi[99562+R>>0]|0}else{R=t>>>0>65535;M=R?t>>>16:t;t=R?16:0;R=(M&65280|0)==0;t=(qi[145894+(R?M:M>>>8)>>0]|0)+(R?t:t|8)|0;f=31-t+f|0;f=l>>>0>f>>>0?f:l;R=a+(f>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(f&7)>>>t;t=f+(32-t)|0;t=l>>>0>t>>>0?t:l;Xi[N>>2]=t;f=R&1;f=(R>>>1^0-f)+f|0}Xi[o+28>>2]=f;if((f+12|0)>>>0>24){Xi[u>>2]=f;nA(i,16,127239,u);f=-1094995529;break}f=a+(t>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(t&7);if(f>>>0>134217727){f=f>>>23;t=(qi[98538+f>>0]|0)+t|0;t=l>>>0>t>>>0?t:l;Xi[N>>2]=t;f=Wi[99562+f>>0]|0}else{R=f>>>0>65535;M=R?f>>>16:f;f=R?16:0;R=(M&65280|0)==0;f=(qi[145894+(R?M:M>>>8)>>0]|0)+(R?f:f|8)|0;t=31-f+t|0;t=l>>>0>t>>>0?t:l;R=a+(t>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(t&7)>>>f;t=t+(32-f)|0;t=l>>>0>t>>>0?t:l;Xi[N>>2]=t;f=R&1;f=(R>>>1^0-f)+f|0}Xi[o+32>>2]=f;if((f+12|0)>>>0>24){Xi[h>>2]=f;nA(i,16,127274,h);f=-1094995529;break}R=qi[a+(t>>>3)>>0]<<(t&7)>>>7&1;f=((t|0)<(l|0)&1)+t|0;Xi[N>>2]=f;Wi[o+36>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[o+37>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[o+38>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[o+40>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;R=R&255;Wi[o+42>>0]=R;M=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[o+43>>0]=M;r:do{if(!(R<<24>>24))h=o;else{a=o+44|0;Xi[a>>2]=(cE(e)|0)+1;f=cE(e)|0;l=f+1|0;Xi[o+48>>2]=l;a=Xi[a>>2]|0;if((a|0)>=1?(a|0)<(Xi[T+13376>>2]|0):0){do{if((l|0)>=1){if((l|0)>=(Xi[T+13380>>2]|0))break;if(a>>>0>536870910)f=0;else f=rA(a<<2)|0;Xi[o+1648>>2]=f;l=Xi[m>>2]|0;f=Xi[l+48>>2]|0;if(f>>>0>536870910)f=0;else f=rA(f<<2)|0;Xi[l+1652>>2]=f;h=Xi[m>>2]|0;u=h+1648|0;t=Xi[u>>2]|0;if(!t){f=-12;break i}w=h+1652|0;if(!(Xi[w>>2]|0)){f=-12;break i}f=Xi[N>>2]|0;a=Xi[e>>2]|0;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;l=Xi[E>>2]|0;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;R=R&255;Wi[h+52>>0]=R;do{if(!(R<<24>>24)){s=h+44|0;R=Xi[s>>2]|0;f=R+-1|0;if((R|0)>1){l=0;f=0;o=0;while(1){a=(cE(e)|0)+1|0;t=Xi[u>>2]|0;Xi[t+(o<<2)>>2]=a;l=WT(a|0,0,l|0,f|0)|0;a=Ie;o=o+1|0;f=(Xi[s>>2]|0)+-1|0;if((o|0)>=(f|0)){s=a;o=l;break}else f=a}}else{s=0;o=0}l=Xi[T+13384>>2]|0;a=((l|0)<0)<<31>>31;if(!(a>>>0>s>>>0|(a|0)==(s|0)&l>>>0>o>>>0)){nA(i,16,127390,b);f=-1094995529;break i}R=YT(l|0,a|0,o|0,s|0)|0;Xi[t+(f<<2)>>2]=R;t=h+48|0;R=Xi[t>>2]|0;f=R+-1|0;if((R|0)>1){l=0;f=0;a=0;while(1){o=(cE(e)|0)+1|0;Xi[(Xi[w>>2]|0)+(a<<2)>>2]=o;l=WT(o|0,0,l|0,f|0)|0;o=Ie;a=a+1|0;f=(Xi[t>>2]|0)+-1|0;if((a|0)>=(f|0))break;else f=o}}else{o=0;l=0}a=Xi[T+13388>>2]|0;t=((a|0)<0)<<31>>31;if(t>>>0>o>>>0|(t|0)==(o|0)&a>>>0>l>>>0){a=YT(a|0,t|0,l|0,o|0)|0;Xi[(Xi[w>>2]|0)+(f<<2)>>2]=a;f=Xi[N>>2]|0;a=Xi[e>>2]|0;l=Xi[E>>2]|0;break}else{nA(i,16,127412,c);f=-1094995529;break i}}}while(0);R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[h+53>>0]=R;break r}}while(0);Xi[k>>2]=f;nA(i,16,127351,k);f=-1094995529;break i}Xi[w>>2]=a+-1;nA(i,16,127309,w);f=-1094995529;break i}}while(0);R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[h+54>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;R=R&255;Wi[h+55>>0]=R;do{if(R<<24>>24){R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;Wi[h+56>>0]=R;R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;R=R&255;Wi[h+57>>0]=R;if(!(R<<24>>24)){t=a+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7);if(t>>>0>134217727){s=t>>>23;f=(qi[98538+s>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[N>>2]=f;s=Wi[99562+s>>0]|0}else{s=t>>>0>65535;M=s?t>>>16:t;s=s?16:0;R=(M&65280|0)==0;s=(qi[145894+(R?M:M>>>8)>>0]|0)+(R?s:s|8)|0;f=31-s+f|0;f=l>>>0>f>>>0?f:l;R=a+(f>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(f&7)>>>s;f=f+(32-s)|0;f=l>>>0>f>>>0?f:l;Xi[N>>2]=f;s=R&1;s=(R>>>1^0-s)+s|0}u=s<<1;Xi[h+60>>2]=u;t=a+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7);if(t>>>0>134217727){t=t>>>23;f=(qi[98538+t>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[N>>2]=f;t=Wi[99562+t>>0]|0}else{R=t>>>0>65535;M=R?t>>>16:t;t=R?16:0;R=(M&65280|0)==0;t=(qi[145894+(R?M:M>>>8)>>0]|0)+(R?t:t|8)|0;f=31-t+f|0;f=l>>>0>f>>>0?f:l;R=a+(f>>>3)|0;R=(ZT(qi[R>>0]|qi[R+1>>0]<<8|qi[R+2>>0]<<16|qi[R+3>>0]<<24|0)|0)<<(f&7)>>>t;f=f+(32-t)|0;f=l>>>0>f>>>0?f:l;Xi[N>>2]=f;t=R&1;t=(R>>>1^0-t)+t|0}o=t<<1;Xi[h+64>>2]=o;if((u+13|0)>>>0>26){Xi[d>>2]=s;nA(i,16,127435,d);f=-1094995529;break i}if((o+13|0)>>>0<=26)break;Xi[v>>2]=t;nA(i,16,127474,v);f=-1094995529;break i}}}while(0);R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[N>>2]=f;R=R&255;Wi[h+68>>0]=R;if(R<<24>>24){f=h+69|0;FE(f);f=yE(e,i,f,T)|0;if((f|0)<0)break;f=Xi[N>>2]|0;a=Xi[e>>2]|0;l=Xi[E>>2]|0}R=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;Xi[N>>2]=((f|0)<(l|0)&1)+f;Wi[h+1617>>0]=R;f=cE(e)|0;R=f+2|0;Xi[h+1620>>2]=R;M=T+13336|0;if(R>>>0>(Xi[M>>2]|0)>>>0){Xi[S>>2]=f;nA(i,16,127511,S);f=-1094995529;break}R=Xi[N>>2]|0;a=Xi[e>>2]|0;g=qi[a+(R>>>3)>>0]<<(R&7)>>>7&1;f=Xi[E>>2]|0;R=((R|0)<(f|0)&1)+R|0;Xi[N>>2]=R;Wi[h+1628>>0]=g;g=qi[a+(R>>>3)>>0]|0;l=((R|0)<(f|0)&1)+R|0;Xi[N>>2]=l;if((g&128>>>(R&7)|0)!=0?(R=qi[a+(l>>>3)>>0]|0,n=((l|0)<(f|0)&1)+l+7|0,n=f>>>0>n>>>0?n:f,Xi[N>>2]=n,(R&128>>>(l&7)|0)!=0&(Wi[T+302>>0]|0)==4):0){if(!(Wi[h+21>>0]|0))l=a;else{Wi[h+1629>>0]=(cE(e)|0)+2;n=Xi[N>>2]|0;l=Xi[e>>2]|0;f=Xi[E>>2]|0}R=qi[l+(n>>>3)>>0]<<(n&7)>>>7&1;g=((n|0)<(f|0)&1)+n|0;Xi[N>>2]=g;Wi[h+1630>>0]=R;R=qi[l+(g>>>3)>>0]<<(g&7)>>>7&1;Xi[N>>2]=((g|0)<(f|0)&1)+g;R=R&255;Wi[h+1631>>0]=R;if(!(R<<24>>24))f=h;else{Wi[h+1632>>0]=cE(e)|0;R=cE(e)|0;l=h+1633|0;Wi[l>>0]=R;if((R&255)>>>0<5)f=0;else{nA(i,16,127562,_);f=-1094995529;break}while(1){R=cE(e)|0;R=((R&1)+255^R>>>1)+1&255;Wi[h+1634+f>>0]=R;if(R<<24>>24)nA(i,24,127626,p);R=cE(e)|0;R=((R&1)+255^R>>>1)+1&255;Wi[h+1639+f>>0]=R;if(R<<24>>24)nA(i,24,127626,F);if((f|0)<(qi[l>>0]|0))f=f+1|0;else break}f=Xi[m>>2]|0}Wi[h+1644>>0]=cE(e)|0;Wi[h+1645>>0]=cE(e)|0}else f=h;g=f+44|0;l=(Xi[g>>2]|0)+1|0;if(l>>>0>536870910)l=0;else l=rA(l<<2)|0;A=f+1656|0;Xi[A>>2]=l;O=f+48|0;l=(Xi[O>>2]|0)+1|0;if(l>>>0>536870910)l=0;else l=rA(l<<2)|0;y=f+1660|0;Xi[y>>2]=l;R=T+13384|0;l=Xi[R>>2]|0;if(l>>>0>536870910)l=0;else l=rA(l<<2)|0;s=f+1664|0;Xi[s>>2]=l;a=Xi[A>>2]|0;if(!a){f=-12;break}if((l|0)==0|(Xi[y>>2]|0)==0){f=-12;break}if(Wi[f+52>>0]|0){n=f+1648|0;l=Xi[n>>2]|0;if(!l){l=Xi[g>>2]|0;if(l>>>0>536870910)l=0;else l=rA(l<<2)|0;Xi[n>>2]=l;a=Xi[O>>2]|0;if(a>>>0>536870910)a=0;else{a=rA(a<<2)|0;l=Xi[n>>2]|0}Xi[f+1652>>2]=a;if(!l){f=-12;break}else t=a}else t=Xi[f+1652>>2]|0;if(!t){f=-12;break}a=Xi[g>>2]|0;if((a|0)>0){n=0;do{F=n;n=n+1|0;p=Xi[R>>2]|0;Xi[l+(F<<2)>>2]=((Zi(p,n)|0)/(a|0)|0)-((Zi(p,F)|0)/(a|0)|0);a=Xi[g>>2]|0}while((n|0)<(a|0))}l=Xi[O>>2]|0;if((l|0)>0){n=T+13388|0;a=0;do{F=a;a=a+1|0;p=Xi[n>>2]|0;Xi[t+(F<<2)>>2]=((Zi(p,a)|0)/(l|0)|0)-((Zi(p,F)|0)/(l|0)|0);l=Xi[O>>2]|0}while((a|0)<(l|0))}a=Xi[A>>2]|0}Xi[a>>2]=0;if((Xi[g>>2]|0)>0){l=Xi[f+1648>>2]|0;n=0;t=0;do{n=(Xi[l+(t<<2)>>2]|0)+n|0;t=t+1|0;Xi[a+(t<<2)>>2]=n}while((t|0)<(Xi[g>>2]|0))}l=Xi[y>>2]|0;Xi[l>>2]=0;if((Xi[O>>2]|0)>0){n=Xi[f+1652>>2]|0;t=0;o=0;do{t=(Xi[n+(o<<2)>>2]|0)+t|0;o=o+1|0;Xi[l+(o<<2)>>2]=t}while((o|0)<(Xi[O>>2]|0))}l=Xi[R>>2]|0;if((l|0)>0){n=Xi[s>>2]|0;t=0;o=0;do{o=(t>>>0>(Xi[a+(o<<2)>>2]|0)>>>0&1)+o|0;Xi[n+(t<<2)>>2]=o;t=t+1|0;l=Xi[R>>2]|0}while((t|0)<(l|0))}E=Zi(Xi[T+13388>>2]|0,l)|0;if(E>>>0>536870910){F=f+1668|0;Xi[F>>2]=0;a=f+1672|0;Xi[a>>2]=0;l=0}else{l=E<<2;F=f+1668|0;Xi[F>>2]=rA(l)|0;a=f+1672|0;Xi[a>>2]=rA(l)|0;l=rA(l)|0}n=f+1676|0;Xi[n>>2]=l;p=T+13420|0;l=(Xi[p>>2]|0)+2|0;l=Zi(l,l)|0;if(l>>>0>536870910)l=0;else l=rA(l<<2)|0;m=f+1688|0;Xi[m>>2]=l;_=Xi[F>>2]|0;if(!_){f=-12;break}v=Xi[a>>2]|0;if(!v){f=-12;break}S=Xi[n>>2]|0;if((l|0)==0|(S|0)==0){f=-12;break}if((E|0)>0){u=f+1652|0;h=Xi[y>>2]|0;w=Xi[f+1648>>2]|0;k=Xi[A>>2]|0;d=0;do{s=Xi[R>>2]|0;b=(d|0)%(s|0)|0;c=(d|0)/(s|0)|0;l=Xi[g>>2]|0;n=0;while(1){if((n|0)>=(l|0)){n=0;break}a=n+1|0;if(b>>>0<(Xi[k+(a<<2)>>2]|0)>>>0)break;else n=a}l=Xi[O>>2]|0;t=0;while(1){if((t|0)>=(l|0)){t=0;break}a=t+1|0;if(c>>>0<(Xi[h+(a<<2)>>2]|0)>>>0)break;else t=a}if((n|0)>0){a=Xi[(Xi[u>>2]|0)+(t<<2)>>2]|0;o=0;l=0;do{l=(Zi(Xi[w+(o<<2)>>2]|0,a)|0)+l|0;o=o+1|0}while((o|0)!=(n|0))}else l=0;if((t|0)>0){a=Xi[u>>2]|0;o=0;do{l=(Zi(Xi[a+(o<<2)>>2]|0,s)|0)+l|0;o=o+1|0}while((o|0)!=(t|0))}c=Zi(Xi[w+(n<<2)>>2]|0,c-(Xi[h+(t<<2)>>2]|0)|0)|0;c=l+b+c-(Xi[k+(n<<2)>>2]|0)|0;Xi[_+(d<<2)>>2]=c;Xi[v+(c<<2)>>2]=d;d=d+1|0}while((d|0)!=(E|0))}l=Xi[O>>2]|0;do{if((l|0)>0){t=l;a=Xi[g>>2]|0;b=0;l=0;do{n=b;b=b+1|0;if((a|0)>0){w=Xi[y>>2]|0;k=w+(b<<2)|0;w=w+(n<<2)|0;n=Xi[k>>2]|0;t=0;do{o=Xi[w>>2]|0;if(o>>>0<n>>>0){u=Xi[A>>2]|0;h=u+(t<<2)|0;t=t+1|0;u=u+(t<<2)|0;a=Xi[u>>2]|0;s=o;do{o=Xi[h>>2]|0;if(o>>>0<a>>>0){n=o;do{Xi[S+(Xi[_+((Zi(Xi[R>>2]|0,s)|0)+n<<2)>>2]<<2)>>2]=l;n=n+1|0;a=Xi[u>>2]|0}while(n>>>0<a>>>0);n=Xi[k>>2]|0}s=s+1|0}while(s>>>0<n>>>0);a=Xi[g>>2]|0}else t=t+1|0;l=l+1|0}while((t|0)<(a|0));t=Xi[O>>2]|0}}while((b|0)<(t|0));if(l>>>0<=536870910)break;Xi[f+1680>>2]=0;f=-12;break i}else l=0}while(0);s=rA(l<<2)|0;Xi[f+1680>>2]=s;if(!s){f=-12;break}l=Xi[O>>2]|0;if((l|0)>0){a=Xi[g>>2]|0;o=0;do{if((a|0)>0){n=(Xi[y>>2]|0)+(o<<2)|0;t=Xi[A>>2]|0;l=0;do{_=Zi(Xi[R>>2]|0,Xi[n>>2]|0)|0;Xi[s+((Zi(a,o)|0)+l<<2)>>2]=(Xi[t+(l<<2)>>2]|0)+_;l=l+1|0;a=Xi[g>>2]|0}while((l|0)<(a|0));l=Xi[O>>2]|0}o=o+1|0}while((o|0)<(l|0))}k=(Xi[M>>2]|0)-(Xi[T+13328>>2]|0)|0;l=Xi[p>>2]|0;b=l+3|0;w=Xi[m>>2]|0;Xi[f+1684>>2]=w+(b<<2);do{if((l|0)>-2){l=l+2|0;a=0;do{Xi[w+((Zi(a,l)|0)<<2)>>2]=-1;Xi[w+(a<<2)>>2]=-1;a=a+1|0;f=Xi[p>>2]|0;l=f+2|0}while((a|0)<(l|0));if((f|0)<=-1)break;u=k<<1;h=(k|0)>0;s=0;while(1){if((f|0)>-1){t=s>>k;o=Xi[F>>2]|0;n=0;while(1){l=Xi[o+((Zi(Xi[R>>2]|0,t)|0)+(n>>k)<<2)>>2]<<u;if(h){a=0;do{T=1<<a;l=((T&s|0)==0?0:T<<1<<a)+l+((T&n|0)==0?0:T<<a)|0;a=a+1|0}while((a|0)!=(k|0))}Xi[w+(n+b+(Zi(f+2|0,s)|0)<<2)>>2]=l;f=Xi[p>>2]|0;if((n|0)<(f|0))n=n+1|0;else break}}if((s|0)<(f|0))s=s+1|0;else break}}}while(0);f=(Xi[e+12>>2]|0)-(Xi[N>>2]|0)|0;if((f|0)<0){Xi[C>>2]=0-f;nA(i,16,127661,C);f=0;break}l=r+192+(D<<2)|0;a=Xi[l>>2]|0;do{if(a|0){f=r+1224|0;if((Xi[f>>2]|0)!=(Xi[a+4>>2]|0))break;Xi[f>>2]=0}}while(0);UA(l);Xi[l>>2]=Xi[P>>2];f=0;break e}}while(0);UA(P)}}while(0);Ue=L;return f|0}function gE(e,i){e=e|0;i=i|0;var r=0;e=Ue;Ue=Ue+16|0;r=e;Xi[r>>2]=i;vA(i+1648|0);vA(i+1652|0);vA(i+1656|0);vA(i+1660|0);vA(i+1664|0);vA(i+1668|0);vA(i+1672|0);vA(i+1680|0);vA(i+1676|0);vA(i+1688|0);vA(r);Ue=e;return}function ME(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Xi[i>>2]|0;if((f|0?Xi[f+248>>2]|0:0)?(l=i+78|0,f=(qi[l>>0]|0)&(r^255)&255,Wi[l>>0]=f,f<<24>>24==0):0){BO(Xi[e+4>>2]|0,i+4|0);UA(i+56|0);Xi[i+16>>2]=0;UA(i+64|0);UA(i+60|0);Xi[i+24>>2]=0;Xi[i+20>>2]=0;Xi[i+36>>2]=0;UA(i+68|0);Xi[i+72>>2]=0}return}function RE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;a=Xi[e+1412>>2]|0;l=Xi[a+13336>>2]|0;f=(Zi(f>>l,Xi[a+13384>>2]|0)|0)+(r>>l)|0;return Xi[(Xi[i+24>>2]|0)+(Xi[(Xi[(Xi[e+1416>>2]|0)+1668>>2]|0)+(f<<2)>>2]<<2)>>2]|0}function TE(e){e=e|0;var i=0;i=0;do{ME(e,e+3520+(i*80|0)|0,6);i=i+1|0}while((i|0)!=32);return}function NE(e){e=e|0;var i=0;i=0;do{ME(e,e+3520+(i*80|0)|0,-1);i=i+1|0}while((i|0)!=32);return}function DE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;l=t;n=e+7980|0;f=0;while(1){if((Xi[(Xi[e+3520+(f*80|0)>>2]|0)+248>>2]|0?(Gi[e+3520+(f*80|0)+76>>1]|0)==(Gi[n>>1]|0):0)?(Xi[e+3520+(f*80|0)+32>>2]|0)==(r|0):0){a=5;break}f=f+1|0;if(f>>>0>=32){a=7;break}}if((a|0)==5){f=Xi[e+4>>2]|0;Xi[l>>2]=r;nA(f,16,127686,l);f=-1094995529}else if((a|0)==7){f=CE(e)|0;if(!f)f=-12;else{Xi[i>>2]=Xi[f>>2];Xi[e+3516>>2]=f;Wi[f+78>>0]=(Wi[e+2430>>0]|0)==0?2:3;Xi[f+32>>2]=r;Gi[f+76>>1]=Gi[n>>1]|0;f=f+40|0;e=(Xi[e+1412>>2]|0)+20|0;Xi[f>>2]=Xi[e>>2];Xi[f+4>>2]=Xi[e+4>>2];Xi[f+8>>2]=Xi[e+8>>2];Xi[f+12>>2]=Xi[e+12>>2];f=0}}Ue=t;return f|0}function CE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+32|0;i=h+16|0;u=h;f=0;while(1){r=e+3520+(f*80|0)|0;if(!(Xi[(Xi[r>>2]|0)+248>>2]|0)){i=r;o=r;s=f;r=3;break}f=f+1|0;if(f>>>0>=32){r=18;break}}do{if((r|0)==3){t=e+4|0;if((xO(Xi[t>>2]|0,e+3520+(s*80|0)+4|0,1)|0)<0)i=0;else{f=HA((Xi[e+8e3>>2]|0)*392|0)|0;a=e+3520+(s*80|0)+64|0;Xi[a>>2]=f;if((f|0?(l=KA(Xi[e+1420>>2]|0)|0,Xi[e+3520+(s*80|0)+56>>2]=l,l|0):0)?(Xi[e+3520+(s*80|0)+16>>2]=Xi[l+4>>2],n=KA(Xi[e+1424>>2]|0)|0,Xi[e+3520+(s*80|0)+60>>2]=n,n|0):0){r=Xi[n+4>>2]|0;f=e+3520+(s*80|0)+24|0;Xi[f>>2]=r;l=Xi[e+1412>>2]|0;l=Zi(Xi[l+13388>>2]|0,Xi[l+13384>>2]|0)|0;Xi[e+3520+(s*80|0)+28>>2]=l;if((l|0)>0?(Xi[r>>2]=Xi[(Xi[a>>2]|0)+4>>2],(l|0)>1):0){r=1;do{Xi[(Xi[f>>2]|0)+(r<<2)>>2]=Xi[(Xi[a>>2]|0)+4>>2];r=r+1|0}while((r|0)<(l|0))}n=Xi[e+8116>>2]|0;r=Xi[o>>2]|0;Xi[r+216>>2]=(n|0)==1&1;Xi[r+212>>2]=(n+-1|0)>>>0<2&1;r=Xi[(Xi[t>>2]|0)+704>>2]|0;if(!r)break;f=e+3520+(s*80|0)+72|0;if(Xi[f>>2]|0){Xi[u>>2]=127720;Xi[u+4>>2]=127752;Xi[u+8>>2]=116;nA(0,0,150445,u);$e()}r=Xi[r+40>>2]|0;if(!r)break;r=HA(r)|0;Xi[e+3520+(s*80|0)+68>>2]=r;if(r|0){Xi[f>>2]=Xi[r+4>>2];break}}ME(e,i,-1);i=0}}else if((r|0)==18){nA(Xi[e+4>>2]|0,16,127775,i);i=0}}while(0);Ue=h;return i|0}function PE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+16|0;c=d;s=e+3042|0;u=e+6116|0;h=e+6080|0;w=e+7982|0;n=(r|0)==0;t=e+7980|0;o=e+1412|0;l=0;while(1){if((Wi[s>>0]|0)==1?(Xi[u>>2]|0)==1:0){f=0;do{r=e+3520+(f*80|0)|0;if(((Wi[e+3520+(f*80|0)+78>>0]&8)==0?(Xi[e+3520+(f*80|0)+32>>2]|0)!=(Xi[h>>2]|0):0)?(Gi[e+3520+(f*80|0)+76>>1]|0)==(Gi[w>>1]|0):0)ME(e,r,1);f=f+1|0}while((f|0)!=32);a=0;f=2147483647;r=0}else{a=0;f=2147483647;r=0}do{if((Wi[e+3520+(a*80|0)+78>>0]&1)!=0?(Gi[e+3520+(a*80|0)+76>>1]|0)==(Gi[w>>1]|0):0){v=Xi[e+3520+(a*80|0)+32>>2]|0;E=(r|0)==0|(v|0)<(f|0);l=E?a:l;f=E?v:f;r=r+1|0}a=a+1|0}while((a|0)!=32);if(((n?(Gi[w>>1]|0)==(Gi[t>>1]|0):0)?(k=Xi[o>>2]|0,k|0):0)?(r|0)<=(Xi[k+76+(((Xi[k+72>>2]|0)+-1|0)*12|0)+4>>2]|0):0){r=0;break}if(r|0){u=l;b=18;break}r=Gi[w>>1]|0;if(r<<16>>16==(Gi[t>>1]|0)){r=0;break}Gi[w>>1]=(r&65535)+1&255}if((b|0)==18){f=e+3520+(u*80|0)|0;r=Xi[f>>2]|0;l=Wg(Xi[r+80>>2]|0)|0;s=(Xi[l+32>>2]|0)>8&1;r=qg(i,r)|0;if(!(Wi[e+3520+(u*80|0)+78>>0]&8))ME(e,f,1);else ME(e,f,9);if((r|0)>=0){o=l+5|0;r=l+6|0;f=Xi[e+3520+(u*80|0)+40>>2]|0;l=Xi[e+3520+(u*80|0)+48>>2]|0;t=0;do{if((t|0)>0){a=qi[o>>0]|0;n=qi[r>>0]|0}else{a=0;n=0}v=(Zi(l>>>n,Xi[i+32+(t<<2)>>2]|0)|0)+(f>>>a<<s)|0;E=i+(t<<2)|0;Xi[E>>2]=(Xi[E>>2]|0)+v;t=t+1|0}while((t|0)!=3);r=Xi[e+4>>2]|0;Xi[c>>2]=Xi[e+3520+(u*80|0)+32>>2];nA(r,48,127810,c);r=1}}Ue=d;return r|0}function LE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;a=e+7982|0;l=e+6080|0;i=0;r=0;do{if((Wi[e+3520+(r*80|0)+78>>0]|0)!=0?(Gi[e+3520+(r*80|0)+76>>1]|0)==(Gi[a>>1]|0):0)i=((Xi[e+3520+(r*80|0)+32>>2]|0)!=(Xi[l>>2]|0)&1)+i|0;r=r+1|0}while((r|0)!=32);f=Xi[e+1412>>2]|0;if(f|0?(i|0)>=(Xi[f+76+(((Xi[f+72>>2]|0)+-1|0)*12|0)>>2]|0):0){f=0;i=2147483647;do{r=Wi[e+3520+(f*80|0)+78>>0]|0;if(r<<24>>24!=0?(Gi[e+3520+(f*80|0)+76>>1]|0)==(Gi[a>>1]|0):0){n=Xi[e+3520+(f*80|0)+32>>2]|0;i=(n|0)<(i|0)&(r<<24>>24==1?(n|0)!=(Xi[l>>2]|0):0)?n:i}f=f+1|0}while((f|0)!=32);l=0;do{r=e+3520+(l*80|0)+78|0;f=qi[r>>0]|0;if((f&1|0?(Gi[e+3520+(l*80|0)+76>>1]|0)==(Gi[a>>1]|0):0)?(Xi[e+3520+(l*80|0)+32>>2]|0)<=(i|0):0)Wi[r>>0]=f|8;l=l+1|0}while((l|0)!=32)}return}function IE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=Ue;Ue=Ue+224|0;F=y+8|0;u=y;p=y+24|0;m=y+12|0;n=(Xi[e+2420>>2]|0)==0;_=e+3516|0;o=Xi[_>>2]|0;s=Xi[o+28>>2]|0;f=Xi[(Xi[(Xi[e+1416>>2]|0)+1668>>2]|0)+(Xi[e+2412>>2]<<2)>>2]|0;l=Xi[e+6088>>2]|0;a=o+64|0;r=Xi[a>>2]|0;e:do{if(l>>>0<(((Xi[r+8>>2]|0)>>>0)/392|0)>>>0){t=o+24|0;if((f|0)<(s|0)?(Xi[(Xi[t>>2]|0)+(f<<2)>>2]=(Xi[r+4>>2]|0)+(l*392|0),i=f+1|0,(i|0)!=(s|0)):0)do{Xi[(Xi[t>>2]|0)+(i<<2)>>2]=(Xi[(Xi[a>>2]|0)+4>>2]|0)+(l*392|0);i=i+1|0}while((i|0)!=(s|0));Xi[o+20>>2]=Xi[(Xi[t>>2]|0)+(f<<2)>>2];if(((Xi[e+1816>>2]|0)+(Xi[e+1620>>2]|0)|0)==(0-(Xi[e+2208>>2]|0)|0)){nA(Xi[e+4>>2]|0,16,127837,u);i=-1094995529;break}s=n?2:1;u=m+4|0;h=m+8|0;w=p+192|0;k=e+3059|0;b=e+3060|0;d=0;E=0;i:while(1){jT(p|0,0,196)|0;c=Xi[(Xi[_>>2]|0)+20>>2]|0;t=c+(d*196|0)|0;v=E<<24>>24!=0&1;Xi[m>>2]=v;Xi[u>>2]=v^1;Xi[h>>2]=3;v=e+3044+(d<<2)|0;o=Xi[v>>2]|0;if(!o)l=0;else{i=0;r=0;while(1){l=Xi[m+(r<<2)>>2]|0;a=Xi[e+1428+(l*196|0)+192>>2]|0;if((a|0)>0&(i|0)<16){n=(r|0)==2&1;f=0;do{Xi[p+64+(i<<2)>>2]=Xi[e+1428+(l*196|0)+64+(f<<2)>>2];Xi[p+(Xi[w>>2]<<2)>>2]=Xi[e+1428+(l*196|0)+(f<<2)>>2];Xi[p+128+(Xi[w>>2]<<2)>>2]=n;i=(Xi[w>>2]|0)+1|0;Xi[w>>2]=i;f=f+1|0}while((f|0)<(a|0)&(i|0)<16)}r=r+1|0;if((r|0)!=3)continue;if(i>>>0<o>>>0)r=0;else{l=i;break}}}if(Wi[e+3040+d>>0]|0){if(o|0){i=c+(d*196|0)+192|0;f=0;do{r=Xi[e+2784+(d<<7)+(f<<2)>>2]|0;if((r|0)>=(l|0))break i;Xi[c+(d*196|0)+64+(f<<2)>>2]=Xi[p+64+(r<<2)>>2];Xi[c+(d*196|0)+(f<<2)>>2]=Xi[p+(r<<2)>>2];Xi[c+(d*196|0)+128+(f<<2)>>2]=Xi[p+128+(r<<2)>>2];Xi[i>>2]=(Xi[i>>2]|0)+1;f=f+1|0}while(f>>>0<(Xi[v>>2]|0)>>>0)}}else{qT(t|0,p|0,196)|0;o=c+(d*196|0)+192|0;t=Xi[o>>2]|0;v=Xi[v>>2]|0;Xi[o>>2]=t>>>0>v>>>0?v:t}if((Wi[k>>0]|0)==E<<24>>24?(S=Xi[b>>2]|0,S>>>0<(Xi[c+(d*196|0)+192>>2]|0)>>>0):0)Xi[(Xi[_>>2]|0)+36>>2]=Xi[c+(d*196|0)+(S<<2)>>2];E=E+1<<24>>24;d=E&255;if(d>>>0>=s>>>0){i=0;break e}}nA(Xi[e+4>>2]|0,16,127866,F);i=-1094995529}else i=-1094995529}while(0);Ue=y;return i|0}function HE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;a=Xi[e+2612>>2]|0;if(!a){Xi[e+1816>>2]=0;Xi[e+1620>>2]=0;i=0}else{i=e+3516|0;r=0;do{if((e+3520+(r*80|0)|0)!=(Xi[i>>2]|0)){l=e+3520+(r*80|0)+78|0;Wi[l>>0]=qi[l>>0]&249}r=r+1|0}while((r|0)!=32);Xi[e+1620>>2]=0;Xi[e+1816>>2]=0;Xi[e+2012>>2]=0;Xi[e+2208>>2]=0;Xi[e+2404>>2]=0;r=a+4|0;e:do{if((Xi[r>>2]|0)>0){f=e+6080|0;l=0;while(1){if(!(Wi[a+140+l>>0]|0))i=2;else i=l>>>0>=(Xi[a>>2]|0)>>>0&1;i=BE(e,e+1428+(i*196|0)|0,(Xi[a+12+(l<<2)>>2]|0)+(Xi[f>>2]|0)|0,2)|0;l=l+1|0;if((i|0)<0)break e;if((l|0)>=(Xi[r>>2]|0)){n=10;break}}}else{i=0;n=10}}while(0);e:do{if((n|0)==10){f=e+2780|0;if(Wi[f>>0]|0){r=0;do{i=BE(e,e+1428+((Wi[e+2748+r>>0]|0?3:4)*196|0)|0,Xi[e+2620+(r<<2)>>2]|0,4)|0;r=r+1|0;if((i|0)<0)break e}while((r|0)<(qi[f>>0]|0))}}}while(0);r=0;do{ME(e,e+3520+(r*80|0)|0,0);r=r+1|0}while((r|0)!=32)}return i|0}function BE(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=Ue;Ue=Ue+16|0;t=h;s=e+1412|0;n=(1<<Xi[(Xi[s>>2]|0)+64>>2])+-1|0;u=e+7980|0;a=0;while(1){l=e+3520+(a*80|0)|0;if((Xi[(Xi[l>>2]|0)+248>>2]|0?(Gi[e+3520+(a*80|0)+76>>1]|0)==(Gi[u>>1]|0):0)?(Xi[e+3520+(a*80|0)+32>>2]&n|0)==(r|0):0)break;a=a+1|0;if(a>>>0>=32){a=0;o=6;break}}e:do{if((o|0)==6){while(1){l=e+3520+(a*80|0)|0;if((Xi[(Xi[l>>2]|0)+248>>2]|0?(Gi[e+3520+(a*80|0)+76>>1]|0)==(Gi[u>>1]|0):0)?(o=Xi[e+3520+(a*80|0)+32>>2]|0,(o|0)==(r|0)|(o&n|0)==(r|0)):0)break e;a=a+1|0;if(a>>>0>=32)break;else o=6}switch(Xi[e+3508>>2]|0){case 18:case 16:case 17:case 21:{l=0;break e}default:{}}l=Xi[e+4>>2]|0;Xi[t>>2]=r;nA(l,16,127892,t);l=0}}while(0);do{if((l|0)==(Xi[e+3516>>2]|0))l=-1094995529;else{if(!l){l=CE(e)|0;if(!l){l=-12;break}e:do{if(!(Xi[(Xi[e+4>>2]|0)+704>>2]|0)){n=Xi[s>>2]|0;a=Xi[l>>2]|0;if(!(Xi[n+56>>2]|0)){a=Xi[a+248>>2]|0;if(!a)break;jT(Xi[a+4>>2]|0,1<<(Xi[n+52>>2]|0)+-1&255|0,Xi[a+8>>2]|0)|0;a=Xi[(Xi[l>>2]|0)+252>>2]|0;if(!a)break;else n=1;while(1){jT(Xi[a+4>>2]|0,1<<(Xi[(Xi[s>>2]|0)+52>>2]|0)+-1&255|0,Xi[a+8>>2]|0)|0;n=n+1|0;a=Xi[(Xi[l>>2]|0)+248+(n<<2)>>2]|0;if(!a)break e}}if(Xi[a>>2]|0){o=0;do{if((Xi[n+13380>>2]>>Xi[n+13436+(o<<2)>>2]|0)>0){t=0;do{if((Xi[n+13376>>2]>>Xi[n+13424+(o<<2)>>2]|0)>0){a=0;do{w=1<<(Xi[n+52>>2]|0)+-1&65535;n=Xi[l>>2]|0;n=(Xi[n+(o<<2)>>2]|0)+((Zi(Xi[n+32+(o<<2)>>2]|0,t)|0)+(a<<1))|0;Wi[n>>0]=w;Wi[n+1>>0]=w>>8;a=a+1|0;n=Xi[s>>2]|0}while((a|0)<(Xi[n+13376>>2]>>Xi[n+13424+(o<<2)>>2]|0))}t=t+1|0}while((t|0)<(Xi[n+13380>>2]>>Xi[n+13436+(o<<2)>>2]|0));a=Xi[l>>2]|0}o=o+1|0}while((Xi[a+(o<<2)>>2]|0)!=0)}}}while(0);Xi[l+32>>2]=r;Gi[l+76>>1]=Gi[u>>1]|0;Wi[l+78>>0]=0;if((Wi[e+140>>0]|0)==1)VO(l+4|0,2147483647,0)}w=i+192|0;Xi[i+64+(Xi[w>>2]<<2)>>2]=Xi[l+32>>2];Xi[i+(Xi[w>>2]<<2)>>2]=l;Xi[w>>2]=(Xi[w>>2]|0)+1;l=l+78|0;Wi[l>>0]=qi[l>>0]&249|f;l=0}}while(0);Ue=h;return l|0}function UE(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;f=1<<Xi[(Xi[e+1412>>2]|0)+64>>2];r=Xi[e+6084>>2]|0;l=(r|0)%(f|0)|0;r=r-l|0;if((l|0)>(i|0)?(l-i|0)>=((f|0)/2|0|0):0)r=r+f|0;else if((l|0)<(i|0))r=r-((i-l|0)>((f|0)/2|0|0)?f:0)|0;return(((Xi[e+3508>>2]|0)+-16|0)>>>0<3?0:r)+i|0}function xE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0;a=Xi[e+2612>>2]|0;if(a){f=Xi[a>>2]|0;if(!f){r=0;i=0}else{l=f>>>0>1;r=0;i=0;do{i=((Wi[a+140+r>>0]|0)!=0&1)+i|0;r=r+1|0}while(r>>>0<f>>>0);r=l?f:1}f=Xi[a+4>>2]|0;if((r|0)<(f|0))do{i=((Wi[a+140+r>>0]|0)!=0&1)+i|0;r=r+1|0}while((r|0)<(f|0))}else i=0;r=Wi[e+2780>>0]|0;if(r<<24>>24){r=r&255;f=0;do{i=((Wi[e+2748+f>>0]|0)!=0&1)+i|0;f=f+1|0}while((f|0)<(r|0))}return i|0}function zE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0;U=Ue;Ue=Ue+80|0;L=U+64|0;P=U+56|0;C=U+48|0;D=U+40|0;B=U+32|0;H=U+24|0;I=U+16|0;N=U+8|0;T=U;u=e+8124|0;h=e+8120|0;p=e+136|0;F=e+4|0;y=e+3508|0;O=e+8084|0;A=e+8088|0;g=e+8096|0;M=e+8092|0;R=e+8100|0;w=e+8108|0;k=e+8112|0;b=e+8104|0;c=e+8072|0;d=e+8116|0;v=e+8144|0;E=e+8146|0;S=e+8148|0;_=e+8152|0;m=e+8128|0;r=Xi[p>>2]|0;e:while(1){nA(Xi[F>>2]|0,48,127924,T);n=r+212|0;a=Xi[r+220>>2]|0;f=Xi[r+204>>2]|0;i=Xi[n>>2]|0;r=0;do{s=f+(i>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(i&7)>>>24;i=i+8|0;i=a>>>0>i>>>0?i:a;Xi[n>>2]=i;r=s+r|0}while((s|0)==255);l=r;r=0;do{s=f+(i>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(i&7)>>>24;o=i+8|0;i=a>>>0>o>>>0?o:a;Xi[n>>2]=i;r=s+r|0}while((s|0)==255);a=r;i:do{if((Xi[y>>2]|0)!=39)if((l|0)==132){VE(e);break}else{n=Xi[p>>2]|0;t=Xi[F>>2]|0;Xi[P>>2]=l;nA(t,48,128053,P);t=a<<3;s=n+212|0;o=Xi[s>>2]|0;a=0-o|0;n=(Xi[n+220>>2]|0)-o|0;Xi[s>>2]=((t|0)<(a|0)?a:(n|0)<(t|0)?n:t)+o;break}else{t=Xi[p>>2]|0;f=t+204|0;switch(l|0){case 256:{VE(e);break i}case 45:{YE(f)|0;l=t+212|0;i=Xi[l>>2]|0;r=Xi[f>>2]|0;s=(qi[r+(i>>>3)>>0]|0)<<(i&7)&128;f=Xi[t+220>>2]|0;i=((i|0)<(f|0)&1)+i|0;Xi[l>>2]=i;Xi[O>>2]=s>>>7^1;if(!s){o=r+(i>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(i&7)>>>25;i=i+7|0;i=f>>>0>i>>>0?i:f;Xi[l>>2]=i;Xi[A>>2]=o;s=(qi[r+(i>>>3)>>0]|0)<<(i&7)>>>7&1;i=((i|0)<(f|0)&1)+i|0;Xi[l>>2]=i;Xi[g>>2]=s;t=r+(i>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(i&7)>>>26;i=i+6|0;Xi[M>>2]=t;i=(f>>>0>i>>>0?i:f)+6|0;i=f>>>0>i>>>0?i:f;if(!((o|0)==5|(s|0)!=0)){i=i+16|0;i=f>>>0>i>>>0?i:f}i=i+8|0;i=(f>>>0>i>>>0?i:f)+1|0;i=f>>>0>i>>>0?i:f;Xi[l>>2]=i}s=i+1|0;Xi[l>>2]=f>>>0>s>>>0?s:f;break i}case 47:{f=t+212|0;i=Xi[f>>2]|0;l=Xi[t+204>>2]|0;s=(qi[l+(i>>>3)>>0]|0)<<(i&7)&128;r=Xi[t+220>>2]|0;i=((i|0)<(r|0)&1)+i|0;Xi[f>>2]=i;Xi[R>>2]=s>>>7^1;if(s|0)break i;t=(qi[l+(i>>>3)>>0]|0)<<(i&7)>>>7&1;o=((i|0)<(r|0)&1)+i|0;Xi[f>>2]=o;Xi[w>>2]=t;t=(qi[l+(o>>>3)>>0]|0)<<(o&7)>>>7&1;o=((o|0)<(r|0)&1)+o|0;Xi[f>>2]=o;Xi[k>>2]=t;t=l+(o>>>3)|0;s=o+16|0;Xi[b>>2]=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(o&7)>>>16;s=(r>>>0>s>>>0?s:r)+1|0;Xi[f>>2]=r>>>0>s>>>0?s:r;break i}case 1:{i=Xi[e+256+(Xi[c>>2]<<2)>>2]|0;if(i)if(!(Xi[(Xi[i+4>>2]|0)+216>>2]|0))i=0;else{i=t+212|0;n=Xi[i>>2]|0;r=t+220|0;o=Xi[r>>2]|0;s=(Xi[t+204>>2]|0)+(n>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(n&7)>>>28;n=n+4|0;Xi[i>>2]=o>>>0>n>>>0?n:o;Xi[d>>2]=0;switch(s|0){case 2:{nA(Xi[F>>2]|0,48,127938,N);Xi[d>>2]=2;break}case 1:{nA(Xi[F>>2]|0,48,127952,I);Xi[d>>2]=1;break}default:{}}s=Xi[r>>2]|0;o=(Xi[i>>2]|0)+2|0;o=(s>>>0>o>>>0?o:s)+1|0;Xi[i>>2]=s>>>0>o>>>0?o:s;i=0}else i=1;s=Xi[F>>2]|0;Xi[L>>2]=1;nA(s,48,128030,L);s=t+212|0;o=Xi[t+220>>2]|0;t=(Xi[s>>2]|0)+(a<<3)|0;Xi[s>>2]=o>>>0>t>>>0?t:o;if(i){i=-12;break e}else break i}case 137:{n=t+212|0;r=Xi[n>>2]|0;a=Xi[t+220>>2]|0;l=Xi[t+204>>2]|0;i=l+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7)>>>16;r=r+16|0;r=a>>>0>r>>>0?r:a;Xi[n>>2]=r;i=i&65535;f=0;do{Gi[e+8132+(f<<2)>>1]=i;i=l+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7)>>>16;r=r+16|0;r=a>>>0>r>>>0?r:a;Xi[n>>2]=r;Gi[e+8132+(f<<2)+2>>1]=i;f=f+1|0;i=l+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7)>>>16;r=r+16|0;r=a>>>0>r>>>0?r:a;Xi[n>>2]=r;i=i&65535}while((f|0)!=3);Gi[v>>1]=i;s=l+(r>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(r&7)>>>16;t=r+16|0;t=a>>>0>t>>>0?t:a;Xi[n>>2]=t;Gi[E>>1]=s;s=l+(t>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(t&7)&-65536;t=t+16|0;t=a>>>0>t>>>0?t:a;Xi[n>>2]=t;o=l+(t>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(t&7)>>>16;t=t+16|0;t=a>>>0>t>>>0?t:a;Xi[n>>2]=t;Xi[S>>2]=o|s;s=l+(t>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(t&7)&-65536;t=t+16|0;t=a>>>0>t>>>0?t:a;Xi[n>>2]=t;o=l+(t>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(t&7)>>>16;t=t+16|0;Xi[n>>2]=a>>>0>t>>>0?t:a;Xi[_>>2]=o|s;Xi[m>>2]=2;break i}case 129:{r=t+212|0;s=Xi[t+220>>2]|0;o=(Xi[r>>2]|0)+4|0;o=(s>>>0>o>>>0?o:s)+1|0;o=(s>>>0>o>>>0?o:s)+1|0;Xi[r>>2]=s>>>0>o>>>0?o:s;r=YE(f)|0;do{if(r>>>0<=15){i=YE(f)|0;if(i>>>0>31){s=Xi[F>>2]|0;Xi[B>>2]=i;nA(s,16,127994,B);break}Xi[c>>2]=i;if((r|0)>=1){i=1;while(1){YE(f)|0;if((i|0)==(r|0))break;else i=i+1|0}}}else{s=Xi[F>>2]|0;Xi[H>>2]=r;nA(s,16,127963,H)}}while(0);s=Xi[F>>2]|0;Xi[D>>2]=129;nA(s,48,128030,D);break i}case 4:{if((a|0)<7){i=-12;break e}s=t+212|0;i=Xi[s>>2]|0;o=t+220|0;n=Xi[o>>2]|0;t=t+204|0;f=Xi[t>>2]|0;l=f+(i>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(i&7);i=i+8|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;if(l>>>0>4278190079){i=i+8|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;r=a+-8|0}else r=a+-7|0;i=i+8|0;i=(n>>>0>i>>>0?i:n)+8|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;a=f+(i>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(i&7)&-65536;i=i+16|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;l=f+(i>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(i&7)>>>16;i=i+16|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;if((l|a|0)!=1195456820){o=r<<3;a=0-i|0;t=n-i|0;Xi[s>>2]=((o|0)<(a|0)?a:(t|0)<(o|0)?t:o)+i;break i}if((r|0)<3){i=-12;break e}a=f+(i>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(i&7);i=i+8|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;if((a&-16777216|0)!=50331648){f=r+-1|0;r=0;do{i=i+8|0;i=n>>>0>i>>>0?i:n;r=r+1|0}while((r|0)!=(f|0));Xi[s>>2]=i;break i}a=i+1|0;a=n>>>0>a>>>0?a:n;Xi[s>>2]=a;l=f+(a>>>3)|0;l=ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0;i=a+1|0;i=n>>>0>i>>>0?i:n;Xi[s>>2]=i;if(!(l&-2147483648>>>(a&7)))break i;a=i+1|0;a=n>>>0>a>>>0?a:n;Xi[s>>2]=a;l=f+(a>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(a&7)>>>27;a=a+5|0;a=(n>>>0>a>>>0?a:n)+8|0;Xi[s>>2]=n>>>0>a>>>0?a:n;if(!l)break i;if((r+-2|0)<(l*3|0))break i;n=Xi[u>>2]|0;i=rN(l|0,0,3,0)|0;i=WT(n|0,((n|0)<0)<<31>>31|0,i|0,Ie|0)|0;n=Ie;if(n>>>0>0|(n|0)==0&i>>>0>2147483647){i=-12;break e}if((SM(h,i)|0)<0){i=-12;break e}r=Xi[s>>2]|0;i=Xi[o>>2]|0;f=0;do{n=(Xi[t>>2]|0)+(r>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(r&7)>>>24;r=r+8|0;Xi[s>>2]=i>>>0>r>>>0?r:i;i=Xi[u>>2]|0;Xi[u>>2]=i+1;Wi[(Xi[h>>2]|0)+i>>0]=n;i=Xi[s>>2]|0;n=Xi[o>>2]|0;r=(Xi[t>>2]|0)+(i>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(i&7)>>>24;i=i+8|0;Xi[s>>2]=n>>>0>i>>>0?i:n;n=Xi[u>>2]|0;Xi[u>>2]=n+1;Wi[(Xi[h>>2]|0)+n>>0]=r;n=Xi[s>>2]|0;r=Xi[o>>2]|0;i=(Xi[t>>2]|0)+(n>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(n&7)>>>24;n=n+8|0;Xi[s>>2]=r>>>0>n>>>0?n:r;r=Xi[u>>2]|0;Xi[u>>2]=r+1;Wi[(Xi[h>>2]|0)+r>>0]=i;f=f+1|0;r=Xi[s>>2]|0;i=Xi[o>>2]|0}while((f|0)!=(l|0));o=r+8|0;Xi[s>>2]=i>>>0>o>>>0?o:i;break i}default:{n=Xi[F>>2]|0;Xi[C>>2]=l;nA(n,48,128030,C);n=a<<3;s=t+212|0;o=Xi[s>>2]|0;a=0-o|0;t=(Xi[t+220>>2]|0)-o|0;Xi[s>>2]=((n|0)<(a|0)?a:(t|0)<(n|0)?t:n)+o;break i}}}}while(0);r=Xi[p>>2]|0;i=Xi[r+212>>2]|0;if((Xi[r+216>>2]|0)<=(i|0)){i=1;break}s=(Xi[r+204>>2]|0)+(i>>>3)|0;if(((ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(i&7)&-16777216|0)==-2147483648){i=1;break}}Ue=U;return i|0}function VE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=Xi[e+136>>2]|0;f=a+212|0;n=Xi[f>>2]|0;l=a+220|0;r=Xi[l>>2]|0;a=a+204|0;i=(Xi[a>>2]|0)+(n>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(n&7)>>>24;n=n+8|0;Xi[f>>2]=r>>>0>n>>>0?n:r;r=e+8064|0;n=0;do{switch(i|0){case 0:{Wi[r>>0]=1;t=0;do{u=Xi[f>>2]|0;s=Xi[l>>2]|0;o=(Xi[a>>2]|0)+(u>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;Xi[f>>2]=s>>>0>u>>>0?u:s;Wi[e+8016+(n<<4)+t>>0]=o;t=t+1|0}while((t|0)!=16);break}case 1:{u=Xi[l>>2]|0;s=(Xi[f>>2]|0)+16|0;Xi[f>>2]=u>>>0>s>>>0?s:u;break}case 2:{u=Xi[l>>2]|0;s=(Xi[f>>2]|0)+32|0;Xi[f>>2]=u>>>0>s>>>0?s:u;break}default:{}}n=n+1|0}while((n|0)!=3);return}function YE(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=Xi[e>>2]|0;t=e+8|0;r=Xi[t>>2]|0;l=Xi[e+16>>2]|0;i=n+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=n+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[t>>2]=r;f=i+1|0;do{if(f){a=n+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){n=r+f|0;Xi[t>>2]=l>>>0>n>>>0?n:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[t>>2]=f;e=i+-15|0;n=n+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[t>>2]=l>>>0>f>>>0?f:l;e=n|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function jE(e){e=e|0;Xi[e+8124>>2]=0;vA(e+8120|0);return}function KE(e,i){e=e|0;i=i|0;switch(i|0){case 9:{Xi[e>>2]=37;Xi[e+4>>2]=693;Xi[e+8>>2]=694;Xi[e+12>>2]=695;Xi[e+16>>2]=696;Xi[e+20>>2]=184;Xi[e+24>>2]=697;Xi[e+28>>2]=3;Xi[e+32>>2]=185;Xi[e+36>>2]=186;Xi[e+40>>2]=187;Xi[e+44>>2]=188;Xi[e+48>>2]=4;Xi[e+52>>2]=5;Xi[e+56>>2]=6;Xi[e+60>>2]=7;Xi[e+80>>2]=21;Xi[e+76>>2]=21;Xi[e+72>>2]=21;Xi[e+68>>2]=21;Xi[e+64>>2]=21;Xi[e+100>>2]=1;Xi[e+96>>2]=1;Xi[e+92>>2]=1;Xi[e+88>>2]=1;Xi[e+84>>2]=1;Xi[e+104>>2]=1;Xi[e+108>>2]=2;Xi[e+112>>2]=2;Xi[e+128>>2]=2;Xi[e+144>>2]=2;Xi[e+160>>2]=2;Xi[e+176>>2]=2;Xi[e+192>>2]=2;Xi[e+208>>2]=2;Xi[e+224>>2]=2;Xi[e+240>>2]=2;Xi[e+256>>2]=2;Xi[e+116>>2]=3;Xi[e+132>>2]=3;Xi[e+148>>2]=3;Xi[e+164>>2]=3;Xi[e+180>>2]=3;Xi[e+196>>2]=3;Xi[e+212>>2]=3;Xi[e+228>>2]=3;Xi[e+244>>2]=3;Xi[e+260>>2]=3;Xi[e+120>>2]=4;Xi[e+136>>2]=4;Xi[e+152>>2]=4;Xi[e+168>>2]=4;Xi[e+184>>2]=4;Xi[e+200>>2]=4;Xi[e+216>>2]=4;Xi[e+232>>2]=4;Xi[e+248>>2]=4;Xi[e+264>>2]=4;Xi[e+124>>2]=5;Xi[e+140>>2]=5;Xi[e+156>>2]=5;Xi[e+172>>2]=5;Xi[e+188>>2]=5;Xi[e+204>>2]=5;Xi[e+220>>2]=5;Xi[e+236>>2]=5;Xi[e+252>>2]=5;Xi[e+268>>2]=5;Xi[e+272>>2]=22;Xi[e+288>>2]=22;Xi[e+304>>2]=22;Xi[e+320>>2]=22;Xi[e+336>>2]=22;Xi[e+352>>2]=22;Xi[e+368>>2]=22;Xi[e+384>>2]=22;Xi[e+400>>2]=22;Xi[e+416>>2]=22;Xi[e+276>>2]=23;Xi[e+292>>2]=23;Xi[e+308>>2]=23;Xi[e+324>>2]=23;Xi[e+340>>2]=23;Xi[e+356>>2]=23;Xi[e+372>>2]=23;Xi[e+388>>2]=23;Xi[e+404>>2]=23;Xi[e+420>>2]=23;Xi[e+280>>2]=24;Xi[e+296>>2]=24;Xi[e+312>>2]=24;Xi[e+328>>2]=24;Xi[e+344>>2]=24;Xi[e+360>>2]=24;Xi[e+376>>2]=24;Xi[e+392>>2]=24;Xi[e+408>>2]=24;Xi[e+424>>2]=24;Xi[e+284>>2]=25;Xi[e+300>>2]=25;Xi[e+316>>2]=25;Xi[e+332>>2]=25;Xi[e+348>>2]=25;Xi[e+364>>2]=25;Xi[e+380>>2]=25;Xi[e+396>>2]=25;Xi[e+412>>2]=25;Xi[e+428>>2]=25;Xi[e+432>>2]=1;Xi[e+448>>2]=1;Xi[e+464>>2]=1;Xi[e+480>>2]=1;Xi[e+496>>2]=1;Xi[e+512>>2]=1;Xi[e+528>>2]=1;Xi[e+544>>2]=1;Xi[e+560>>2]=1;Xi[e+576>>2]=1;Xi[e+436>>2]=2;Xi[e+452>>2]=2;Xi[e+468>>2]=2;Xi[e+484>>2]=2;Xi[e+500>>2]=2;Xi[e+516>>2]=2;Xi[e+532>>2]=2;Xi[e+548>>2]=2;Xi[e+564>>2]=2;Xi[e+580>>2]=2;Xi[e+440>>2]=3;Xi[e+456>>2]=3;Xi[e+472>>2]=3;Xi[e+488>>2]=3;Xi[e+504>>2]=3;Xi[e+520>>2]=3;Xi[e+536>>2]=3;Xi[e+552>>2]=3;Xi[e+568>>2]=3;Xi[e+584>>2]=3;Xi[e+444>>2]=4;Xi[e+460>>2]=4;Xi[e+476>>2]=4;Xi[e+492>>2]=4;Xi[e+508>>2]=4;Xi[e+524>>2]=4;Xi[e+540>>2]=4;Xi[e+556>>2]=4;Xi[e+572>>2]=4;Xi[e+588>>2]=4;Xi[e+592>>2]=2;Xi[e+608>>2]=2;Xi[e+624>>2]=2;Xi[e+640>>2]=2;Xi[e+656>>2]=2;Xi[e+672>>2]=2;Xi[e+688>>2]=2;Xi[e+704>>2]=2;Xi[e+720>>2]=2;Xi[e+736>>2]=2;Xi[e+596>>2]=3;Xi[e+612>>2]=3;Xi[e+628>>2]=3;Xi[e+644>>2]=3;Xi[e+660>>2]=3;Xi[e+676>>2]=3;Xi[e+692>>2]=3;Xi[e+708>>2]=3;Xi[e+724>>2]=3;Xi[e+740>>2]=3;Xi[e+600>>2]=4;Xi[e+616>>2]=4;Xi[e+632>>2]=4;Xi[e+648>>2]=4;Xi[e+664>>2]=4;Xi[e+680>>2]=4;Xi[e+696>>2]=4;Xi[e+712>>2]=4;Xi[e+728>>2]=4;Xi[e+744>>2]=4;Xi[e+604>>2]=5;Xi[e+620>>2]=5;Xi[e+636>>2]=5;Xi[e+652>>2]=5;Xi[e+668>>2]=5;Xi[e+684>>2]=5;Xi[e+700>>2]=5;Xi[e+716>>2]=5;Xi[e+732>>2]=5;Xi[e+748>>2]=5;Xi[e+752>>2]=1;Xi[e+768>>2]=1;Xi[e+784>>2]=1;Xi[e+800>>2]=1;Xi[e+816>>2]=1;Xi[e+832>>2]=1;Xi[e+848>>2]=1;Xi[e+864>>2]=1;Xi[e+880>>2]=1;Xi[e+896>>2]=1;Xi[e+756>>2]=2;Xi[e+772>>2]=2;Xi[e+788>>2]=2;Xi[e+804>>2]=2;Xi[e+820>>2]=2;Xi[e+836>>2]=2;Xi[e+852>>2]=2;Xi[e+868>>2]=2;Xi[e+884>>2]=2;Xi[e+900>>2]=2;Xi[e+760>>2]=3;Xi[e+776>>2]=3;Xi[e+792>>2]=3;Xi[e+808>>2]=3;Xi[e+824>>2]=3;Xi[e+840>>2]=3;Xi[e+856>>2]=3;Xi[e+872>>2]=3;Xi[e+888>>2]=3;Xi[e+904>>2]=3;Xi[e+764>>2]=4;Xi[e+780>>2]=4;Xi[e+796>>2]=4;Xi[e+812>>2]=4;Xi[e+828>>2]=4;Xi[e+844>>2]=4;Xi[e+860>>2]=4;Xi[e+876>>2]=4;Xi[e+892>>2]=4;Xi[e+908>>2]=4;Xi[e+912>>2]=2;Xi[e+928>>2]=2;Xi[e+944>>2]=2;Xi[e+960>>2]=2;Xi[e+976>>2]=2;Xi[e+992>>2]=2;Xi[e+1008>>2]=2;Xi[e+1024>>2]=2;Xi[e+1040>>2]=2;Xi[e+1056>>2]=2;Xi[e+916>>2]=6;Xi[e+932>>2]=6;Xi[e+948>>2]=6;Xi[e+964>>2]=6;Xi[e+980>>2]=6;Xi[e+996>>2]=6;Xi[e+1012>>2]=6;Xi[e+1028>>2]=6;Xi[e+1044>>2]=6;Xi[e+1060>>2]=6;Xi[e+920>>2]=7;Xi[e+936>>2]=7;Xi[e+952>>2]=7;Xi[e+968>>2]=7;Xi[e+984>>2]=7;Xi[e+1e3>>2]=7;Xi[e+1016>>2]=7;Xi[e+1032>>2]=7;Xi[e+1048>>2]=7;Xi[e+1064>>2]=7;Xi[e+924>>2]=8;Xi[e+940>>2]=8;Xi[e+956>>2]=8;Xi[e+972>>2]=8;Xi[e+988>>2]=8;Xi[e+1004>>2]=8;Xi[e+1020>>2]=8;Xi[e+1036>>2]=8;Xi[e+1052>>2]=8;Xi[e+1068>>2]=8;Xi[e+1072>>2]=22;Xi[e+1088>>2]=22;Xi[e+1104>>2]=22;Xi[e+1120>>2]=22;Xi[e+1136>>2]=22;Xi[e+1152>>2]=22;Xi[e+1168>>2]=22;Xi[e+1184>>2]=22;Xi[e+1200>>2]=22;Xi[e+1216>>2]=22;Xi[e+1076>>2]=26;Xi[e+1092>>2]=26;Xi[e+1108>>2]=26;Xi[e+1124>>2]=26;Xi[e+1140>>2]=26;Xi[e+1156>>2]=26;Xi[e+1172>>2]=26;Xi[e+1188>>2]=26;Xi[e+1204>>2]=26;Xi[e+1220>>2]=26;Xi[e+1080>>2]=27;Xi[e+1096>>2]=27;Xi[e+1112>>2]=27;Xi[e+1128>>2]=27;Xi[e+1144>>2]=27;Xi[e+1160>>2]=27;Xi[e+1176>>2]=27;Xi[e+1192>>2]=27;Xi[e+1208>>2]=27;Xi[e+1224>>2]=27;Xi[e+1084>>2]=28;Xi[e+1100>>2]=28;Xi[e+1116>>2]=28;Xi[e+1132>>2]=28;Xi[e+1148>>2]=28;Xi[e+1164>>2]=28;Xi[e+1180>>2]=28;Xi[e+1196>>2]=28;Xi[e+1212>>2]=28;Xi[e+1228>>2]=28;Xi[e+1232>>2]=1;Xi[e+1248>>2]=1;Xi[e+1264>>2]=1;Xi[e+1280>>2]=1;Xi[e+1296>>2]=1;Xi[e+1312>>2]=1;Xi[e+1328>>2]=1;Xi[e+1344>>2]=1;Xi[e+1360>>2]=1;Xi[e+1376>>2]=1;Xi[e+1236>>2]=5;Xi[e+1252>>2]=5;Xi[e+1268>>2]=5;Xi[e+1284>>2]=5;Xi[e+1300>>2]=5;Xi[e+1316>>2]=5;Xi[e+1332>>2]=5;Xi[e+1348>>2]=5;Xi[e+1364>>2]=5;Xi[e+1380>>2]=5;Xi[e+1240>>2]=6;Xi[e+1256>>2]=6;Xi[e+1272>>2]=6;Xi[e+1288>>2]=6;Xi[e+1304>>2]=6;Xi[e+1320>>2]=6;Xi[e+1336>>2]=6;Xi[e+1352>>2]=6;Xi[e+1368>>2]=6;Xi[e+1384>>2]=6;Xi[e+1244>>2]=7;Xi[e+1260>>2]=7;Xi[e+1276>>2]=7;Xi[e+1292>>2]=7;Xi[e+1308>>2]=7;Xi[e+1324>>2]=7;Xi[e+1340>>2]=7;Xi[e+1356>>2]=7;Xi[e+1372>>2]=7;Xi[e+1388>>2]=7;Xi[e+1392>>2]=2;Xi[e+1408>>2]=2;Xi[e+1424>>2]=2;Xi[e+1440>>2]=2;Xi[e+1456>>2]=2;Xi[e+1472>>2]=2;Xi[e+1488>>2]=2;Xi[e+1504>>2]=2;Xi[e+1520>>2]=2;Xi[e+1536>>2]=2;Xi[e+1396>>2]=6;Xi[e+1412>>2]=6;Xi[e+1428>>2]=6;Xi[e+1444>>2]=6;Xi[e+1460>>2]=6;Xi[e+1476>>2]=6;Xi[e+1492>>2]=6;Xi[e+1508>>2]=6;Xi[e+1524>>2]=6;Xi[e+1540>>2]=6;Xi[e+1400>>2]=7;Xi[e+1416>>2]=7;Xi[e+1432>>2]=7;Xi[e+1448>>2]=7;Xi[e+1464>>2]=7;Xi[e+1480>>2]=7;Xi[e+1496>>2]=7;Xi[e+1512>>2]=7;Xi[e+1528>>2]=7;Xi[e+1544>>2]=7;Xi[e+1404>>2]=8;Xi[e+1420>>2]=8;Xi[e+1436>>2]=8;Xi[e+1452>>2]=8;Xi[e+1468>>2]=8;Xi[e+1484>>2]=8;Xi[e+1500>>2]=8;Xi[e+1516>>2]=8;Xi[e+1532>>2]=8;Xi[e+1548>>2]=8;Xi[e+1552>>2]=1;Xi[e+1568>>2]=1;Xi[e+1584>>2]=1;Xi[e+1600>>2]=1;Xi[e+1616>>2]=1;Xi[e+1632>>2]=1;Xi[e+1648>>2]=1;Xi[e+1664>>2]=1;Xi[e+1680>>2]=1;Xi[e+1696>>2]=1;Xi[e+1556>>2]=5;Xi[e+1572>>2]=5;Xi[e+1588>>2]=5;Xi[e+1604>>2]=5;Xi[e+1620>>2]=5;Xi[e+1636>>2]=5;Xi[e+1652>>2]=5;Xi[e+1668>>2]=5;Xi[e+1684>>2]=5;Xi[e+1700>>2]=5;Xi[e+1560>>2]=6;Xi[e+1576>>2]=6;Xi[e+1592>>2]=6;Xi[e+1608>>2]=6;Xi[e+1624>>2]=6;Xi[e+1640>>2]=6;Xi[e+1656>>2]=6;Xi[e+1672>>2]=6;Xi[e+1688>>2]=6;Xi[e+1704>>2]=6;Xi[e+1564>>2]=7;Xi[e+1580>>2]=7;Xi[e+1596>>2]=7;Xi[e+1612>>2]=7;Xi[e+1628>>2]=7;Xi[e+1644>>2]=7;Xi[e+1660>>2]=7;Xi[e+1676>>2]=7;Xi[e+1692>>2]=7;Xi[e+1708>>2]=7;Xi[e+1712>>2]=38;Xi[e+1716>>2]=39;Xi[e+1720>>2]=76;Xi[e+1724>>2]=77;Xi[e+1728>>2]=38;Xi[e+1732>>2]=39;Xi[e+1736>>2]=76;Xi[e+1740>>2]=77;break}case 10:{Xi[e>>2]=40;Xi[e+4>>2]=698;Xi[e+8>>2]=699;Xi[e+12>>2]=700;Xi[e+16>>2]=701;Xi[e+20>>2]=189;Xi[e+24>>2]=702;Xi[e+28>>2]=8;Xi[e+32>>2]=190;Xi[e+36>>2]=191;Xi[e+40>>2]=192;Xi[e+44>>2]=193;Xi[e+48>>2]=9;Xi[e+52>>2]=10;Xi[e+56>>2]=11;Xi[e+60>>2]=12;Xi[e+80>>2]=29;Xi[e+76>>2]=29;Xi[e+72>>2]=29;Xi[e+68>>2]=29;Xi[e+64>>2]=29;Xi[e+100>>2]=9;Xi[e+96>>2]=9;Xi[e+92>>2]=9;Xi[e+88>>2]=9;Xi[e+84>>2]=9;Xi[e+104>>2]=3;Xi[e+108>>2]=4;Xi[e+112>>2]=10;Xi[e+128>>2]=10;Xi[e+144>>2]=10;Xi[e+160>>2]=10;Xi[e+176>>2]=10;Xi[e+192>>2]=10;Xi[e+208>>2]=10;Xi[e+224>>2]=10;Xi[e+240>>2]=10;Xi[e+256>>2]=10;Xi[e+116>>2]=11;Xi[e+132>>2]=11;Xi[e+148>>2]=11;Xi[e+164>>2]=11;Xi[e+180>>2]=11;Xi[e+196>>2]=11;Xi[e+212>>2]=11;Xi[e+228>>2]=11;Xi[e+244>>2]=11;Xi[e+260>>2]=11;Xi[e+120>>2]=12;Xi[e+136>>2]=12;Xi[e+152>>2]=12;Xi[e+168>>2]=12;Xi[e+184>>2]=12;Xi[e+200>>2]=12;Xi[e+216>>2]=12;Xi[e+232>>2]=12;Xi[e+248>>2]=12;Xi[e+264>>2]=12;Xi[e+124>>2]=13;Xi[e+140>>2]=13;Xi[e+156>>2]=13;Xi[e+172>>2]=13;Xi[e+188>>2]=13;Xi[e+204>>2]=13;Xi[e+220>>2]=13;Xi[e+236>>2]=13;Xi[e+252>>2]=13;Xi[e+268>>2]=13;Xi[e+272>>2]=30;Xi[e+288>>2]=30;Xi[e+304>>2]=30;Xi[e+320>>2]=30;Xi[e+336>>2]=30;Xi[e+352>>2]=30;Xi[e+368>>2]=30;Xi[e+384>>2]=30;Xi[e+400>>2]=30;Xi[e+416>>2]=30;Xi[e+276>>2]=31;Xi[e+292>>2]=31;Xi[e+308>>2]=31;Xi[e+324>>2]=31;Xi[e+340>>2]=31;Xi[e+356>>2]=31;Xi[e+372>>2]=31;Xi[e+388>>2]=31;Xi[e+404>>2]=31;Xi[e+420>>2]=31;Xi[e+280>>2]=32;Xi[e+296>>2]=32;Xi[e+312>>2]=32;Xi[e+328>>2]=32;Xi[e+344>>2]=32;Xi[e+360>>2]=32;Xi[e+376>>2]=32;Xi[e+392>>2]=32;Xi[e+408>>2]=32;Xi[e+424>>2]=32;Xi[e+284>>2]=33;Xi[e+300>>2]=33;Xi[e+316>>2]=33;Xi[e+332>>2]=33;Xi[e+348>>2]=33;Xi[e+364>>2]=33;Xi[e+380>>2]=33;Xi[e+396>>2]=33;Xi[e+412>>2]=33;Xi[e+428>>2]=33;Xi[e+432>>2]=8;Xi[e+448>>2]=8;Xi[e+464>>2]=8;Xi[e+480>>2]=8;Xi[e+496>>2]=8;Xi[e+512>>2]=8;Xi[e+528>>2]=8;Xi[e+544>>2]=8;Xi[e+560>>2]=8;Xi[e+576>>2]=8;Xi[e+436>>2]=9;Xi[e+452>>2]=9;Xi[e+468>>2]=9;Xi[e+484>>2]=9;Xi[e+500>>2]=9;Xi[e+516>>2]=9;Xi[e+532>>2]=9;Xi[e+548>>2]=9;Xi[e+564>>2]=9;Xi[e+580>>2]=9;Xi[e+440>>2]=10;Xi[e+456>>2]=10;Xi[e+472>>2]=10;Xi[e+488>>2]=10;Xi[e+504>>2]=10;Xi[e+520>>2]=10;Xi[e+536>>2]=10;Xi[e+552>>2]=10;Xi[e+568>>2]=10;Xi[e+584>>2]=10;Xi[e+444>>2]=11;Xi[e+460>>2]=11;Xi[e+476>>2]=11;Xi[e+492>>2]=11;Xi[e+508>>2]=11;Xi[e+524>>2]=11;Xi[e+540>>2]=11;Xi[e+556>>2]=11;Xi[e+572>>2]=11;Xi[e+588>>2]=11;Xi[e+592>>2]=9;Xi[e+608>>2]=9;Xi[e+624>>2]=9;Xi[e+640>>2]=9;Xi[e+656>>2]=9;Xi[e+672>>2]=9;Xi[e+688>>2]=9;Xi[e+704>>2]=9;Xi[e+720>>2]=9;Xi[e+736>>2]=9;Xi[e+596>>2]=10;Xi[e+612>>2]=10;Xi[e+628>>2]=10;Xi[e+644>>2]=10;Xi[e+660>>2]=10;Xi[e+676>>2]=10;Xi[e+692>>2]=10;Xi[e+708>>2]=10;Xi[e+724>>2]=10;Xi[e+740>>2]=10;Xi[e+600>>2]=11;Xi[e+616>>2]=11;Xi[e+632>>2]=11;Xi[e+648>>2]=11;Xi[e+664>>2]=11;Xi[e+680>>2]=11;Xi[e+696>>2]=11;Xi[e+712>>2]=11;Xi[e+728>>2]=11;Xi[e+744>>2]=11;Xi[e+604>>2]=12;Xi[e+620>>2]=12;Xi[e+636>>2]=12;Xi[e+652>>2]=12;Xi[e+668>>2]=12;Xi[e+684>>2]=12;Xi[e+700>>2]=12;Xi[e+716>>2]=12;Xi[e+732>>2]=12;Xi[e+748>>2]=12;Xi[e+752>>2]=8;Xi[e+768>>2]=8;Xi[e+784>>2]=8;Xi[e+800>>2]=8;Xi[e+816>>2]=8;Xi[e+832>>2]=8;Xi[e+848>>2]=8;Xi[e+864>>2]=8;Xi[e+880>>2]=8;Xi[e+896>>2]=8;Xi[e+756>>2]=9;Xi[e+772>>2]=9;Xi[e+788>>2]=9;Xi[e+804>>2]=9;Xi[e+820>>2]=9;Xi[e+836>>2]=9;Xi[e+852>>2]=9;Xi[e+868>>2]=9;Xi[e+884>>2]=9;Xi[e+900>>2]=9;Xi[e+760>>2]=10;Xi[e+776>>2]=10;Xi[e+792>>2]=10;Xi[e+808>>2]=10;Xi[e+824>>2]=10;Xi[e+840>>2]=10;Xi[e+856>>2]=10;Xi[e+872>>2]=10;Xi[e+888>>2]=10;Xi[e+904>>2]=10;Xi[e+764>>2]=11;Xi[e+780>>2]=11;Xi[e+796>>2]=11;Xi[e+812>>2]=11;Xi[e+828>>2]=11;Xi[e+844>>2]=11;Xi[e+860>>2]=11;Xi[e+876>>2]=11;Xi[e+892>>2]=11;Xi[e+908>>2]=11;Xi[e+912>>2]=10;Xi[e+928>>2]=10;Xi[e+944>>2]=10;Xi[e+960>>2]=10;Xi[e+976>>2]=10;Xi[e+992>>2]=10;Xi[e+1008>>2]=10;Xi[e+1024>>2]=10;Xi[e+1040>>2]=10;Xi[e+1056>>2]=10;Xi[e+916>>2]=14;Xi[e+932>>2]=14;Xi[e+948>>2]=14;Xi[e+964>>2]=14;Xi[e+980>>2]=14;Xi[e+996>>2]=14;Xi[e+1012>>2]=14;Xi[e+1028>>2]=14;Xi[e+1044>>2]=14;Xi[e+1060>>2]=14;Xi[e+920>>2]=15;Xi[e+936>>2]=15;Xi[e+952>>2]=15;Xi[e+968>>2]=15;Xi[e+984>>2]=15;Xi[e+1e3>>2]=15;Xi[e+1016>>2]=15;Xi[e+1032>>2]=15;Xi[e+1048>>2]=15;Xi[e+1064>>2]=15;Xi[e+924>>2]=16;Xi[e+940>>2]=16;Xi[e+956>>2]=16;Xi[e+972>>2]=16;Xi[e+988>>2]=16;Xi[e+1004>>2]=16;Xi[e+1020>>2]=16;Xi[e+1036>>2]=16;Xi[e+1052>>2]=16;Xi[e+1068>>2]=16;Xi[e+1072>>2]=30;Xi[e+1088>>2]=30;Xi[e+1104>>2]=30;Xi[e+1120>>2]=30;Xi[e+1136>>2]=30;Xi[e+1152>>2]=30;Xi[e+1168>>2]=30;Xi[e+1184>>2]=30;Xi[e+1200>>2]=30;Xi[e+1216>>2]=30;Xi[e+1076>>2]=34;Xi[e+1092>>2]=34;Xi[e+1108>>2]=34;Xi[e+1124>>2]=34;Xi[e+1140>>2]=34;Xi[e+1156>>2]=34;Xi[e+1172>>2]=34;Xi[e+1188>>2]=34;Xi[e+1204>>2]=34;Xi[e+1220>>2]=34;Xi[e+1080>>2]=35;Xi[e+1096>>2]=35;Xi[e+1112>>2]=35;Xi[e+1128>>2]=35;Xi[e+1144>>2]=35;Xi[e+1160>>2]=35;Xi[e+1176>>2]=35;Xi[e+1192>>2]=35;Xi[e+1208>>2]=35;Xi[e+1224>>2]=35;Xi[e+1084>>2]=36;Xi[e+1100>>2]=36;Xi[e+1116>>2]=36;Xi[e+1132>>2]=36;Xi[e+1148>>2]=36;Xi[e+1164>>2]=36;Xi[e+1180>>2]=36;Xi[e+1196>>2]=36;Xi[e+1212>>2]=36;Xi[e+1228>>2]=36;Xi[e+1232>>2]=8;Xi[e+1248>>2]=8;Xi[e+1264>>2]=8;Xi[e+1280>>2]=8;Xi[e+1296>>2]=8;Xi[e+1312>>2]=8;Xi[e+1328>>2]=8;Xi[e+1344>>2]=8;Xi[e+1360>>2]=8;Xi[e+1376>>2]=8;Xi[e+1236>>2]=12;Xi[e+1252>>2]=12;Xi[e+1268>>2]=12;Xi[e+1284>>2]=12;Xi[e+1300>>2]=12;Xi[e+1316>>2]=12;Xi[e+1332>>2]=12;Xi[e+1348>>2]=12;Xi[e+1364>>2]=12;Xi[e+1380>>2]=12;Xi[e+1240>>2]=13;Xi[e+1256>>2]=13;Xi[e+1272>>2]=13;Xi[e+1288>>2]=13;Xi[e+1304>>2]=13;Xi[e+1320>>2]=13;Xi[e+1336>>2]=13;Xi[e+1352>>2]=13;Xi[e+1368>>2]=13;Xi[e+1384>>2]=13;Xi[e+1244>>2]=14;Xi[e+1260>>2]=14;Xi[e+1276>>2]=14;Xi[e+1292>>2]=14;Xi[e+1308>>2]=14;Xi[e+1324>>2]=14;Xi[e+1340>>2]=14;Xi[e+1356>>2]=14;Xi[e+1372>>2]=14;Xi[e+1388>>2]=14;Xi[e+1392>>2]=9;Xi[e+1408>>2]=9;Xi[e+1424>>2]=9;Xi[e+1440>>2]=9;Xi[e+1456>>2]=9;Xi[e+1472>>2]=9;Xi[e+1488>>2]=9;Xi[e+1504>>2]=9;Xi[e+1520>>2]=9;Xi[e+1536>>2]=9;Xi[e+1396>>2]=13;Xi[e+1412>>2]=13;Xi[e+1428>>2]=13;Xi[e+1444>>2]=13;Xi[e+1460>>2]=13;Xi[e+1476>>2]=13;Xi[e+1492>>2]=13;Xi[e+1508>>2]=13;Xi[e+1524>>2]=13;Xi[e+1540>>2]=13;Xi[e+1400>>2]=14;Xi[e+1416>>2]=14;Xi[e+1432>>2]=14;Xi[e+1448>>2]=14;Xi[e+1464>>2]=14;Xi[e+1480>>2]=14;Xi[e+1496>>2]=14;Xi[e+1512>>2]=14;Xi[e+1528>>2]=14;Xi[e+1544>>2]=14;Xi[e+1404>>2]=15;Xi[e+1420>>2]=15;Xi[e+1436>>2]=15;Xi[e+1452>>2]=15;Xi[e+1468>>2]=15;Xi[e+1484>>2]=15;Xi[e+1500>>2]=15;Xi[e+1516>>2]=15;Xi[e+1532>>2]=15;Xi[e+1548>>2]=15;Xi[e+1552>>2]=8;Xi[e+1568>>2]=8;Xi[e+1584>>2]=8;Xi[e+1600>>2]=8;Xi[e+1616>>2]=8;Xi[e+1632>>2]=8;Xi[e+1648>>2]=8;Xi[e+1664>>2]=8;Xi[e+1680>>2]=8;Xi[e+1696>>2]=8;Xi[e+1556>>2]=12;Xi[e+1572>>2]=12;Xi[e+1588>>2]=12;Xi[e+1604>>2]=12;Xi[e+1620>>2]=12;Xi[e+1636>>2]=12;Xi[e+1652>>2]=12;Xi[e+1668>>2]=12;Xi[e+1684>>2]=12;Xi[e+1700>>2]=12;Xi[e+1560>>2]=13;Xi[e+1576>>2]=13;Xi[e+1592>>2]=13;Xi[e+1608>>2]=13;Xi[e+1624>>2]=13;Xi[e+1640>>2]=13;Xi[e+1656>>2]=13;Xi[e+1672>>2]=13;Xi[e+1688>>2]=13;Xi[e+1704>>2]=13;Xi[e+1564>>2]=14;Xi[e+1580>>2]=14;Xi[e+1596>>2]=14;Xi[e+1612>>2]=14;Xi[e+1628>>2]=14;Xi[e+1644>>2]=14;Xi[e+1660>>2]=14;Xi[e+1676>>2]=14;Xi[e+1692>>2]=14;Xi[e+1708>>2]=14;Xi[e+1712>>2]=41;Xi[e+1716>>2]=42;Xi[e+1720>>2]=78;Xi[e+1724>>2]=79;Xi[e+1728>>2]=41;Xi[e+1732>>2]=42;Xi[e+1736>>2]=78;Xi[e+1740>>2]=79;break}case 12:{Xi[e>>2]=43;Xi[e+4>>2]=703;Xi[e+8>>2]=704;Xi[e+12>>2]=705;Xi[e+16>>2]=706;Xi[e+20>>2]=194;Xi[e+24>>2]=707;Xi[e+28>>2]=13;Xi[e+32>>2]=195;Xi[e+36>>2]=196;Xi[e+40>>2]=197;Xi[e+44>>2]=198;Xi[e+48>>2]=14;Xi[e+52>>2]=15;Xi[e+56>>2]=16;Xi[e+60>>2]=17;Xi[e+80>>2]=37;Xi[e+76>>2]=37;Xi[e+72>>2]=37;Xi[e+68>>2]=37;Xi[e+64>>2]=37;Xi[e+100>>2]=17;Xi[e+96>>2]=17;Xi[e+92>>2]=17;Xi[e+88>>2]=17;Xi[e+84>>2]=17;Xi[e+104>>2]=5;Xi[e+108>>2]=6;Xi[e+112>>2]=18;Xi[e+128>>2]=18;Xi[e+144>>2]=18;Xi[e+160>>2]=18;Xi[e+176>>2]=18;Xi[e+192>>2]=18;Xi[e+208>>2]=18;Xi[e+224>>2]=18;Xi[e+240>>2]=18;Xi[e+256>>2]=18;Xi[e+116>>2]=19;Xi[e+132>>2]=19;Xi[e+148>>2]=19;Xi[e+164>>2]=19;Xi[e+180>>2]=19;Xi[e+196>>2]=19;Xi[e+212>>2]=19;Xi[e+228>>2]=19;Xi[e+244>>2]=19;Xi[e+260>>2]=19;Xi[e+120>>2]=20;Xi[e+136>>2]=20;Xi[e+152>>2]=20;Xi[e+168>>2]=20;Xi[e+184>>2]=20;Xi[e+200>>2]=20;Xi[e+216>>2]=20;Xi[e+232>>2]=20;Xi[e+248>>2]=20;Xi[e+264>>2]=20;Xi[e+124>>2]=21;Xi[e+140>>2]=21;Xi[e+156>>2]=21;Xi[e+172>>2]=21;Xi[e+188>>2]=21;Xi[e+204>>2]=21;Xi[e+220>>2]=21;Xi[e+236>>2]=21;Xi[e+252>>2]=21;Xi[e+268>>2]=21;Xi[e+272>>2]=38;Xi[e+288>>2]=38;Xi[e+304>>2]=38;Xi[e+320>>2]=38;Xi[e+336>>2]=38;Xi[e+352>>2]=38;Xi[e+368>>2]=38;Xi[e+384>>2]=38;Xi[e+400>>2]=38;Xi[e+416>>2]=38;Xi[e+276>>2]=39;Xi[e+292>>2]=39;Xi[e+308>>2]=39;Xi[e+324>>2]=39;Xi[e+340>>2]=39;Xi[e+356>>2]=39;Xi[e+372>>2]=39;Xi[e+388>>2]=39;Xi[e+404>>2]=39;Xi[e+420>>2]=39;Xi[e+280>>2]=40;Xi[e+296>>2]=40;Xi[e+312>>2]=40;Xi[e+328>>2]=40;Xi[e+344>>2]=40;Xi[e+360>>2]=40;Xi[e+376>>2]=40;Xi[e+392>>2]=40;Xi[e+408>>2]=40;Xi[e+424>>2]=40;Xi[e+284>>2]=41;Xi[e+300>>2]=41;Xi[e+316>>2]=41;Xi[e+332>>2]=41;Xi[e+348>>2]=41;Xi[e+364>>2]=41;Xi[e+380>>2]=41;Xi[e+396>>2]=41;Xi[e+412>>2]=41;Xi[e+428>>2]=41;Xi[e+432>>2]=15;Xi[e+448>>2]=15;Xi[e+464>>2]=15;Xi[e+480>>2]=15;Xi[e+496>>2]=15;Xi[e+512>>2]=15;Xi[e+528>>2]=15;Xi[e+544>>2]=15;Xi[e+560>>2]=15;Xi[e+576>>2]=15;Xi[e+436>>2]=16;Xi[e+452>>2]=16;Xi[e+468>>2]=16;Xi[e+484>>2]=16;Xi[e+500>>2]=16;Xi[e+516>>2]=16;Xi[e+532>>2]=16;Xi[e+548>>2]=16;Xi[e+564>>2]=16;Xi[e+580>>2]=16;Xi[e+440>>2]=17;Xi[e+456>>2]=17;Xi[e+472>>2]=17;Xi[e+488>>2]=17;Xi[e+504>>2]=17;Xi[e+520>>2]=17;Xi[e+536>>2]=17;Xi[e+552>>2]=17;Xi[e+568>>2]=17;Xi[e+584>>2]=17;Xi[e+444>>2]=18;Xi[e+460>>2]=18;Xi[e+476>>2]=18;Xi[e+492>>2]=18;Xi[e+508>>2]=18;Xi[e+524>>2]=18;Xi[e+540>>2]=18;Xi[e+556>>2]=18;Xi[e+572>>2]=18;Xi[e+588>>2]=18;Xi[e+592>>2]=16;Xi[e+608>>2]=16;Xi[e+624>>2]=16;Xi[e+640>>2]=16;Xi[e+656>>2]=16;Xi[e+672>>2]=16;Xi[e+688>>2]=16;Xi[e+704>>2]=16;Xi[e+720>>2]=16;Xi[e+736>>2]=16;Xi[e+596>>2]=17;Xi[e+612>>2]=17;Xi[e+628>>2]=17;Xi[e+644>>2]=17;Xi[e+660>>2]=17;Xi[e+676>>2]=17;Xi[e+692>>2]=17;Xi[e+708>>2]=17;Xi[e+724>>2]=17;Xi[e+740>>2]=17;Xi[e+600>>2]=18;Xi[e+616>>2]=18;Xi[e+632>>2]=18;Xi[e+648>>2]=18;Xi[e+664>>2]=18;Xi[e+680>>2]=18;Xi[e+696>>2]=18;Xi[e+712>>2]=18;Xi[e+728>>2]=18;Xi[e+744>>2]=18;Xi[e+604>>2]=19;Xi[e+620>>2]=19;Xi[e+636>>2]=19;Xi[e+652>>2]=19;Xi[e+668>>2]=19;Xi[e+684>>2]=19;Xi[e+700>>2]=19;Xi[e+716>>2]=19;Xi[e+732>>2]=19;Xi[e+748>>2]=19;Xi[e+752>>2]=15;Xi[e+768>>2]=15;Xi[e+784>>2]=15;Xi[e+800>>2]=15;Xi[e+816>>2]=15;Xi[e+832>>2]=15;Xi[e+848>>2]=15;Xi[e+864>>2]=15;Xi[e+880>>2]=15;Xi[e+896>>2]=15;Xi[e+756>>2]=16;Xi[e+772>>2]=16;Xi[e+788>>2]=16;Xi[e+804>>2]=16;Xi[e+820>>2]=16;Xi[e+836>>2]=16;Xi[e+852>>2]=16;Xi[e+868>>2]=16;Xi[e+884>>2]=16;Xi[e+900>>2]=16;Xi[e+760>>2]=17;Xi[e+776>>2]=17;Xi[e+792>>2]=17;Xi[e+808>>2]=17;Xi[e+824>>2]=17;Xi[e+840>>2]=17;Xi[e+856>>2]=17;Xi[e+872>>2]=17;Xi[e+888>>2]=17;Xi[e+904>>2]=17;Xi[e+764>>2]=18;Xi[e+780>>2]=18;Xi[e+796>>2]=18;Xi[e+812>>2]=18;Xi[e+828>>2]=18;Xi[e+844>>2]=18;Xi[e+860>>2]=18;Xi[e+876>>2]=18;Xi[e+892>>2]=18;Xi[e+908>>2]=18;Xi[e+912>>2]=18;Xi[e+928>>2]=18;Xi[e+944>>2]=18;Xi[e+960>>2]=18;Xi[e+976>>2]=18;Xi[e+992>>2]=18;Xi[e+1008>>2]=18;Xi[e+1024>>2]=18;Xi[e+1040>>2]=18;Xi[e+1056>>2]=18;Xi[e+916>>2]=22;Xi[e+932>>2]=22;Xi[e+948>>2]=22;Xi[e+964>>2]=22;Xi[e+980>>2]=22;Xi[e+996>>2]=22;Xi[e+1012>>2]=22;Xi[e+1028>>2]=22;Xi[e+1044>>2]=22;Xi[e+1060>>2]=22;Xi[e+920>>2]=23;Xi[e+936>>2]=23;Xi[e+952>>2]=23;Xi[e+968>>2]=23;Xi[e+984>>2]=23;Xi[e+1e3>>2]=23;Xi[e+1016>>2]=23;Xi[e+1032>>2]=23;Xi[e+1048>>2]=23;Xi[e+1064>>2]=23;Xi[e+924>>2]=24;Xi[e+940>>2]=24;Xi[e+956>>2]=24;Xi[e+972>>2]=24;Xi[e+988>>2]=24;Xi[e+1004>>2]=24;Xi[e+1020>>2]=24;Xi[e+1036>>2]=24;Xi[e+1052>>2]=24;Xi[e+1068>>2]=24;Xi[e+1072>>2]=38;Xi[e+1088>>2]=38;Xi[e+1104>>2]=38;Xi[e+1120>>2]=38;Xi[e+1136>>2]=38;Xi[e+1152>>2]=38;Xi[e+1168>>2]=38;Xi[e+1184>>2]=38;Xi[e+1200>>2]=38;Xi[e+1216>>2]=38;Xi[e+1076>>2]=42;Xi[e+1092>>2]=42;Xi[e+1108>>2]=42;Xi[e+1124>>2]=42;Xi[e+1140>>2]=42;Xi[e+1156>>2]=42;Xi[e+1172>>2]=42;Xi[e+1188>>2]=42;Xi[e+1204>>2]=42;Xi[e+1220>>2]=42;Xi[e+1080>>2]=43;Xi[e+1096>>2]=43;Xi[e+1112>>2]=43;Xi[e+1128>>2]=43;Xi[e+1144>>2]=43;Xi[e+1160>>2]=43;Xi[e+1176>>2]=43;Xi[e+1192>>2]=43;Xi[e+1208>>2]=43;Xi[e+1224>>2]=43;Xi[e+1084>>2]=44;Xi[e+1100>>2]=44;Xi[e+1116>>2]=44;Xi[e+1132>>2]=44;Xi[e+1148>>2]=44;Xi[e+1164>>2]=44;Xi[e+1180>>2]=44;Xi[e+1196>>2]=44;Xi[e+1212>>2]=44;Xi[e+1228>>2]=44;Xi[e+1232>>2]=15;Xi[e+1248>>2]=15;Xi[e+1264>>2]=15;Xi[e+1280>>2]=15;Xi[e+1296>>2]=15;Xi[e+1312>>2]=15;Xi[e+1328>>2]=15;Xi[e+1344>>2]=15;Xi[e+1360>>2]=15;Xi[e+1376>>2]=15;Xi[e+1236>>2]=19;Xi[e+1252>>2]=19;Xi[e+1268>>2]=19;Xi[e+1284>>2]=19;Xi[e+1300>>2]=19;Xi[e+1316>>2]=19;Xi[e+1332>>2]=19;Xi[e+1348>>2]=19;Xi[e+1364>>2]=19;Xi[e+1380>>2]=19;Xi[e+1240>>2]=20;Xi[e+1256>>2]=20;Xi[e+1272>>2]=20;Xi[e+1288>>2]=20;Xi[e+1304>>2]=20;Xi[e+1320>>2]=20;Xi[e+1336>>2]=20;Xi[e+1352>>2]=20;Xi[e+1368>>2]=20;Xi[e+1384>>2]=20;Xi[e+1244>>2]=21;Xi[e+1260>>2]=21;Xi[e+1276>>2]=21;Xi[e+1292>>2]=21;Xi[e+1308>>2]=21;Xi[e+1324>>2]=21;Xi[e+1340>>2]=21;Xi[e+1356>>2]=21;Xi[e+1372>>2]=21;Xi[e+1388>>2]=21;Xi[e+1392>>2]=16;Xi[e+1408>>2]=16;Xi[e+1424>>2]=16;Xi[e+1440>>2]=16;Xi[e+1456>>2]=16;Xi[e+1472>>2]=16;Xi[e+1488>>2]=16;Xi[e+1504>>2]=16;Xi[e+1520>>2]=16;Xi[e+1536>>2]=16;Xi[e+1396>>2]=20;Xi[e+1412>>2]=20;Xi[e+1428>>2]=20;Xi[e+1444>>2]=20;Xi[e+1460>>2]=20;Xi[e+1476>>2]=20;Xi[e+1492>>2]=20;Xi[e+1508>>2]=20;Xi[e+1524>>2]=20;Xi[e+1540>>2]=20;Xi[e+1400>>2]=21;Xi[e+1416>>2]=21;Xi[e+1432>>2]=21;Xi[e+1448>>2]=21;Xi[e+1464>>2]=21;Xi[e+1480>>2]=21;Xi[e+1496>>2]=21;Xi[e+1512>>2]=21;Xi[e+1528>>2]=21;Xi[e+1544>>2]=21;Xi[e+1404>>2]=22;Xi[e+1420>>2]=22;Xi[e+1436>>2]=22;Xi[e+1452>>2]=22;Xi[e+1468>>2]=22;Xi[e+1484>>2]=22;Xi[e+1500>>2]=22;Xi[e+1516>>2]=22;Xi[e+1532>>2]=22;Xi[e+1548>>2]=22;Xi[e+1552>>2]=15;Xi[e+1568>>2]=15;Xi[e+1584>>2]=15;Xi[e+1600>>2]=15;Xi[e+1616>>2]=15;Xi[e+1632>>2]=15;Xi[e+1648>>2]=15;Xi[e+1664>>2]=15;Xi[e+1680>>2]=15;Xi[e+1696>>2]=15;Xi[e+1556>>2]=19;Xi[e+1572>>2]=19;Xi[e+1588>>2]=19;Xi[e+1604>>2]=19;Xi[e+1620>>2]=19;Xi[e+1636>>2]=19;Xi[e+1652>>2]=19;Xi[e+1668>>2]=19;Xi[e+1684>>2]=19;Xi[e+1700>>2]=19;Xi[e+1560>>2]=20;Xi[e+1576>>2]=20;Xi[e+1592>>2]=20;Xi[e+1608>>2]=20;Xi[e+1624>>2]=20;Xi[e+1640>>2]=20;Xi[e+1656>>2]=20;Xi[e+1672>>2]=20;Xi[e+1688>>2]=20;Xi[e+1704>>2]=20;Xi[e+1564>>2]=21;Xi[e+1580>>2]=21;Xi[e+1596>>2]=21;Xi[e+1612>>2]=21;Xi[e+1628>>2]=21;Xi[e+1644>>2]=21;Xi[e+1660>>2]=21;Xi[e+1676>>2]=21;Xi[e+1692>>2]=21;Xi[e+1708>>2]=21;Xi[e+1712>>2]=44;Xi[e+1716>>2]=45;Xi[e+1720>>2]=80;Xi[e+1724>>2]=81;Xi[e+1728>>2]=44;Xi[e+1732>>2]=45;Xi[e+1736>>2]=80;Xi[e+1740>>2]=81;break}default:{Xi[e>>2]=46;Xi[e+4>>2]=708;Xi[e+8>>2]=709;Xi[e+12>>2]=710;Xi[e+16>>2]=711;Xi[e+20>>2]=199;Xi[e+24>>2]=712;Xi[e+28>>2]=18;Xi[e+32>>2]=200;Xi[e+36>>2]=201;Xi[e+40>>2]=202;Xi[e+44>>2]=203;Xi[e+48>>2]=19;Xi[e+52>>2]=20;Xi[e+56>>2]=21;Xi[e+60>>2]=22;Xi[e+80>>2]=45;Xi[e+76>>2]=45;Xi[e+72>>2]=45;Xi[e+68>>2]=45;Xi[e+64>>2]=45;Xi[e+100>>2]=25;Xi[e+96>>2]=25;Xi[e+92>>2]=25;Xi[e+88>>2]=25;Xi[e+84>>2]=25;Xi[e+104>>2]=7;Xi[e+108>>2]=8;Xi[e+112>>2]=26;Xi[e+128>>2]=26;Xi[e+144>>2]=26;Xi[e+160>>2]=26;Xi[e+176>>2]=26;Xi[e+192>>2]=26;Xi[e+208>>2]=26;Xi[e+224>>2]=26;Xi[e+240>>2]=26;Xi[e+256>>2]=26;Xi[e+116>>2]=27;Xi[e+132>>2]=27;Xi[e+148>>2]=27;Xi[e+164>>2]=27;Xi[e+180>>2]=27;Xi[e+196>>2]=27;Xi[e+212>>2]=27;Xi[e+228>>2]=27;Xi[e+244>>2]=27;Xi[e+260>>2]=27;Xi[e+120>>2]=28;Xi[e+136>>2]=28;Xi[e+152>>2]=28;Xi[e+168>>2]=28;Xi[e+184>>2]=28;Xi[e+200>>2]=28;Xi[e+216>>2]=28;Xi[e+232>>2]=28;Xi[e+248>>2]=28;Xi[e+264>>2]=28;Xi[e+124>>2]=29;Xi[e+140>>2]=29;Xi[e+156>>2]=29;Xi[e+172>>2]=29;Xi[e+188>>2]=29;Xi[e+204>>2]=29;Xi[e+220>>2]=29;Xi[e+236>>2]=29;Xi[e+252>>2]=29;Xi[e+268>>2]=29;Xi[e+272>>2]=46;Xi[e+288>>2]=46;Xi[e+304>>2]=46;Xi[e+320>>2]=46;Xi[e+336>>2]=46;Xi[e+352>>2]=46;Xi[e+368>>2]=46;Xi[e+384>>2]=46;Xi[e+400>>2]=46;Xi[e+416>>2]=46;Xi[e+276>>2]=47;Xi[e+292>>2]=47;Xi[e+308>>2]=47;Xi[e+324>>2]=47;Xi[e+340>>2]=47;Xi[e+356>>2]=47;Xi[e+372>>2]=47;Xi[e+388>>2]=47;Xi[e+404>>2]=47;Xi[e+420>>2]=47;Xi[e+280>>2]=48;Xi[e+296>>2]=48;Xi[e+312>>2]=48;Xi[e+328>>2]=48;Xi[e+344>>2]=48;Xi[e+360>>2]=48;Xi[e+376>>2]=48;Xi[e+392>>2]=48;Xi[e+408>>2]=48;Xi[e+424>>2]=48;Xi[e+284>>2]=49;Xi[e+300>>2]=49;Xi[e+316>>2]=49;Xi[e+332>>2]=49;Xi[e+348>>2]=49;Xi[e+364>>2]=49;Xi[e+380>>2]=49;Xi[e+396>>2]=49;Xi[e+412>>2]=49;Xi[e+428>>2]=49;Xi[e+432>>2]=22;Xi[e+448>>2]=22;Xi[e+464>>2]=22;Xi[e+480>>2]=22;Xi[e+496>>2]=22;Xi[e+512>>2]=22;Xi[e+528>>2]=22;Xi[e+544>>2]=22;Xi[e+560>>2]=22;Xi[e+576>>2]=22;Xi[e+436>>2]=23;Xi[e+452>>2]=23;Xi[e+468>>2]=23;Xi[e+484>>2]=23;Xi[e+500>>2]=23;Xi[e+516>>2]=23;Xi[e+532>>2]=23;Xi[e+548>>2]=23;Xi[e+564>>2]=23;Xi[e+580>>2]=23;Xi[e+440>>2]=24;Xi[e+456>>2]=24;Xi[e+472>>2]=24;Xi[e+488>>2]=24;Xi[e+504>>2]=24;Xi[e+520>>2]=24;Xi[e+536>>2]=24;Xi[e+552>>2]=24;Xi[e+568>>2]=24;Xi[e+584>>2]=24;Xi[e+444>>2]=25;Xi[e+460>>2]=25;Xi[e+476>>2]=25;Xi[e+492>>2]=25;Xi[e+508>>2]=25;Xi[e+524>>2]=25;Xi[e+540>>2]=25;Xi[e+556>>2]=25;Xi[e+572>>2]=25;Xi[e+588>>2]=25;Xi[e+592>>2]=23;Xi[e+608>>2]=23;Xi[e+624>>2]=23;Xi[e+640>>2]=23;Xi[e+656>>2]=23;Xi[e+672>>2]=23;Xi[e+688>>2]=23;Xi[e+704>>2]=23;Xi[e+720>>2]=23;Xi[e+736>>2]=23;Xi[e+596>>2]=24;Xi[e+612>>2]=24;Xi[e+628>>2]=24;Xi[e+644>>2]=24;Xi[e+660>>2]=24;Xi[e+676>>2]=24;Xi[e+692>>2]=24;Xi[e+708>>2]=24;Xi[e+724>>2]=24;Xi[e+740>>2]=24;Xi[e+600>>2]=25;Xi[e+616>>2]=25;Xi[e+632>>2]=25;Xi[e+648>>2]=25;Xi[e+664>>2]=25;Xi[e+680>>2]=25;Xi[e+696>>2]=25;Xi[e+712>>2]=25;Xi[e+728>>2]=25;Xi[e+744>>2]=25;Xi[e+604>>2]=26;Xi[e+620>>2]=26;Xi[e+636>>2]=26;Xi[e+652>>2]=26;Xi[e+668>>2]=26;Xi[e+684>>2]=26;Xi[e+700>>2]=26;Xi[e+716>>2]=26;Xi[e+732>>2]=26;Xi[e+748>>2]=26;Xi[e+752>>2]=22;Xi[e+768>>2]=22;Xi[e+784>>2]=22;Xi[e+800>>2]=22;Xi[e+816>>2]=22;Xi[e+832>>2]=22;Xi[e+848>>2]=22;Xi[e+864>>2]=22;Xi[e+880>>2]=22;Xi[e+896>>2]=22;Xi[e+756>>2]=23;Xi[e+772>>2]=23;Xi[e+788>>2]=23;Xi[e+804>>2]=23;Xi[e+820>>2]=23;Xi[e+836>>2]=23;Xi[e+852>>2]=23;Xi[e+868>>2]=23;Xi[e+884>>2]=23;Xi[e+900>>2]=23;Xi[e+760>>2]=24;Xi[e+776>>2]=24;Xi[e+792>>2]=24;Xi[e+808>>2]=24;Xi[e+824>>2]=24;Xi[e+840>>2]=24;Xi[e+856>>2]=24;Xi[e+872>>2]=24;Xi[e+888>>2]=24;Xi[e+904>>2]=24;Xi[e+764>>2]=25;Xi[e+780>>2]=25;Xi[e+796>>2]=25;Xi[e+812>>2]=25;Xi[e+828>>2]=25;Xi[e+844>>2]=25;Xi[e+860>>2]=25;Xi[e+876>>2]=25;Xi[e+892>>2]=25;Xi[e+908>>2]=25;Xi[e+912>>2]=26;Xi[e+928>>2]=26;Xi[e+944>>2]=26;Xi[e+960>>2]=26;Xi[e+976>>2]=26;Xi[e+992>>2]=26;Xi[e+1008>>2]=26;Xi[e+1024>>2]=26;Xi[e+1040>>2]=26;Xi[e+1056>>2]=26;Xi[e+916>>2]=30;Xi[e+932>>2]=30;Xi[e+948>>2]=30;Xi[e+964>>2]=30;Xi[e+980>>2]=30;Xi[e+996>>2]=30;Xi[e+1012>>2]=30;Xi[e+1028>>2]=30;Xi[e+1044>>2]=30;Xi[e+1060>>2]=30;Xi[e+920>>2]=31;Xi[e+936>>2]=31;Xi[e+952>>2]=31;Xi[e+968>>2]=31;Xi[e+984>>2]=31;Xi[e+1e3>>2]=31;Xi[e+1016>>2]=31;Xi[e+1032>>2]=31;Xi[e+1048>>2]=31;Xi[e+1064>>2]=31;Xi[e+924>>2]=32;Xi[e+940>>2]=32;Xi[e+956>>2]=32;Xi[e+972>>2]=32;Xi[e+988>>2]=32;Xi[e+1004>>2]=32;Xi[e+1020>>2]=32;Xi[e+1036>>2]=32;Xi[e+1052>>2]=32;Xi[e+1068>>2]=32;Xi[e+1072>>2]=46;Xi[e+1088>>2]=46;Xi[e+1104>>2]=46;Xi[e+1120>>2]=46;Xi[e+1136>>2]=46;Xi[e+1152>>2]=46;Xi[e+1168>>2]=46;Xi[e+1184>>2]=46;Xi[e+1200>>2]=46;Xi[e+1216>>2]=46;Xi[e+1076>>2]=50;Xi[e+1092>>2]=50;Xi[e+1108>>2]=50;Xi[e+1124>>2]=50;Xi[e+1140>>2]=50;Xi[e+1156>>2]=50;Xi[e+1172>>2]=50;Xi[e+1188>>2]=50;Xi[e+1204>>2]=50;Xi[e+1220>>2]=50;Xi[e+1080>>2]=51;Xi[e+1096>>2]=51;Xi[e+1112>>2]=51;Xi[e+1128>>2]=51;Xi[e+1144>>2]=51;Xi[e+1160>>2]=51;Xi[e+1176>>2]=51;Xi[e+1192>>2]=51;Xi[e+1208>>2]=51;Xi[e+1224>>2]=51;Xi[e+1084>>2]=52;Xi[e+1100>>2]=52;Xi[e+1116>>2]=52;Xi[e+1132>>2]=52;Xi[e+1148>>2]=52;Xi[e+1164>>2]=52;Xi[e+1180>>2]=52;Xi[e+1196>>2]=52;Xi[e+1212>>2]=52;Xi[e+1228>>2]=52;Xi[e+1232>>2]=22;Xi[e+1248>>2]=22;Xi[e+1264>>2]=22;Xi[e+1280>>2]=22;Xi[e+1296>>2]=22;Xi[e+1312>>2]=22;Xi[e+1328>>2]=22;Xi[e+1344>>2]=22;Xi[e+1360>>2]=22;Xi[e+1376>>2]=22;Xi[e+1236>>2]=26;Xi[e+1252>>2]=26;Xi[e+1268>>2]=26;Xi[e+1284>>2]=26;Xi[e+1300>>2]=26;Xi[e+1316>>2]=26;Xi[e+1332>>2]=26;Xi[e+1348>>2]=26;Xi[e+1364>>2]=26;Xi[e+1380>>2]=26;Xi[e+1240>>2]=27;Xi[e+1256>>2]=27;Xi[e+1272>>2]=27;Xi[e+1288>>2]=27;Xi[e+1304>>2]=27;Xi[e+1320>>2]=27;Xi[e+1336>>2]=27;Xi[e+1352>>2]=27;Xi[e+1368>>2]=27;Xi[e+1384>>2]=27;Xi[e+1244>>2]=28;Xi[e+1260>>2]=28;Xi[e+1276>>2]=28;Xi[e+1292>>2]=28;Xi[e+1308>>2]=28;Xi[e+1324>>2]=28;Xi[e+1340>>2]=28;Xi[e+1356>>2]=28;Xi[e+1372>>2]=28;Xi[e+1388>>2]=28;Xi[e+1392>>2]=23;Xi[e+1408>>2]=23;Xi[e+1424>>2]=23;Xi[e+1440>>2]=23;Xi[e+1456>>2]=23;Xi[e+1472>>2]=23;Xi[e+1488>>2]=23;Xi[e+1504>>2]=23;Xi[e+1520>>2]=23;Xi[e+1536>>2]=23;Xi[e+1396>>2]=27;Xi[e+1412>>2]=27;Xi[e+1428>>2]=27;Xi[e+1444>>2]=27;Xi[e+1460>>2]=27;Xi[e+1476>>2]=27;Xi[e+1492>>2]=27;Xi[e+1508>>2]=27;Xi[e+1524>>2]=27;Xi[e+1540>>2]=27;Xi[e+1400>>2]=28;Xi[e+1416>>2]=28;Xi[e+1432>>2]=28;Xi[e+1448>>2]=28;Xi[e+1464>>2]=28;Xi[e+1480>>2]=28;Xi[e+1496>>2]=28;Xi[e+1512>>2]=28;Xi[e+1528>>2]=28;Xi[e+1544>>2]=28;Xi[e+1404>>2]=29;Xi[e+1420>>2]=29;Xi[e+1436>>2]=29;Xi[e+1452>>2]=29;Xi[e+1468>>2]=29;Xi[e+1484>>2]=29;Xi[e+1500>>2]=29;Xi[e+1516>>2]=29;Xi[e+1532>>2]=29;Xi[e+1548>>2]=29;Xi[e+1552>>2]=22;Xi[e+1568>>2]=22;Xi[e+1584>>2]=22;Xi[e+1600>>2]=22;Xi[e+1616>>2]=22;Xi[e+1632>>2]=22;Xi[e+1648>>2]=22;Xi[e+1664>>2]=22;Xi[e+1680>>2]=22;Xi[e+1696>>2]=22;Xi[e+1556>>2]=26;Xi[e+1572>>2]=26;Xi[e+1588>>2]=26;Xi[e+1604>>2]=26;Xi[e+1620>>2]=26;Xi[e+1636>>2]=26;Xi[e+1652>>2]=26;Xi[e+1668>>2]=26;Xi[e+1684>>2]=26;Xi[e+1700>>2]=26;Xi[e+1560>>2]=27;Xi[e+1576>>2]=27;Xi[e+1592>>2]=27;Xi[e+1608>>2]=27;Xi[e+1624>>2]=27;Xi[e+1640>>2]=27;Xi[e+1656>>2]=27;Xi[e+1672>>2]=27;Xi[e+1688>>2]=27;Xi[e+1704>>2]=27;Xi[e+1564>>2]=28;Xi[e+1580>>2]=28;Xi[e+1596>>2]=28;Xi[e+1612>>2]=28;Xi[e+1628>>2]=28;Xi[e+1644>>2]=28;Xi[e+1660>>2]=28;Xi[e+1676>>2]=28;Xi[e+1692>>2]=28;Xi[e+1708>>2]=28;Xi[e+1712>>2]=47;Xi[e+1716>>2]=48;Xi[e+1720>>2]=82;Xi[e+1724>>2]=83;Xi[e+1728>>2]=47;Xi[e+1732>>2]=48;Xi[e+1736>>2]=82;Xi[e+1740>>2]=83}}return}function WE(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;u=i>>>1;if((f|0)>0){h=(r|0)>0;w=l+8|0;k=l+16|0;b=32-a|0;c=9-a|0;s=0;while(1){if(h){i=Xi[k>>2]|0;n=Xi[l>>2]|0;t=Xi[w>>2]|0;o=0;do{d=n+(t>>>3)|0;d=(ZT(qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24|0)|0)<<(t&7)>>>b;v=t+a|0;t=i>>>0>v>>>0?v:i;Xi[w>>2]=t;Gi[e+(o<<1)>>1]=d<<c;o=o+1|0}while((o|0)!=(r|0))}s=s+1|0;if((s|0)==(f|0))break;else e=e+(u<<1)|0}}return}function GE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=r;a=a+1|0;if((a|0)==4)break;else f=f+2|0}n=n+1|0;if((n|0)==4)break;else{i=i+8|0;e=e+(t<<1)|0}}return}function XE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=r;a=a+1|0;if((a|0)==8)break;else f=f+2|0}n=n+1|0;if((n|0)==8)break;else{i=i+16|0;e=e+(t<<1)|0}}return}function qE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=r;a=a+1|0;if((a|0)==16)break;else f=f+2|0}n=n+1|0;if((n|0)==16)break;else{i=i+32|0;e=e+(t<<1)|0}}return}function JE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[l>>1]=r;a=a+1|0;if((a|0)==32)break;else f=f+2|0}n=n+1|0;if((n|0)==32)break;else{i=i+64|0;e=e+(t<<1)|0}}return}function ZE(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=i<<16>>16;a=6-t|0;t=1<<t;if((a|0)>0){n=1<<a+-1;if(i<<16>>16!=31){l=(t|0)>1?t:1;f=0;while(1){i=e;r=0;while(1){Gi[i>>1]=(Gi[i>>1]|0)+n>>a;r=r+1|0;if((r|0)>=(t|0))break;else i=i+2|0}f=f+1|0;if((f|0)>=(t|0))break;else e=e+(l<<1)|0}}}else if(i<<16>>16!=31){l=0-a|0;a=(t|0)>1?t:1;i=e;f=0;while(1){e=i;r=0;while(1){Gi[e>>1]=Gi[e>>1]<<l;r=r+1|0;if((r|0)>=(t|0))break;else e=e+2|0}f=f+1|0;if((f|0)>=(t|0))break;else i=i+(a<<1)|0}}return}function QE(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=1<<(i<<16>>16);if(!r){if(i<<16>>16!=31){l=(a|0)>1;r=e;f=0;while(1){if(l){i=Gi[r>>1]|0;e=1;do{n=r+(e<<1)|0;i=(Ji[n>>1]|0)+(i&65535)&65535;Gi[n>>1]=i;e=e+1|0}while((e|0)!=(a|0))}f=f+1|0;if((f|0)>=(a|0))break;else r=r+(a<<1)|0}}}else if((a|0)>1){f=i<<16>>16==31;l=a+-1|0;i=e;e=0;do{if(!f){r=0;do{n=i+(r+a<<1)|0;Gi[n>>1]=(Ji[n>>1]|0)+(Ji[i+(r<<1)>>1]|0);r=r+1|0}while((r|0)!=(a|0))}i=i+(a<<1)|0;e=e+1|0}while((e|0)!=(l|0))}return}function $E(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=0;r=e;while(1){w=Gi[r>>1]|0;u=r+16|0;o=Gi[u>>1]|0;n=o+w|0;f=r+24|0;h=Gi[f>>1]|0;s=h+o|0;l=w-h|0;t=r+8|0;a=(Gi[t>>1]|0)*74|0;h=((w-o+h|0)*74|0)+64|0;o=h>>7;Gi[u>>1]=(o+32768|0)>>>0>65535?h>>31^32767:o;u=(n*29|0)+64+(s*55|0)+a|0;o=u>>7;Gi[r>>1]=(o+32768|0)>>>0>65535?u>>31^32767:o;s=(Zi(s,-29)|0)+64+(l*55|0)+a|0;o=s>>7;Gi[t>>1]=(o+32768|0)>>>0>65535?s>>31^32767:o;a=(n*55|0)+64+(l*29|0)-a|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){f=Gi[e>>1]|0;a=e+4|0;t=Gi[a>>1]|0;s=t+f|0;w=e+6|0;l=Gi[w>>1]|0;n=l+t|0;h=f-l|0;o=e+2|0;u=(Gi[o>>1]|0)*74|0;l=((f-t+l|0)*74|0)+1024|0;t=l>>11;Gi[a>>1]=(t+32768|0)>>>0>65535?l>>31^32767:t;a=(s*29|0)+1024+(n*55|0)+u|0;t=a>>11;Gi[e>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=(Zi(n,-29)|0)+1024+(h*55|0)+u|0;t=n>>11;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;u=(s*55|0)+1024+(h*29|0)-u|0;h=u>>11;Gi[w>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function eS(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;i=0;r=e;while(1){s=Gi[r>>1]<<6;n=r+16|0;t=Gi[n>>1]<<6;l=t+s|0;t=s-t|0;s=r+8|0;u=Gi[s>>1]|0;f=r+24|0;o=Gi[f>>1]|0;a=(o*36|0)+(u*83|0)|0;o=(u*36|0)+(Zi(o,-83)|0)|0;u=l+64+a|0;h=u>>7;Gi[r>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;h=t+64+o|0;u=h>>7;Gi[s>>1]=(u+32768|0)>>>0>65535?h>>31^32767:u;o=t-o+64|0;t=o>>7;Gi[n>>1]=(t+32768|0)>>>0>65535?o>>31^32767:t;a=l-a+64|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){a=Gi[e>>1]<<6;o=e+4|0;t=Gi[o>>1]<<6;u=t+a|0;t=a-t|0;a=e+2|0;l=Gi[a>>1]|0;h=e+6|0;n=Gi[h>>1]|0;s=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=u+1024+s|0;f=l>>11;Gi[e>>1]=(f+32768|0)>>>0>65535?l>>31^32767:f;f=t+1024+n|0;l=f>>11;Gi[a>>1]=(l+32768|0)>>>0>65535?f>>31^32767:l;n=t-n+1024|0;t=n>>11;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;s=u-s+1024|0;u=s>>11;Gi[h>>1]=(u+32768|0)>>>0>65535?s>>31^32767:u;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function iS(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+64|0;w=E+48|0;b=E+32|0;d=E+16|0;v=E;o=(i|0)>8;r=i+4|0;s=w+4|0;u=w+8|0;h=w+12|0;k=0;r=(r|0)>8?8:r;c=e;while(1){Xi[b>>2]=0;Xi[b+4>>2]=0;Xi[b+8>>2]=0;Xi[b+12>>2]=0;a=(r|0)>1;t=0;do{if(a){n=b+(t<<2)|0;f=Xi[n>>2]|0;l=1;do{f=(Zi(Gi[c+(l<<3<<1)>>1]|0,Wi[128076+(l<<2<<5)+t>>0]|0)|0)+f|0;l=l+2|0}while((l|0)<(r|0));Xi[n>>2]=f}t=t+1|0}while((t|0)!=4);l=Gi[c>>1]<<6;a=Gi[c+64>>1]<<6;t=a+l|0;a=l-a|0;l=Gi[c+32>>1]|0;n=Gi[c+96>>1]|0;f=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=f+t|0;Xi[w>>2]=l;Xi[s>>2]=n+a;Xi[u>>2]=a-n;Xi[h>>2]=t-f;f=0;while(1){n=Xi[b+(f<<2)>>2]|0;a=l+64+n|0;t=a>>7;Gi[c+(f<<3<<1)>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=l-n+64|0;t=n>>7;Gi[c+(7-f<<3<<1)>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;f=f+1|0;if((f|0)==4)break;l=Xi[w+(f<<2)>>2]|0}if((r|0)<8)r=(k|0)!=0&(k&3|0)==0?r+-4|0:r;k=k+1|0;if((k|0)==8)break;else c=c+2|0}s=o?8:i;u=(s|0)>1;h=d+4|0;t=d+8|0;o=d+12|0;n=0;while(1){Xi[v>>2]=0;Xi[v+4>>2]=0;Xi[v+8>>2]=0;Xi[v+12>>2]=0;a=0;do{if(u){l=v+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[e+(f<<1)>>1]|0,Wi[128076+(f<<2<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=4);f=Gi[e>>1]<<6;k=Gi[e+8>>1]<<6;c=k+f|0;k=f-k|0;f=Gi[e+4>>1]|0;b=Gi[e+12>>1]|0;r=(b*36|0)+(f*83|0)|0;b=(f*36|0)+(Zi(b,-83)|0)|0;f=r+c|0;Xi[d>>2]=f;Xi[h>>2]=b+k;Xi[t>>2]=k-b;Xi[o>>2]=c-r;r=0;while(1){b=Xi[v+(r<<2)>>2]|0;k=f+1024+b|0;c=k>>11;Gi[e+(r<<1)>>1]=(c+32768|0)>>>0>65535?k>>31^32767:c;b=f-b+1024|0;c=b>>11;Gi[e+(7-r<<1)>>1]=(c+32768|0)>>>0>65535?b>>31^32767:c;r=r+1|0;if((r|0)==4)break;f=Xi[d+(r<<2)>>2]|0}n=n+1|0;if((n|0)==8)break;else e=e+16|0}Ue=E;return}function rS(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;D=Ue;Ue=Ue+192|0;E=D+160|0;_=D+128|0;g=D+112|0;m=D+96|0;M=D+64|0;R=D+32|0;N=D+16|0;T=D;F=(i|0)>16;n=i+4|0;y=g+4|0;O=g+8|0;A=g+12|0;c=E+28|0;d=m+4|0;v=E+4|0;o=E+24|0;s=m+8|0;u=E+8|0;h=E+20|0;w=m+12|0;k=E+12|0;b=E+16|0;S=0;n=(n|0)>16?16:n;p=e;while(1){Xi[_>>2]=0;Xi[_+4>>2]=0;Xi[_+8>>2]=0;Xi[_+12>>2]=0;Xi[_+16>>2]=0;Xi[_+20>>2]=0;Xi[_+24>>2]=0;Xi[_+28>>2]=0;l=(n|0)>1;t=0;do{if(l){a=_+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[p+(f<<4<<1)>>1]|0,Wi[128076+(f<<1<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=8);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;r=Gi[p+64>>1]|0;f=Gi[p+192>>1]|0;l=Gi[p+320>>1]|0;a=Gi[p+448>>1]|0;t=0;do{C=m+(t<<2)|0;P=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[C>>2]|0)|0;P=(Zi(f,Wi[128460+t>>0]|0)|0)+P|0;P=(Zi(l,Wi[128716+t>>0]|0)|0)+P|0;Xi[C>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+P;t=t+1|0}while((t|0)!=4);a=Gi[p>>1]<<6;P=Gi[p+256>>1]<<6;t=P+a|0;P=a-P|0;a=Gi[p+128>>1]|0;f=Gi[p+384>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+P|0;f=P-f|0;r=t-r|0;t=Xi[m>>2]|0;Xi[E>>2]=t+a;Xi[c>>2]=a-t;t=Xi[d>>2]|0;Xi[v>>2]=t+l;Xi[o>>2]=l-t;t=Xi[s>>2]|0;Xi[u>>2]=t+f;Xi[h>>2]=f-t;t=Xi[w>>2]|0;Xi[k>>2]=t+r;Xi[b>>2]=r-t;t=0;do{P=Xi[E+(t<<2)>>2]|0;C=Xi[_+(t<<2)>>2]|0;I=P+64+C|0;L=I>>7;Gi[p+(t<<4<<1)>>1]=(L+32768|0)>>>0>65535?I>>31^32767:L;C=P-C+64|0;P=C>>7;Gi[p+(15-t<<4<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;t=t+1|0}while((t|0)!=8);if((n|0)<16)n=(S|0)!=0&(S&3|0)==0?n+-4|0:n;S=S+1|0;if((S|0)==16)break;else p=p+2|0}Xi[g>>2]=a;Xi[y>>2]=l;Xi[O>>2]=f;Xi[A>>2]=r;s=F?16:i;u=(s|0)>1;m=N+4|0;p=N+8|0;F=N+12|0;h=M+28|0;w=T+4|0;k=M+4|0;b=M+24|0;c=T+8|0;d=M+8|0;v=M+20|0;E=T+12|0;S=M+12|0;_=M+16|0;t=e;o=0;while(1){Xi[R>>2]=0;Xi[R+4>>2]=0;Xi[R+8>>2]=0;Xi[R+12>>2]=0;Xi[R+16>>2]=0;Xi[R+20>>2]=0;Xi[R+24>>2]=0;Xi[R+28>>2]=0;a=0;do{if(u){l=R+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<1<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[T>>2]=0;Xi[T+4>>2]=0;Xi[T+8>>2]=0;Xi[T+12>>2]=0;r=Gi[t+4>>1]|0;f=Gi[t+12>>1]|0;l=Gi[t+20>>1]|0;a=Gi[t+28>>1]|0;n=0;do{I=T+(n<<2)|0;L=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[I>>2]|0)|0;L=(Zi(f,Wi[128460+n>>0]|0)|0)+L|0;L=(Zi(l,Wi[128716+n>>0]|0)|0)+L|0;Xi[I>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+L;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;I=Gi[t+16>>1]<<6;n=I+a|0;I=a-I|0;a=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+I|0;f=I-f|0;r=n-r|0;n=Xi[T>>2]|0;Xi[M>>2]=n+a;Xi[h>>2]=a-n;n=Xi[w>>2]|0;Xi[k>>2]=n+l;Xi[b>>2]=l-n;n=Xi[c>>2]|0;Xi[d>>2]=n+f;Xi[v>>2]=f-n;n=Xi[E>>2]|0;Xi[S>>2]=n+r;Xi[_>>2]=r-n;n=0;do{I=Xi[M+(n<<2)>>2]|0;L=Xi[R+(n<<2)>>2]|0;C=I+1024+L|0;P=C>>11;Gi[t+(n<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;L=I-L+1024|0;I=L>>11;Gi[t+(15-n<<1)>>1]=(I+32768|0)>>>0>65535?L>>31^32767:I;n=n+1|0}while((n|0)!=8);o=o+1|0;if((o|0)==16)break;else t=t+32|0}Xi[N>>2]=a;Xi[m>>2]=l;Xi[p>>2]=f;Xi[F>>2]=r;Ue=D;return}function fS(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;L=Ue;Ue=Ue+320|0;T=L+256|0;D=L+192|0;S=L+160|0;m=L+128|0;M=L+112|0;p=L+96|0;R=L+64|0;N=L+32|0;P=L+16|0;C=L;y=(i|0)>32;n=i+4|0;O=M+4|0;A=M+8|0;g=M+12|0;d=S+28|0;v=p+4|0;E=S+4|0;s=S+24|0;u=p+8|0;h=S+8|0;w=S+20|0;k=p+12|0;b=S+12|0;c=S+16|0;_=0;n=(n|0)>32?32:n;F=e;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));l=(n|0)>1;t=0;do{if(l){a=D+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<5<<1)>>1]|0,Wi[128076+(f<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=16);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;Xi[m+16>>2]=0;Xi[m+20>>2]=0;Xi[m+24>>2]=0;Xi[m+28>>2]=0;l=(n|0)/2|0;a=(n|0)>3;o=0;do{if(a){t=m+(o<<2)|0;r=Xi[t>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<6<<1)>>1]|0,Wi[128076+(f<<1<<5)+o>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(l|0));Xi[t>>2]=r}o=o+1|0}while((o|0)!=8);Xi[p>>2]=0;Xi[p+4>>2]=0;Xi[p+8>>2]=0;Xi[p+12>>2]=0;r=Gi[F+256>>1]|0;f=Gi[F+768>>1]|0;l=Gi[F+1280>>1]|0;a=Gi[F+1792>>1]|0;t=0;do{o=p+(t<<2)|0;I=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[o>>2]|0)|0;I=(Zi(f,Wi[128460+t>>0]|0)|0)+I|0;I=(Zi(l,Wi[128716+t>>0]|0)|0)+I|0;Xi[o>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+I;t=t+1|0}while((t|0)!=4);a=Gi[F>>1]<<6;I=Gi[F+1024>>1]<<6;t=I+a|0;I=a-I|0;a=Gi[F+512>>1]|0;f=Gi[F+1536>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+I|0;f=I-f|0;r=t-r|0;t=Xi[p>>2]|0;Xi[S>>2]=t+a;Xi[d>>2]=a-t;t=Xi[v>>2]|0;Xi[E>>2]=t+l;Xi[s>>2]=l-t;t=Xi[u>>2]|0;Xi[h>>2]=t+f;Xi[w>>2]=f-t;t=Xi[k>>2]|0;Xi[b>>2]=t+r;Xi[c>>2]=r-t;t=0;do{o=Xi[S+(t<<2)>>2]|0;I=Xi[m+(t<<2)>>2]|0;Xi[T+(t<<2)>>2]=I+o;Xi[T+(15-t<<2)>>2]=o-I;t=t+1|0}while((t|0)!=8);t=0;do{I=Xi[T+(t<<2)>>2]|0;o=Xi[D+(t<<2)>>2]|0;B=I+64+o|0;H=B>>7;Gi[F+(t<<5<<1)>>1]=(H+32768|0)>>>0>65535?B>>31^32767:H;o=I-o+64|0;I=o>>7;Gi[F+(31-t<<5<<1)>>1]=(I+32768|0)>>>0>65535?o>>31^32767:I;t=t+1|0}while((t|0)!=16);if((n|0)<32)n=(_|0)!=0&(_&3|0)==0?n+-4|0:n;_=_+1|0;if((_|0)==32)break;else F=F+2|0}Xi[M>>2]=a;Xi[O>>2]=l;Xi[A>>2]=f;Xi[g>>2]=r;s=y?32:i;u=(s|0)>1;h=(s|0)/2|0;w=(s|0)>3;F=P+4|0;y=P+8|0;O=P+12|0;k=R+28|0;b=C+4|0;c=R+4|0;d=R+24|0;v=C+8|0;E=R+8|0;S=R+20|0;_=C+12|0;m=R+12|0;p=R+16|0;t=e;o=0;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));a=0;do{if(u){l=D+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=16);Xi[N>>2]=0;Xi[N+4>>2]=0;Xi[N+8>>2]=0;Xi[N+12>>2]=0;Xi[N+16>>2]=0;Xi[N+20>>2]=0;Xi[N+24>>2]=0;Xi[N+28>>2]=0;a=0;do{if(w){l=N+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{B=f<<1;r=(Zi(Gi[t+(B<<1)>>1]|0,Wi[128076+(B<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(h|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[C>>2]=0;Xi[C+4>>2]=0;Xi[C+8>>2]=0;Xi[C+12>>2]=0;r=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;l=Gi[t+40>>1]|0;a=Gi[t+56>>1]|0;n=0;do{B=C+(n<<2)|0;H=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[B>>2]|0)|0;H=(Zi(f,Wi[128460+n>>0]|0)|0)+H|0;H=(Zi(l,Wi[128716+n>>0]|0)|0)+H|0;Xi[B>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+H;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;B=Gi[t+32>>1]<<6;n=B+a|0;B=a-B|0;a=Gi[t+16>>1]|0;f=Gi[t+48>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+B|0;f=B-f|0;r=n-r|0;n=Xi[C>>2]|0;Xi[R>>2]=n+a;Xi[k>>2]=a-n;n=Xi[b>>2]|0;Xi[c>>2]=n+l;Xi[d>>2]=l-n;n=Xi[v>>2]|0;Xi[E>>2]=n+f;Xi[S>>2]=f-n;n=Xi[_>>2]|0;Xi[m>>2]=n+r;Xi[p>>2]=r-n;n=0;do{H=Xi[R+(n<<2)>>2]|0;B=Xi[N+(n<<2)>>2]|0;Xi[T+(n<<2)>>2]=B+H;Xi[T+(15-n<<2)>>2]=H-B;n=n+1|0}while((n|0)!=8);n=0;do{B=Xi[T+(n<<2)>>2]|0;H=Xi[D+(n<<2)>>2]|0;e=B+1024+H|0;I=e>>11;Gi[t+(n<<1)>>1]=(I+32768|0)>>>0>65535?e>>31^32767:I;H=B-H+1024|0;B=H>>11;Gi[t+(31-n<<1)>>1]=(B+32768|0)>>>0>65535?H>>31^32767:B;n=n+1|0}while((n|0)!=16);o=o+1|0;if((o|0)==32)break;else t=t+64|0}Xi[P>>2]=a;Xi[F>>2]=l;Xi[y>>2]=f;Xi[O>>2]=r;Ue=L;return}function lS(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+16|0)>>>5&65535;r=0;do{f=r<<2;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;r=r+1|0}while((r|0)!=4);return}function aS(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+16|0)>>>5&65535;r=0;do{f=r<<3;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;Gi[e+((f|4)<<1)>>1]=i;Gi[e+((f|5)<<1)>>1]=i;Gi[e+((f|6)<<1)>>1]=i;Gi[e+((f|7)<<1)>>1]=i;r=r+1|0}while((r|0)!=8);return}function nS(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+16|0)>>>5&65535;l=0;do{r=l<<4;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=16);l=l+1|0}while((l|0)!=16);return}function tS(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+16|0)>>>5&65535;l=0;do{r=l<<5;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=32);l=l+1|0}while((l|0)!=32);return}function oS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+128|0;w=k;o=w;s=o+128|0;do{Xi[o>>2]=0;o=o+4|0}while((o|0)<(s|0));h=r>>>1;Xi[w+((a&31)<<2)>>2]=Gi[l+2>>1];Xi[w+((a+1&31)<<2)>>2]=Gi[l+4>>1];Xi[w+((a+2&31)<<2)>>2]=Gi[l+6>>1];Xi[w+((a+3&31)<<2)>>2]=Gi[l+8>>1];f=f>>>1;if((t|0)>0){u=(n|0)>0;l=e;o=i;a=0;while(1){if(u){s=0;do{r=Ji[o+(s<<1)>>1]|0;r=r+(Xi[w+(r>>>4<<2)>>2]|0)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[l+(s<<1)>>1]=r;s=s+1|0}while((s|0)!=(n|0))}a=a+1|0;if((a|0)==(t|0))break;else{l=l+(h<<1)|0;o=o+(f<<1)|0}}}Ue=k;return}function sS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0;u=r>>>1;h=((Wi[129100+(l<<2)+1>>0]|0)*80|0)+(Wi[129100+(l<<2)>>0]|0)|0;o=((Wi[129100+(l<<2)+3>>0]|0)*80|0)+(Wi[129100+(l<<2)+2>>0]|0)|0;if((n|0)>0){s=(a|0)>0;t=0;while(1){if(s){l=0;do{r=Gi[i+(l<<1)>>1]|0;k=Gi[i+(h+l<<1)>>1]|0;w=Gi[i+(o+l<<1)>>1]|0;r=(Gi[f+(qi[129116+((((r&65535)<(k&65535))<<31>>31)+2+((r&65535)>(k&65535)&1)+(((r&65535)<(w&65535))<<31>>31)+((r&65535)>(w&65535)&1))>>0]<<1)>>1]|0)+(r&65535)|0;if(r>>>0>=512)r=0-r>>31&511;Gi[e+(l<<1)>>1]=r;l=l+1|0}while((l|0)!=(a|0))}t=t+1|0;if((t|0)==(n|0))break;else{e=e+(u<<1)|0;i=i+160|0}}}return}function uS(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=l+112+(o*10|0)|0;l=Xi[l+100+(o<<2)>>2]|0;w=r>>>1;r=f>>>1;if((l|0)!=1){if(Xi[a>>2]|0){u=Gi[k>>1]|0;if((t|0)>0){s=0;do{h=(Ji[i+((Zi(s,r)|0)<<1)>>1]|0)+u|0;if(h>>>0>=512)h=0-h>>31&511;Gi[e+((Zi(s,w)|0)<<1)>>1]=h;s=s+1|0}while((s|0)!=(t|0));h=1}else h=1}else h=0;if(Xi[a+8>>2]|0){o=Gi[k>>1]|0;n=n+-1|0;if((t|0)>0){s=0;do{u=(Ji[i+((Zi(s,r)|0)+n<<1)>>1]|0)+o|0;if(u>>>0>=512)u=0-u>>31&511;Gi[e+((Zi(s,w)|0)+n<<1)>>1]=u;s=s+1|0}while((s|0)!=(t|0))}}if(l|0){s=n;b=13}}else{h=0;s=n;b=13}if((b|0)==13){if(Xi[a+4>>2]|0?(c=Gi[k>>1]|0,(h|0)<(s|0)):0){u=h;do{n=(Ji[i+(u<<1)>>1]|0)+c|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(u<<1)>>1]=n;u=u+1|0}while((u|0)!=(s|0))}if(Xi[a+12>>2]|0?(d=Gi[k>>1]|0,E=t+-1|0,v=Zi(E,w)|0,E=Zi(E,r)|0,(h|0)<(s|0)):0)do{n=(Ji[i+(h+E<<1)>>1]|0)+d|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(h+v<<1)>>1]=n;h=h+1|0}while((h|0)!=(s|0))}return}function hS(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;b=l+112+(o*10|0)|0;S=Xi[l+100+(o<<2)>>2]|0;P=r>>>1;D=f>>>1;g=(S|0)!=1;if(g){if(Xi[a>>2]|0){l=Gi[b>>1]|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)<<1)>>1]|0)+l|0;if(o>>>0>=512)o=0-o>>31&511;Gi[e+((Zi(r,P)|0)<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0));c=1}else c=1}else c=0;if(Xi[a+8>>2]|0){f=Gi[b>>1]|0;l=n+-1|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)+l<<1)>>1]|0)+f|0;if(o>>>0>=512)o=0-o>>31&511;Gi[e+((Zi(r,P)|0)+l<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0))}}else l=n;if(!S){S=0;F=0;r=0;_=0;m=0;v=0;y=h+1|0;p=0;a=h+2|0;b=h+3|0;E=t;n=0;d=l}else{A=c;d=l;O=14}}else{A=0;d=n;O=14}if((O|0)==14){c=Xi[a+4>>2]|0;E=(c|0)==0;if(!E){l=Gi[b>>1]|0;if((A|0)<(d|0)){r=A;do{o=(Ji[i+(r<<1)>>1]|0)+l|0;if(o>>>0>=512)o=0-o>>31&511;Gi[e+(r<<1)>>1]=o;r=r+1|0}while((r|0)!=(d|0));O=1}else O=1}else O=0;if(Xi[a+12>>2]|0){b=Gi[b>>1]|0;l=t+-1|0;r=Zi(l,P)|0;f=Zi(l,D)|0;if((A|0)<(d|0)){n=A;do{o=(Ji[i+(n+f<<1)>>1]|0)+b|0;if(o>>>0>=512)o=0-o>>31&511;Gi[e+(n+r<<1)>>1]=o;n=n+1|0}while((n|0)!=(d|0));t=l}else t=l}v=(S|0)==2;if(v&(Wi[h>>0]|0)==0)o=(Xi[a>>2]|c|0)==0;else o=0;f=o&1;c=h+1|0;o=(S|0)==3;if(o&(Wi[c>>0]|0)==0&E){l=(Xi[a+8>>2]|0)==0;o=1}else l=0;r=l&1;n=h+2|0;if(v&(Wi[n>>0]|0)==0?(Xi[a+8>>2]|0)==0:0)l=(Xi[a+12>>2]|0)==0;else l=0;l=l&1;b=h+3|0;if(o&(Wi[b>>0]|0)==0?(Xi[a>>2]|0)==0:0){S=(Xi[a+12>>2]|0)==0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}else{S=0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}}f=S&1;if(g&(Wi[s>>0]|0)!=0?(M=n+F|0,R=E-f|0,(M|0)<(R|0)):0){o=M;do{Gi[e+((Zi(o,P)|0)<<1)>>1]=Gi[i+((Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(R|0))}if(g&(Wi[s+1>>0]|0)!=0?(T=r+n|0,N=E-_|0,(T|0)<(N|0)):0){l=d+-1|0;o=T;do{Gi[e+(l+(Zi(o,P)|0)<<1)>>1]=Gi[i+(l+(Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(N|0))}if(m&(Wi[u>>0]|0)!=0?(k=c+F|0,C=d-r|0,(k|0)<(C|0)):0)do{Gi[e+(k<<1)>>1]=Gi[i+(k<<1)>>1]|0;k=k+1|0}while((k|0)!=(C|0));if(m&(Wi[u+1>>0]|0)!=0?(w=f+c|0,L=d-_|0,(w|0)<(L|0)):0){o=E+-1|0;k=Zi(o,D)|0;o=Zi(o,P)|0;do{Gi[e+(w+o<<1)>>1]=Gi[i+(w+k<<1)>>1]|0;w=w+1|0}while((w|0)!=(L|0))}if(v&(Wi[h>>0]|0)!=0)Gi[e>>1]=Gi[i>>1]|0;if(p&(Wi[y>>0]|0)!=0){h=d+-1|0;Gi[e+(h<<1)>>1]=Gi[i+(h<<1)>>1]|0}if(v&(Wi[a>>0]|0)!=0){h=E+-1|0;L=d+-1|0;Gi[e+(L+(Zi(h,P)|0)<<1)>>1]=Gi[i+(L+(Zi(h,D)|0)<<1)>>1]|0}if(p&(Wi[b>>0]|0)!=0){h=E+-1|0;Gi[e+((Zi(h,P)|0)<<1)>>1]=Gi[i+((Zi(h,D)|0)<<1)>>1]|0}return}function wS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0;t=r>>>1;if((f|0)>0){o=(n|0)>0;r=i;a=0;while(1){if(o){l=0;do{Gi[e+(l<<1)>>1]=(Ji[r+(l<<1)>>1]|0)<<5;l=l+1|0}while((l|0)!=(n|0))}a=a+1|0;if((a|0)==(f|0))break;else{e=e+128|0;r=r+(t<<1)|0}}}return}function kS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=r>>>1;r=l+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;c=48+(r<<4)+6|0;b=48+(r<<4)+7|0;k=0;while(1){if(v){r=Wi[d>>0]|0;a=Wi[E>>0]|0;l=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[c>>0]|0;h=Wi[b>>0]|0;w=0;do{O=Zi(Ji[i+(w+-3<<1)>>1]|0,r)|0;O=(Zi(Ji[i+(w+-2<<1)>>1]|0,a)|0)+O|0;O=O+(Zi(Ji[i+(w+-1<<1)>>1]|0,l)|0)|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;y=w;w=w+1|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,o)|0)|0;O=O+(Zi(Ji[i+(y+2<<1)>>1]|0,s)|0)|0;O=O+(Zi(Ji[i+(y+3<<1)>>1]|0,u)|0)|0;Gi[e+(y<<1)>>1]=(O+(Zi(Ji[i+(y+4<<1)>>1]|0,h)|0)|0)>>>1}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(F<<1)|0}}}return}function bS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;A=r>>>1;r=a+-1|0;S=48+(r<<4)|0;if((f|0)>0){_=(n|0)>0;m=A*3|0;p=48+(r<<4)+1|0;F=A<<1;y=48+(r<<4)+2|0;O=48+(r<<4)+3|0;d=48+(r<<4)+4|0;v=48+(r<<4)+5|0;E=48+(r<<4)+6|0;b=48+(r<<4)+7|0;c=A<<2;k=0;while(1){if(_){r=Wi[S>>0]|0;l=Wi[p>>0]|0;a=Wi[y>>0]|0;t=Wi[O>>0]|0;o=Wi[d>>0]|0;s=Wi[v>>0]|0;u=Wi[E>>0]|0;h=Wi[b>>0]|0;w=0;do{g=Zi(Ji[i+(w-m<<1)>>1]|0,r)|0;g=(Zi(Ji[i+(w-F<<1)>>1]|0,l)|0)+g|0;g=g+(Zi(Ji[i+(w-A<<1)>>1]|0,a)|0)|0;g=g+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;g=g+(Zi(Ji[i+(w+A<<1)>>1]|0,o)|0)|0;g=g+(Zi(Ji[i+(w+F<<1)>>1]|0,s)|0)|0;g=g+(Zi(Ji[i+(w+m<<1)>>1]|0,u)|0)|0;Gi[e+(w<<1)>>1]=(g+(Zi(Ji[i+(w+c<<1)>>1]|0,h)|0)|0)>>>1;w=w+1|0}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(A<<1)|0}}}return}function cS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;L=Ue;Ue=Ue+9088|0;P=L;C=r>>>1;r=l+-1|0;M=48+(r<<4)|0;if((f|0)>-7){R=(n|0)>0;T=48+(r<<4)+1|0;N=48+(r<<4)+2|0;D=48+(r<<4)+3|0;O=48+(r<<4)+4|0;A=48+(r<<4)+5|0;g=48+(r<<4)+6|0;F=48+(r<<4)+7|0;y=f+6|0;S=i+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(R){l=Wi[M>>0]|0;i=Wi[T>>0]|0;t=Wi[N>>0]|0;o=Wi[D>>0]|0;s=Wi[O>>0]|0;u=Wi[A>>0]|0;h=Wi[g>>0]|0;w=Wi[F>>0]|0;r=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){I=(Zi(k&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(b&65535,t)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;r=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(I+(Zi(r&65535,w)|0)|0)>>>1;m=m+1|0;if((m|0)==(n|0))break;else{z=E;x=v;U=d;B=c;H=b;I=k;E=r;v=z;d=x;c=U;b=B;k=H;r=I}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}r=a+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;F=48+(r<<4)+6|0;c=48+(r<<4)+7|0;w=P+384|0;b=0;while(1){if(v){r=Wi[d>>0]|0;l=Wi[E>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[c>>0]|0;k=0;do{z=Zi(Gi[w+(k+-192<<1)>>1]|0,r)|0;z=(Zi(Gi[w+(k+-128<<1)>>1]|0,l)|0)+z|0;z=z+(Zi(Gi[w+(k+-64<<1)>>1]|0,i)|0)|0;z=z+(Zi(Gi[w+(k<<1)>>1]|0,t)|0)|0;z=z+(Zi(Gi[w+(k+64<<1)>>1]|0,o)|0)|0;z=z+(Zi(Gi[w+(k+128<<1)>>1]|0,s)|0)|0;z=z+(Zi(Gi[w+(k+192<<1)>>1]|0,u)|0)|0;Gi[e+(k<<1)>>1]=(z+(Zi(Gi[w+(k+256<<1)>>1]|0,h)|0)|0)>>>6;k=k+1|0}while((k|0)!=(n|0))}b=b+1|0;if((b|0)==(f|0))break;else{e=e+128|0;w=w+128|0}}}}Ue=L;return}function dS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0;o=f>>>1;n=i>>>1;if((l|0)>0){a=t<<1;f=0;while(1){qT(e|0,r|0,a|0)|0;f=f+1|0;if((f|0)==(l|0))break;else{e=e+(n<<1)|0;r=r+(o<<1)|0}}}return}function vS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;A=f>>>1;O=i>>>1;f=a+-1|0;S=48+(f<<4)|0;if((l|0)>0){_=(t|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;v=48+(f<<4)+5|0;E=48+(f<<4)+6|0;d=48+(f<<4)+7|0;c=0;while(1){if(_){n=Wi[S>>0]|0;i=Wi[m>>0]|0;a=Wi[p>>0]|0;o=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[v>>0]|0;h=Wi[E>>0]|0;w=Wi[d>>0]|0;k=0;do{f=Zi(Ji[r+(k+-3<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(k+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k+-1<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;b=k;k=k+1|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+3<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(b+4<<1)>>1]|0,w)|0)>>1)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(b<<1)>>1]=f}while((k|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(O<<1)|0;r=r+(A<<1)|0}}}return}function ES(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0;M=f>>>1;g=i>>>1;f=n+-1|0;m=48+(f<<4)|0;if((l|0)>0){p=(t|0)>0;F=M*3|0;y=48+(f<<4)+1|0;O=M<<1;A=48+(f<<4)+2|0;v=48+(f<<4)+3|0;E=48+(f<<4)+4|0;S=48+(f<<4)+5|0;_=48+(f<<4)+6|0;c=48+(f<<4)+7|0;d=M<<2;b=0;while(1){if(p){a=Wi[m>>0]|0;i=Wi[y>>0]|0;n=Wi[A>>0]|0;o=Wi[v>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[c>>0]|0;k=0;do{f=Zi(Ji[r+(k-F<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(k-O<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k-M<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(k+M<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(k+O<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(k+F<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(k+d<<1)>>1]|0,w)|0)>>1)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(k<<1)>>1]=f;k=k+1|0}while((k|0)!=(t|0))}b=b+1|0;if((b|0)==(l|0))break;else{e=e+(g<<1)|0;r=r+(M<<1)|0}}}return}function SS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;I=Ue;Ue=Ue+9088|0;P=I;C=f>>>1;L=i>>>1;f=a+-1|0;R=48+(f<<4)|0;if((l|0)>-7){T=(t|0)>0;N=48+(f<<4)+1|0;D=48+(f<<4)+2|0;O=48+(f<<4)+3|0;A=48+(f<<4)+4|0;g=48+(f<<4)+5|0;M=48+(f<<4)+6|0;F=48+(f<<4)+7|0;y=l+6|0;S=r+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(T){i=Wi[R>>0]|0;a=Wi[N>>0]|0;r=Wi[D>>0]|0;o=Wi[O>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[F>>0]|0;f=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){H=(Zi(k&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(b&65535,r)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;f=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(H+(Zi(f&65535,w)|0)|0)>>>1;m=m+1|0;if((m|0)==(t|0))break;else{V=E;z=v;x=d;U=c;B=b;H=k;E=f;v=V;d=z;c=x;b=U;k=B;f=H}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}f=n+-1|0;v=48+(f<<4)|0;if((l|0)>0){E=(t|0)>0;S=48+(f<<4)+1|0;_=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;d=48+(f<<4)+7|0;k=P+384|0;c=0;while(1){if(E){a=Wi[v>>0]|0;r=Wi[S>>0]|0;o=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;i=Wi[d>>0]|0;b=0;do{f=Zi(Gi[k+(b+-192<<1)>>1]|0,a)|0;f=(Zi(Gi[k+(b+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[k+(b+-64<<1)>>1]|0,o)|0)|0;f=f+(Zi(Gi[k+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[k+(b+64<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[k+(b+128<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[k+(b+192<<1)>>1]|0,w)|0)|0;f=(f+(Zi(Gi[k+(b+256<<1)>>1]|0,i)|0)>>6)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(L<<1)|0;k=k+128|0}}}}Ue=I;return}function _S(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0;d=f>>>1;b=i>>>1;c=a+5|0;k=1<<a+4;h=t<<1;if((l|0)>0){w=(u|0)>0;t=n<<5;a=e;o=r;i=0;while(1){if(w){s=0;do{f=((Zi(t,Ji[o+(s<<1)>>1]|0)|0)+k>>c)+h|0;if(f>>>0>=512)f=0-f>>31&511;Gi[a+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(u|0))}i=i+1|0;if((i|0)==(l|0))break;else{a=a+(b<<1)|0;o=o+(d<<1)|0}}}return}function mS(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;T=f>>>1;R=i>>>1;f=o+-1|0;g=48+(f<<4)|0;M=a+5|0;A=1<<a+4;y=t<<1;if((l|0)>0){O=(u|0)>0;E=48+(f<<4)+1|0;S=48+(f<<4)+2|0;_=48+(f<<4)+3|0;m=48+(f<<4)+4|0;p=48+(f<<4)+5|0;F=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(O){s=Wi[g>>0]|0;i=Wi[E>>0]|0;o=Wi[S>>0]|0;a=Wi[_>>0]|0;t=Wi[m>>0]|0;h=Wi[p>>0]|0;w=Wi[F>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>1,n)|0)+A>>M)+y|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(c<<1)>>1]=f}while((b|0)!=(u|0))}d=d+1|0;if((d|0)==(l|0))break;else{e=e+(R<<1)|0;r=r+(T<<1)|0}}}return}function pS(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;D=f>>>1;N=i>>>1;f=s+-1|0;R=48+(f<<4)|0;T=a+5|0;M=1<<a+4;A=t<<1;if((l|0)>0){g=(u|0)>0;E=D*3|0;S=48+(f<<4)+1|0;_=D<<1;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=D<<2;c=0;while(1){if(g){o=Wi[R>>0]|0;i=Wi[S>>0]|0;s=Wi[m>>0]|0;a=Wi[p>>0]|0;t=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[O>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-E<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(b-_<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-D<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(b+D<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b+_<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+E<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>1,n)|0)+M>>T)+A|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(u|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(N<<1)|0;r=r+(D<<1)|0}}}return}function FS(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0;x=Ue;Ue=Ue+9088|0;I=x;L=f>>>1;B=i>>>1;U=a+5|0;H=1<<a+4;f=o+-1|0;P=48+(f<<4)|0;if((l|0)>-7){g=(u|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;T=48+(f<<4)+3|0;N=48+(f<<4)+4|0;D=48+(f<<4)+5|0;C=48+(f<<4)+6|0;O=48+(f<<4)+7|0;A=l+6|0;m=r+((Zi(L,-3)|0)<<1)|0;p=I;y=0;while(1){if(g){i=Wi[P>>0]|0;a=Wi[M>>0]|0;o=Wi[R>>0]|0;r=Wi[T>>0]|0;h=Wi[N>>0]|0;w=Wi[D>>0]|0;k=Wi[C>>0]|0;b=Wi[O>>0]|0;f=Gi[m+-6>>1]|0;c=Gi[m+-4>>1]|0;d=Gi[m+-2>>1]|0;v=Gi[m>>1]|0;E=Gi[m+2>>1]|0;S=Gi[m+4>>1]|0;_=Gi[m+6>>1]|0;F=0;while(1){z=(Zi(c&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(d&65535,o)|0)+(Zi(v&65535,r)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)+(Zi(_&65535,k)|0)|0;f=Gi[m+(F+4<<1)>>1]|0;Gi[p+(F<<1)>>1]=(z+(Zi(f&65535,b)|0)|0)>>>1;F=F+1|0;if((F|0)==(u|0))break;else{W=_;K=S;j=E;Y=v;V=d;z=c;_=f;S=W;E=K;v=j;d=Y;c=V;f=z}}}if((y|0)<(A|0)){m=m+(L<<1)|0;p=p+128|0;y=y+1|0}else break}f=s+-1|0;g=48+(f<<4)|0;S=t<<1;if((l|0)>0){_=(u|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;E=48+(f<<4)+7|0;c=I+384|0;v=0;while(1){if(_){r=Wi[g>>0]|0;h=Wi[m>>0]|0;w=Wi[p>>0]|0;k=Wi[F>>0]|0;b=Wi[y>>0]|0;i=Wi[O>>0]|0;a=Wi[A>>0]|0;o=Wi[E>>0]|0;d=0;do{f=Zi(Gi[c+(d+-192<<1)>>1]|0,r)|0;f=(Zi(Gi[c+(d+-128<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[c+(d+-64<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[c+(d<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[c+(d+64<<1)>>1]|0,b)|0)|0;f=f+(Zi(Gi[c+(d+128<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[c+(d+192<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[c+(d+256<<1)>>1]|0,o)|0)>>6,n)|0)+H>>U)+S|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(u|0))}v=v+1|0;if((v|0)==(l|0))break;else{e=e+(B<<1)|0;c=c+128|0}}}}Ue=x;return}function yS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0;h=f>>>1;s=i>>>1;if((a|0)>0){u=(o|0)>0;n=r;i=0;while(1){if(u){t=0;do{f=(Gi[l+(t<<1)>>1]|0)+32+(Ji[n+(t<<1)>>1]<<5)>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(o|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(s<<1)|0;n=n+(h<<1)|0}}}return}function OS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;g=f>>>1;A=i>>>1;f=n+-1|0;_=48+(f<<4)|0;if((a|0)>0){m=(o|0)>0;p=48+(f<<4)+1|0;F=48+(f<<4)+2|0;y=48+(f<<4)+3|0;O=48+(f<<4)+4|0;E=48+(f<<4)+5|0;S=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(m){t=Wi[_>>0]|0;i=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;h=Wi[E>>0]|0;w=Wi[S>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>1;f=(Gi[l+(c<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(c<<1)>>1]=f}while((b|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(A<<1)|0;r=r+(g<<1)|0}}}return}function AS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;R=f>>>1;M=i>>>1;f=t+-1|0;p=48+(f<<4)|0;if((a|0)>0){F=(o|0)>0;y=R*3|0;O=48+(f<<4)+1|0;A=R<<1;g=48+(f<<4)+2|0;E=48+(f<<4)+3|0;S=48+(f<<4)+4|0;_=48+(f<<4)+5|0;m=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=R<<2;c=0;while(1){if(F){n=Wi[p>>0]|0;i=Wi[O>>0]|0;t=Wi[g>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[m>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-y<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(b-A<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-R<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+R<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+A<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+y<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>1;f=(Gi[l+(b<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(o|0))}c=c+1|0;if((c|0)==(a|0))break;else{l=l+128|0;e=e+(M<<1)|0;r=r+(R<<1)|0}}}return}function gS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;H=Ue;Ue=Ue+9088|0;L=H;P=f>>>1;I=i>>>1;f=n+-1|0;T=48+(f<<4)|0;if((a|0)>-7){N=(o|0)>0;D=48+(f<<4)+1|0;C=48+(f<<4)+2|0;A=48+(f<<4)+3|0;g=48+(f<<4)+4|0;M=48+(f<<4)+5|0;R=48+(f<<4)+6|0;y=48+(f<<4)+7|0;O=a+6|0;_=r+((Zi(P,-3)|0)<<1)|0;m=L;F=0;while(1){if(N){i=Wi[T>>0]|0;n=Wi[D>>0]|0;r=Wi[C>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[R>>0]|0;k=Wi[y>>0]|0;f=Gi[_+-6>>1]|0;b=Gi[_+-4>>1]|0;c=Gi[_+-2>>1]|0;d=Gi[_>>1]|0;v=Gi[_+2>>1]|0;E=Gi[_+4>>1]|0;S=Gi[_+6>>1]|0;p=0;while(1){B=(Zi(b&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,r)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)|0;f=Gi[_+(p+4<<1)>>1]|0;Gi[m+(p<<1)>>1]=(B+(Zi(f&65535,k)|0)|0)>>>1;p=p+1|0;if((p|0)==(o|0))break;else{Y=S;V=E;z=v;x=d;U=c;B=b;S=f;E=Y;v=V;d=z;c=x;b=U;f=B}}}if((F|0)<(O|0)){_=_+(P<<1)|0;m=m+128|0;F=F+1|0}else break}f=t+-1|0;E=48+(f<<4)|0;if((a|0)>0){S=(o|0)>0;_=48+(f<<4)+1|0;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;v=48+(f<<4)+7|0;b=L+384|0;d=0;while(1){if(S){n=Wi[E>>0]|0;r=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[O>>0]|0;i=Wi[v>>0]|0;c=0;do{f=Zi(Gi[b+(c+-192<<1)>>1]|0,n)|0;f=(Zi(Gi[b+(c+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[b+(c+-64<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[b+(c<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[b+(c+128<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[b+(c+192<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[b+(c+256<<1)>>1]|0,i)|0)>>6;f=(Gi[l+(c<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(I<<1)|0;b=b+128|0}}}}Ue=H;return}function MS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0;E=f>>>1;c=i>>>1;d=n+6|0;if((a|0)>0){v=(k|0)>0;b=o<<5;o=(u+s<<1|1)<<n+5;h=r;i=0;while(1){if(v){w=0;do{f=Zi(b,Ji[h+(w<<1)>>1]|0)|0;f=(Zi(Gi[l+(w<<1)>>1]|0,t)|0)+o+f>>d;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(k|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(c<<1)|0;h=h+(E<<1)|0}}}return}function RS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;N=f>>>1;T=i>>>1;f=h+-1|0;O=48+(f<<4)|0;A=n+6|0;if((a|0)>0){g=(k|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;_=48+(f<<4)+7|0;S=(u+s<<1|1)<<n+5;E=0;while(1){if(g){w=Wi[O>>0]|0;i=Wi[M>>0]|0;h=Wi[R>>0]|0;n=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;b=Wi[y>>0]|0;c=Wi[_>>0]|0;d=0;do{f=Zi(Ji[r+(d+-3<<1)>>1]|0,w)|0;f=(Zi(Ji[r+(d+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d+-1<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;v=d;d=d+1|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(v+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(v+3<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(v+4<<1)>>1]|0,c)|0)>>1,o)|0;f=(Zi(Gi[l+(v<<1)>>1]|0,t)|0)+S+f>>A;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(v<<1)>>1]=f}while((d|0)!=(k|0))}E=E+1|0;if((E|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;r=r+(N<<1)|0}}}return}function TS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;C=f>>>1;D=i>>>1;f=w+-1|0;g=48+(f<<4)|0;M=n+6|0;if((a|0)>0){R=(k|0)>0;T=C*3|0;N=48+(f<<4)+1|0;m=C<<1;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;S=48+(f<<4)+7|0;_=C<<2;E=(u+s<<1|1)<<n+5;v=0;while(1){if(R){h=Wi[g>>0]|0;i=Wi[N>>0]|0;w=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;b=Wi[A>>0]|0;c=Wi[S>>0]|0;d=0;do{f=Zi(Ji[r+(d-T<<1)>>1]|0,h)|0;f=(Zi(Ji[r+(d-m<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d-C<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(d+C<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(d+m<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(d+T<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(d+_<<1)>>1]|0,c)|0)>>1,o)|0;f=(Zi(Gi[l+(d<<1)>>1]|0,t)|0)+E+f>>M;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(k|0))}v=v+1|0;if((v|0)==(a|0))break;else{l=l+128|0;e=e+(D<<1)|0;r=r+(C<<1)|0}}}return}function NS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0;Y=Ue;Ue=Ue+9088|0;x=Y;B=f>>>1;z=i>>>1;V=n+6|0;U=n+5|0;f=h+-1|0;I=48+(f<<4)|0;if((a|0)>-7){H=(k|0)>0;T=48+(f<<4)+1|0;N=48+(f<<4)+2|0;D=48+(f<<4)+3|0;C=48+(f<<4)+4|0;P=48+(f<<4)+5|0;L=48+(f<<4)+6|0;M=48+(f<<4)+7|0;R=a+6|0;y=r+((Zi(B,-3)|0)<<1)|0;O=x;g=0;while(1){if(H){i=Wi[I>>0]|0;n=Wi[T>>0]|0;h=Wi[N>>0]|0;r=Wi[D>>0]|0;b=Wi[C>>0]|0;c=Wi[P>>0]|0;d=Wi[L>>0]|0;v=Wi[M>>0]|0;f=Gi[y+-6>>1]|0;E=Gi[y+-4>>1]|0;S=Gi[y+-2>>1]|0;_=Gi[y>>1]|0;m=Gi[y+2>>1]|0;p=Gi[y+4>>1]|0;F=Gi[y+6>>1]|0;A=0;while(1){j=(Zi(E&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(S&65535,h)|0)+(Zi(_&65535,r)|0)+(Zi(m&65535,b)|0)+(Zi(p&65535,c)|0)+(Zi(F&65535,d)|0)|0;f=Gi[y+(A+4<<1)>>1]|0;Gi[O+(A<<1)>>1]=(j+(Zi(f&65535,v)|0)|0)>>>1;A=A+1|0;if((A|0)==(k|0))break;else{q=F;X=p;G=m;W=_;K=S;j=E;F=f;p=q;m=X;_=G;S=W;E=K;f=j}}}if((g|0)<(R|0)){y=y+(B<<1)|0;O=O+128|0;g=g+1|0}else break}f=w+-1|0;F=48+(f<<4)|0;if((a|0)>0){y=(k|0)>0;O=48+(f<<4)+1|0;A=48+(f<<4)+2|0;g=48+(f<<4)+3|0;M=48+(f<<4)+4|0;R=48+(f<<4)+5|0;T=48+(f<<4)+6|0;p=48+(f<<4)+7|0;m=(u+s<<1|1)<<U;E=x+384|0;_=0;while(1){if(y){b=Wi[F>>0]|0;c=Wi[O>>0]|0;d=Wi[A>>0]|0;v=Wi[g>>0]|0;i=Wi[M>>0]|0;n=Wi[R>>0]|0;h=Wi[T>>0]|0;r=Wi[p>>0]|0;S=0;do{f=Zi(Gi[E+(S+-192<<1)>>1]|0,b)|0;f=(Zi(Gi[E+(S+-128<<1)>>1]|0,c)|0)+f|0;f=f+(Zi(Gi[E+(S+-64<<1)>>1]|0,d)|0)|0;f=f+(Zi(Gi[E+(S<<1)>>1]|0,v)|0)|0;f=f+(Zi(Gi[E+(S+64<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[E+(S+128<<1)>>1]|0,n)|0)|0;f=f+(Zi(Gi[E+(S+192<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Gi[E+(S+256<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(S<<1)>>1]|0,t)|0)+m+f>>V;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(S<<1)>>1]=f;S=S+1|0}while((S|0)!=(k|0))}_=_+1|0;if((_|0)==(a|0))break;else{l=l+128|0;e=e+(z<<1)|0;E=E+128|0}}}}Ue=Y;return}function DS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;c=r>>>1;r=l+-1|0;h=16+(r<<2)|0;if((f|0)>0){w=(n|0)>0;k=16+(r<<2)+1|0;b=16+(r<<2)+2|0;u=16+(r<<2)+3|0;s=0;while(1){if(w){t=Wi[h>>0]|0;r=Wi[k>>0]|0;a=Wi[b>>0]|0;l=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o+-1<<1)>>1]|0,t)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,r)|0)+v|0;d=o;o=o+1|0;v=v+(Zi(Ji[i+(o<<1)>>1]|0,a)|0)|0;Gi[e+(d<<1)>>1]=(v+(Zi(Ji[i+(d+2<<1)>>1]|0,l)|0)|0)>>>1}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(c<<1)|0}}}return}function CS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r>>>1;r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;u=16+(r<<2)+3|0;h=d<<1;s=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;a=Wi[c>>0]|0;t=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o-d<<1)>>1]|0,r)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,l)|0)+v|0;v=v+(Zi(Ji[i+(o+d<<1)>>1]|0,a)|0)|0;Gi[e+(o<<1)>>1]=(v+(Zi(Ji[i+(o+h<<1)>>1]|0,t)|0)|0)>>>1;o=o+1|0}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(d<<1)|0}}}return}function PS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=Ue;Ue=Ue+8576|0;p=F;m=r>>>1;r=l+-1|0;v=16+(r<<2)|0;if((f|0)>-3){E=(n|0)>0;S=16+(r<<2)+1|0;_=16+(r<<2)+2|0;d=16+(r<<2)+3|0;c=f+2|0;h=i+(0-m<<1)|0;w=p;b=0;while(1){if(E){l=Wi[v>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[d>>0]|0;r=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){y=(Zi(s&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(u&65535,t)|0)|0;r=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(y+(Zi(r&65535,o)|0)|0)>>>1;k=k+1|0;if((k|0)==(n|0))break;else{O=u;y=s;u=r;s=O;r=y}}}if((b|0)<(c|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;h=16+(r<<2)+3|0;o=p+128|0;u=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;i=Wi[c>>0]|0;t=Wi[h>>0]|0;s=0;do{O=Zi(Gi[o+(s+-64<<1)>>1]|0,r)|0;O=(Zi(Gi[o+(s<<1)>>1]|0,l)|0)+O|0;O=O+(Zi(Gi[o+(s+64<<1)>>1]|0,i)|0)|0;Gi[e+(s<<1)>>1]=(O+(Zi(Gi[o+(s+128<<1)>>1]|0,t)|0)|0)>>>6;s=s+1|0}while((s|0)!=(n|0))}u=u+1|0;if((u|0)==(f|0))break;else{e=e+128|0;o=o+128|0}}}}Ue=F;return}function LS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=a+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;h=0;while(1){if(b){n=Wi[k>>0]|0;i=Wi[c>>0]|0;a=Wi[d>>0]|0;o=Wi[w>>0]|0;s=0;do{f=Zi(Ji[r+(s+-1<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;u=s;s=s+1|0;f=f+(Zi(Ji[r+(s<<1)>>1]|0,a)|0)|0;f=(f+(Zi(Ji[r+(u+2<<1)>>1]|0,o)|0)>>1)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(u<<1)>>1]=f}while((s|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function IS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;h=16+(f<<2)+3|0;w=E<<1;u=0;while(1){if(b){a=Wi[k>>0]|0;i=Wi[c>>0]|0;n=Wi[d>>0]|0;o=Wi[h>>0]|0;s=0;do{f=Zi(Ji[r+(s-E<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(s+E<<1)>>1]|0,n)|0)|0;f=(f+(Zi(Ji[r+(s+w<<1)>>1]|0,o)|0)>>1)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(t|0))}u=u+1|0;if((u|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function HS(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;y=Ue;Ue=Ue+8576|0;p=y;m=f>>>1;F=i>>>1;f=a+-1|0;v=16+(f<<2)|0;if((l|0)>-3){E=(t|0)>0;S=16+(f<<2)+1|0;_=16+(f<<2)+2|0;c=16+(f<<2)+3|0;d=l+2|0;h=r+(0-m<<1)|0;w=p;b=0;while(1){if(E){i=Wi[v>>0]|0;a=Wi[S>>0]|0;r=Wi[_>>0]|0;o=Wi[c>>0]|0;f=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){O=(Zi(s&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(u&65535,r)|0)|0;f=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(O+(Zi(f&65535,o)|0)|0)>>>1;k=k+1|0;if((k|0)==(t|0))break;else{A=u;O=s;u=f;s=A;f=O}}}if((b|0)<(d|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;s=p+128|0;h=0;while(1){if(b){i=Wi[k>>0]|0;a=Wi[c>>0]|0;r=Wi[d>>0]|0;o=Wi[w>>0]|0;u=0;do{f=Zi(Gi[s+(u+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[s+(u<<1)>>1]|0,a)|0)+f|0;f=f+(Zi(Gi[s+(u+64<<1)>>1]|0,r)|0)|0;f=(f+(Zi(Gi[s+(u+128<<1)>>1]|0,o)|0)>>6)+16>>5;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(F<<1)|0;s=s+128|0}}}}Ue=y;return}function BS(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=o+-1|0;S=16+(f<<2)|0;_=a+5|0;E=1<<a+4;d=t<<1;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(v){s=Wi[S>>0]|0;i=Wi[b>>0]|0;o=Wi[c>>0]|0;a=Wi[k>>0]|0;t=0;do{f=Zi(Ji[r+(t+-1<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;h=t;t=t+1|0;f=f+(Zi(Ji[r+(t<<1)>>1]|0,o)|0)|0;f=((Zi(f+(Zi(Ji[r+(h+2<<1)>>1]|0,a)|0)>>1,n)|0)+E>>_)+d|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(h<<1)>>1]=f}while((t|0)!=(u|0))}w=w+1|0;if((w|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function US(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=s+-1|0;S=16+(f<<2)|0;_=a+5|0;E=1<<a+4;d=t<<1;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=p<<1;h=0;while(1){if(v){o=Wi[S>>0]|0;i=Wi[b>>0]|0;s=Wi[c>>0]|0;a=Wi[w>>0]|0;t=0;do{f=Zi(Ji[r+(t-p<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(t+p<<1)>>1]|0,s)|0)|0;f=((Zi(f+(Zi(Ji[r+(t+k<<1)>>1]|0,a)|0)>>1,n)|0)+E>>_)+d|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(u|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function xS(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;M=Ue;Ue=Ue+8576|0;y=M;F=f>>>1;g=i>>>1;f=o+-1|0;p=16+(f<<2)|0;A=a+5|0;O=1<<a+4;if((l|0)>-3){S=(u|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;v=16+(f<<2)+3|0;E=l+2|0;k=r+(0-F<<1)|0;b=y;d=0;while(1){if(S){i=Wi[p>>0]|0;o=Wi[_>>0]|0;a=Wi[m>>0]|0;r=Wi[v>>0]|0;f=Gi[k+-2>>1]|0;h=Gi[k>>1]|0;w=Gi[k+2>>1]|0;c=0;while(1){R=(Zi(h&65535,o)|0)+(Zi(f&65535,i)|0)+(Zi(w&65535,a)|0)|0;f=Gi[k+(c+2<<1)>>1]|0;Gi[b+(c<<1)>>1]=(R+(Zi(f&65535,r)|0)|0)>>>1;c=c+1|0;if((c|0)==(u|0))break;else{T=w;R=h;w=f;h=T;f=R}}}if((d|0)<(E|0)){k=k+(F<<1)|0;b=b+128|0;d=d+1|0}else break}f=s+-1|0;S=16+(f<<2)|0;c=t<<1;if((l|0)>0){d=(u|0)>0;v=16+(f<<2)+1|0;E=16+(f<<2)+2|0;b=16+(f<<2)+3|0;h=y+128|0;k=0;while(1){if(d){i=Wi[S>>0]|0;o=Wi[v>>0]|0;a=Wi[E>>0]|0;r=Wi[b>>0]|0;w=0;do{f=Zi(Gi[h+(w+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[h+(w<<1)>>1]|0,o)|0)+f|0;f=f+(Zi(Gi[h+(w+64<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[h+(w+128<<1)>>1]|0,r)|0)>>6,n)|0)+O>>A)+c|0;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(u|0))}k=k+1|0;if((k|0)==(l|0))break;else{e=e+(g<<1)|0;h=h+128|0}}}}Ue=M;return}function zS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;E=i>>>1;f=n+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(c){t=Wi[b>>0]|0;i=Wi[d>>0]|0;n=Wi[v>>0]|0;s=Wi[k>>0]|0;u=0;do{f=Zi(Ji[r+(u+-1<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,i)|0)+f|0;h=u;u=u+1|0;f=f+(Zi(Ji[r+(u<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(h+2<<1)>>1]|0,s)|0)>>1;f=(Gi[l+(h<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(h<<1)>>1]=f}while((u|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(E<<1)|0;r=r+(S<<1)|0}}}return}function VS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;f=t+-1|0;E=16+(f<<2)|0;b=i>>>1;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=S<<1;h=0;while(1){if(c){n=Wi[E>>0]|0;t=Wi[d>>0]|0;i=Wi[v>>0]|0;s=Wi[w>>0]|0;u=0;do{f=Zi(Ji[r+(u-S<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,t)|0)+f|0;f=f+(Zi(Ji[r+(u+S<<1)>>1]|0,i)|0)|0;f=f+(Zi(Ji[r+(u+k<<1)>>1]|0,s)|0)>>1;f=(Gi[l+(u<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(o|0))}h=h+1|0;if((h|0)==(a|0))break;else{l=l+128|0;e=e+(b<<1)|0;r=r+(S<<1)|0}}}return}function YS(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;O=Ue;Ue=Ue+8576|0;F=O;p=f>>>1;y=i>>>1;f=n+-1|0;E=16+(f<<2)|0;if((a|0)>-3){S=(o|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=a+2|0;w=r+(0-p<<1)|0;k=F;c=0;while(1){if(S){i=Wi[E>>0]|0;n=Wi[_>>0]|0;r=Wi[m>>0]|0;s=Wi[d>>0]|0;f=Gi[w+-2>>1]|0;u=Gi[w>>1]|0;h=Gi[w+2>>1]|0;b=0;while(1){A=(Zi(u&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(h&65535,r)|0)|0;f=Gi[w+(b+2<<1)>>1]|0;Gi[k+(b<<1)>>1]=(A+(Zi(f&65535,s)|0)|0)>>>1;b=b+1|0;if((b|0)==(o|0))break;else{g=h;A=u;h=f;u=g;f=A}}}if((c|0)<(v|0)){w=w+(p<<1)|0;k=k+128|0;c=c+1|0}else break}f=t+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;u=F+128|0;w=0;while(1){if(c){i=Wi[b>>0]|0;n=Wi[d>>0]|0;r=Wi[v>>0]|0;s=Wi[k>>0]|0;h=0;do{f=Zi(Gi[u+(h+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[u+(h<<1)>>1]|0,n)|0)+f|0;f=f+(Zi(Gi[u+(h+64<<1)>>1]|0,r)|0)|0;f=f+(Zi(Gi[u+(h+128<<1)>>1]|0,s)|0)>>6;f=(Gi[l+(h<<1)>>1]|0)+32+f>>6;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(h<<1)>>1]=f;h=h+1|0}while((h|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(y<<1)|0;u=u+128|0}}}}Ue=O;return}function jS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>>1;p=i>>>1;f=h+-1|0;v=16+(f<<2)|0;E=n+6|0;if((a|0)>0){S=(k|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;c=(u+s<<1|1)<<n+5;s=r;b=0;while(1){if(S){w=Wi[v>>0]|0;i=Wi[_>>0]|0;h=Wi[m>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u+-1<<1)>>1]|0,w)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,i)|0)+f|0;r=u;u=u+1|0;f=f+(Zi(Ji[s+(u<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Ji[s+(r+2<<1)>>1]|0,n)|0)>>1,o)|0;f=(Zi(Gi[l+(r<<1)>>1]|0,t)|0)+c+f>>E;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(r<<1)>>1]=f}while((u|0)!=(k|0))}b=b+1|0;if((b|0)==(a|0))break;else{l=l+128|0;e=e+(p<<1)|0;s=s+(F<<1)|0}}}return}function KS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=f>>>1;f=w+-1|0;F=16+(f<<2)|0;E=i>>>1;S=n+6|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=y<<1;c=(u+s<<1|1)<<n+5;b=e;s=r;e=0;while(1){if(_){h=Wi[F>>0]|0;w=Wi[m>>0]|0;i=Wi[p>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u-y<<1)>>1]|0,h)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,w)|0)+f|0;f=f+(Zi(Ji[s+(u+y<<1)>>1]|0,i)|0)|0;f=Zi(f+(Zi(Ji[s+(u+v<<1)>>1]|0,n)|0)>>1,o)|0;f=(Zi(Gi[l+(u<<1)>>1]|0,t)|0)+c+f>>S;if(f>>>0>=512)f=0-f>>31&511;Gi[b+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(k|0))}e=e+1|0;if((e|0)==(a|0))break;else{l=l+128|0;b=b+(E<<1)|0;s=s+(y<<1)|0}}}return}function WS(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;N=Ue;Ue=Ue+8576|0;M=N;A=f>>>1;T=i>>>1;f=h+-1|0;O=16+(f<<2)|0;R=n+6|0;g=n+5|0;if((a|0)>-3){y=(k|0)>0;p=16+(f<<2)+1|0;F=16+(f<<2)+2|0;_=16+(f<<2)+3|0;m=a+2|0;d=r+(0-A<<1)|0;v=M;S=0;while(1){if(y){i=Wi[O>>0]|0;h=Wi[p>>0]|0;n=Wi[F>>0]|0;r=Wi[_>>0]|0;f=Gi[d+-2>>1]|0;b=Gi[d>>1]|0;c=Gi[d+2>>1]|0;E=0;while(1){D=(Zi(b&65535,h)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,n)|0)|0;f=Gi[d+(E+2<<1)>>1]|0;Gi[v+(E<<1)>>1]=(D+(Zi(f&65535,r)|0)|0)>>>1;E=E+1|0;if((E|0)==(k|0))break;else{C=c;D=b;c=f;b=C;f=D}}}if((S|0)<(m|0)){d=d+(A<<1)|0;v=v+128|0;S=S+1|0}else break}f=w+-1|0;S=16+(f<<2)|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;E=16+(f<<2)+3|0;v=(u+s<<1|1)<<g;b=M+128|0;d=0;while(1){if(_){i=Wi[S>>0]|0;h=Wi[m>>0]|0;n=Wi[p>>0]|0;r=Wi[E>>0]|0;c=0;do{f=Zi(Gi[b+(c+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[b+(c<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,n)|0)|0;f=Zi(f+(Zi(Gi[b+(c+128<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(c<<1)>>1]|0,t)|0)+v+f>>R;if(f>>>0>=512)f=0-f>>31&511;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(k|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;b=b+128|0}}}}Ue=N;return}function GS(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;XS(e,i,2,r,f,l,a);return}function XS(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0;se=i>>>1;oe=r>>>1;J=f<<1;ee=Zi(se,-3)|0;ie=Zi(se,-2)|0;re=0-se|0;fe=se<<1;le=oe*3|0;ae=le+ee|0;ne=le+ie|0;z=le-se|0;V=le+fe|0;Y=le+se|0;j=J>>3;K=J>>2;W=Zi(se,-4)|0;G=se*3|0;X=le+W|0;q=le+G|0;Z=(J>>1)+J>>3;Q=oe<<2;$=oe<<2;U=oe+ee|0;x=oe+ie|0;N=oe-se|0;D=oe+se|0;C=oe+fe|0;P=oe+G|0;T=oe+ee|0;L=oe+ie|0;I=oe-se|0;H=oe+se|0;B=oe+fe|0;te=0;i=e;do{e=Gi[i+(ee<<1)>>1]|0;t=Gi[i+(ie<<1)>>1]|0;h=Gi[i+(re<<1)>>1]|0;r=h&65535;_=(e&65535)-((t&65535)<<1)+r|0;_=(_|0)>-1?_:0-_|0;b=Gi[i+(fe<<1)>>1]|0;k=Gi[i+(se<<1)>>1]|0;w=Gi[i>>1]|0;f=w&65535;p=(b&65535)-((k&65535)<<1)+f|0;p=(p|0)>-1?p:0-p|0;o=Ji[i+(z<<1)>>1]|0;m=(Ji[i+(ae<<1)>>1]|0)-((Ji[i+(ne<<1)>>1]|0)<<1)+o|0;m=(m|0)>-1?m:0-m|0;s=Ji[i+(le<<1)>>1]|0;F=(Ji[i+(V<<1)>>1]|0)-((Ji[i+(Y<<1)>>1]|0)<<1)+s|0;F=(F|0)>-1?F:0-F|0;u=p+_|0;d=F+m|0;E=Xi[l+(te<<2)>>2]|0;R=E<<1;S=Wi[a+te>>0]|0;y=Wi[n+te>>0]|0;do{if((d+u|0)<(J|0)){v=E*10>>1;M=(Ji[i+(W<<1)>>1]|0)-r|0;c=Gi[i+(G<<1)>>1]|0;g=(c&65535)-f|0;if((((((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)?(M=r-f|0,(((M|0)>-1?M:0-M|0)|0)<(v|0)):0)?(M=(Ji[i+(X<<1)>>1]|0)-o|0,g=(Ji[i+(q<<1)>>1]|0)-s|0,(((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)):0)?(M=o-s|0,((u<<1|0)<(K|0)?(((M|0)>-1?M:0-M|0)|0)<(v|0):0)&(d<<1|0)<(K|0)):0){_=E<<2;E=S<<24>>24==0;S=0-_|0;v=y<<24>>24==0;u=0;d=i;while(1){s=e&65535;o=t&65535;t=h&65535;e=w&65535;f=k&65535;r=b&65535;if(E){R=Ji[d+(W<<1)>>1]|0;M=((s+4+f+(t+o+e<<1)|0)>>>3)-t|0;Gi[d+(re<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+t;M=((s+2+o+t+e|0)>>>2)-o|0;Gi[d+(ie<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+o;R=((s*3|0)+4+o+t+e+(R<<1)>>3)-s|0;Gi[d+(ee<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+s}if(v){R=((o+4+r+(e+t+f<<1)|0)>>>3)-e|0;Gi[d>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+e;R=((t+2+e+f+r|0)>>>2)-f|0;Gi[d+(se<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+f;R=((t+4+e+f+(r*3|0)+((c&65535)<<1)|0)>>>3)-r|0;Gi[d+(fe<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+r}f=d+(oe<<1)|0;r=u+1|0;if((r|0)==4)break;e=Gi[d+(U<<1)>>1]|0;t=Gi[d+(x<<1)>>1]|0;h=Gi[d+(N<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[d+(D<<1)>>1]|0;b=Gi[d+(C<<1)>>1]|0;c=Gi[d+(P<<1)>>1]|0;u=r;d=f}i=i+($<<1)|0;break}M=R>>1;A=E*20|0;g=0-R|0;O=S<<24>>24==0;y=y<<24>>24==0;m=O&(m+_|0)<(Z|0);_=0-M|0;S=y&(F+p|0)<(Z|0);v=0;E=i;while(1){c=e&65535;d=E+(ie<<1)|0;u=t&65535;e=E+(re<<1)|0;o=h&65535;h=w&65535;w=E+(se<<1)|0;s=k&65535;t=b&65535;r=((h-o|0)*9|0)+8+(Zi(s-u|0,-3)|0)>>4;if((((r|0)>-1?r:0-r|0)|0)<(A|0)){f=(r|0)<(g|0)?g:(r|0)>(R|0)?R:r;if(O){r=f+o|0;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r}if(y){r=h-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[E>>1]=r}if(m){r=((c+1+o|0)>>>1)-u+f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+u|0;if(r>>>0>=512)r=0-r>>31&511;Gi[d>>1]=r}if(S){r=((h+1+t|0)>>>1)-s-f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+s|0;if(r>>>0>=512)r=0-r>>31&511;Gi[w>>1]=r}}f=E+(oe<<1)|0;r=v+1|0;if((r|0)==4)break;e=Gi[E+(T<<1)>>1]|0;t=Gi[E+(L<<1)>>1]|0;h=Gi[E+(I<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[E+(H<<1)>>1]|0;b=Gi[E+(B<<1)>>1]|0;v=r;E=f}i=i+($<<1)|0}else i=i+(Q<<1)|0}while(0);te=te+1|0}while((te|0)!=2);return}function qS(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;XS(e,2,i,r,f,l,a);return}function JS(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;ZS(e,i,2,r,f,l);return}function ZS(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=i>>>1;c=r>>>1;d=Zi(S,-2)|0;v=0-S|0;b=c<<2;E=0;while(1){h=Xi[f+(E<<2)>>2]<<1;if((h|0)>=1){o=0-h|0;s=(Wi[l+E>>0]|0)==0;u=(Wi[a+E>>0]|0)==0;w=0;k=e;while(1){n=k+(v<<1)|0;i=Ji[n>>1]|0;t=Ji[k>>1]|0;r=(Ji[k+(d<<1)>>1]|0)+4-(Ji[k+(S<<1)>>1]|0)+(t-i<<2)>>3;r=(r|0)<(o|0)?o:(r|0)>(h|0)?h:r;if(s){i=r+i|0;if(i>>>0>=512)i=0-i>>31&511;Gi[n>>1]=i}if(u){i=t-r|0;if(i>>>0>=512)i=0-i>>31&511;Gi[k>>1]=i}w=w+1|0;if((w|0)==4)break;else k=k+(c<<1)|0}}E=E+1|0;if((E|0)==2)break;else e=e+(b<<1)|0}return}function QS(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;ZS(e,2,i,r,f,l);return}function $S(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;u=i>>>1;if((f|0)>0){h=(r|0)>0;w=l+8|0;k=l+16|0;b=32-a|0;c=10-a|0;s=0;while(1){if(h){i=Xi[k>>2]|0;n=Xi[l>>2]|0;t=Xi[w>>2]|0;o=0;do{d=n+(t>>>3)|0;d=(ZT(qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24|0)|0)<<(t&7)>>>b;v=t+a|0;t=i>>>0>v>>>0?v:i;Xi[w>>2]=t;Gi[e+(o<<1)>>1]=d<<c;o=o+1|0}while((o|0)!=(r|0))}s=s+1|0;if((s|0)==(f|0))break;else e=e+(u<<1)|0}}return}function e_(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=r;a=a+1|0;if((a|0)==4)break;else f=f+2|0}n=n+1|0;if((n|0)==4)break;else{i=i+8|0;e=e+(t<<1)|0}}return}function i_(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=r;a=a+1|0;if((a|0)==8)break;else f=f+2|0}n=n+1|0;if((n|0)==8)break;else{i=i+16|0;e=e+(t<<1)|0}}return}function r_(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=r;a=a+1|0;if((a|0)==16)break;else f=f+2|0}n=n+1|0;if((n|0)==16)break;else{i=i+32|0;e=e+(t<<1)|0}}return}function f_(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l>>1]=r;a=a+1|0;if((a|0)==32)break;else f=f+2|0}n=n+1|0;if((n|0)==32)break;else{i=i+64|0;e=e+(t<<1)|0}}return}function l_(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=i<<16>>16;a=5-t|0;t=1<<t;if((a|0)>0){n=1<<a+-1;if(i<<16>>16!=31){l=(t|0)>1?t:1;f=0;while(1){i=e;r=0;while(1){Gi[i>>1]=(Gi[i>>1]|0)+n>>a;r=r+1|0;if((r|0)>=(t|0))break;else i=i+2|0}f=f+1|0;if((f|0)>=(t|0))break;else e=e+(l<<1)|0}}}else if(i<<16>>16!=31){l=0-a|0;a=(t|0)>1?t:1;i=e;f=0;while(1){e=i;r=0;while(1){Gi[e>>1]=Gi[e>>1]<<l;r=r+1|0;if((r|0)>=(t|0))break;else e=e+2|0}f=f+1|0;if((f|0)>=(t|0))break;else i=i+(a<<1)|0}}return}function a_(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=1<<(i<<16>>16);if(!r){if(i<<16>>16!=31){l=(a|0)>1;r=e;f=0;while(1){if(l){i=Gi[r>>1]|0;e=1;do{n=r+(e<<1)|0;i=(Ji[n>>1]|0)+(i&65535)&65535;Gi[n>>1]=i;e=e+1|0}while((e|0)!=(a|0))}f=f+1|0;if((f|0)>=(a|0))break;else r=r+(a<<1)|0}}}else if((a|0)>1){f=i<<16>>16==31;l=a+-1|0;i=e;e=0;do{if(!f){r=0;do{n=i+(r+a<<1)|0;Gi[n>>1]=(Ji[n>>1]|0)+(Ji[i+(r<<1)>>1]|0);r=r+1|0}while((r|0)!=(a|0))}i=i+(a<<1)|0;e=e+1|0}while((e|0)!=(l|0))}return}function n_(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=0;r=e;while(1){w=Gi[r>>1]|0;u=r+16|0;o=Gi[u>>1]|0;n=o+w|0;f=r+24|0;h=Gi[f>>1]|0;s=h+o|0;l=w-h|0;t=r+8|0;a=(Gi[t>>1]|0)*74|0;h=((w-o+h|0)*74|0)+64|0;o=h>>7;Gi[u>>1]=(o+32768|0)>>>0>65535?h>>31^32767:o;u=(n*29|0)+64+(s*55|0)+a|0;o=u>>7;Gi[r>>1]=(o+32768|0)>>>0>65535?u>>31^32767:o;s=(Zi(s,-29)|0)+64+(l*55|0)+a|0;o=s>>7;Gi[t>>1]=(o+32768|0)>>>0>65535?s>>31^32767:o;a=(n*55|0)+64+(l*29|0)-a|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){f=Gi[e>>1]|0;a=e+4|0;t=Gi[a>>1]|0;s=t+f|0;w=e+6|0;l=Gi[w>>1]|0;n=l+t|0;h=f-l|0;o=e+2|0;u=(Gi[o>>1]|0)*74|0;l=((f-t+l|0)*74|0)+512|0;t=l>>10;Gi[a>>1]=(t+32768|0)>>>0>65535?l>>31^32767:t;a=(s*29|0)+512+(n*55|0)+u|0;t=a>>10;Gi[e>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=(Zi(n,-29)|0)+512+(h*55|0)+u|0;t=n>>10;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;u=(s*55|0)+512+(h*29|0)-u|0;h=u>>10;Gi[w>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function t_(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;i=0;r=e;while(1){s=Gi[r>>1]<<6;n=r+16|0;t=Gi[n>>1]<<6;l=t+s|0;t=s-t|0;s=r+8|0;u=Gi[s>>1]|0;f=r+24|0;o=Gi[f>>1]|0;a=(o*36|0)+(u*83|0)|0;o=(u*36|0)+(Zi(o,-83)|0)|0;u=l+64+a|0;h=u>>7;Gi[r>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;h=t+64+o|0;u=h>>7;Gi[s>>1]=(u+32768|0)>>>0>65535?h>>31^32767:u;o=t-o+64|0;t=o>>7;Gi[n>>1]=(t+32768|0)>>>0>65535?o>>31^32767:t;a=l-a+64|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){a=Gi[e>>1]<<6;o=e+4|0;t=Gi[o>>1]<<6;u=t+a|0;t=a-t|0;a=e+2|0;l=Gi[a>>1]|0;h=e+6|0;n=Gi[h>>1]|0;s=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=u+512+s|0;f=l>>10;Gi[e>>1]=(f+32768|0)>>>0>65535?l>>31^32767:f;f=t+512+n|0;l=f>>10;Gi[a>>1]=(l+32768|0)>>>0>65535?f>>31^32767:l;n=t-n+512|0;t=n>>10;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;s=u-s+512|0;u=s>>10;Gi[h>>1]=(u+32768|0)>>>0>65535?s>>31^32767:u;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function o_(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+64|0;w=E+48|0;b=E+32|0;d=E+16|0;v=E;o=(i|0)>8;r=i+4|0;s=w+4|0;u=w+8|0;h=w+12|0;k=0;r=(r|0)>8?8:r;c=e;while(1){Xi[b>>2]=0;Xi[b+4>>2]=0;Xi[b+8>>2]=0;Xi[b+12>>2]=0;a=(r|0)>1;t=0;do{if(a){n=b+(t<<2)|0;f=Xi[n>>2]|0;l=1;do{f=(Zi(Gi[c+(l<<3<<1)>>1]|0,Wi[128076+(l<<2<<5)+t>>0]|0)|0)+f|0;l=l+2|0}while((l|0)<(r|0));Xi[n>>2]=f}t=t+1|0}while((t|0)!=4);l=Gi[c>>1]<<6;a=Gi[c+64>>1]<<6;t=a+l|0;a=l-a|0;l=Gi[c+32>>1]|0;n=Gi[c+96>>1]|0;f=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=f+t|0;Xi[w>>2]=l;Xi[s>>2]=n+a;Xi[u>>2]=a-n;Xi[h>>2]=t-f;f=0;while(1){n=Xi[b+(f<<2)>>2]|0;a=l+64+n|0;t=a>>7;Gi[c+(f<<3<<1)>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=l-n+64|0;t=n>>7;Gi[c+(7-f<<3<<1)>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;f=f+1|0;if((f|0)==4)break;l=Xi[w+(f<<2)>>2]|0}if((r|0)<8)r=(k|0)!=0&(k&3|0)==0?r+-4|0:r;k=k+1|0;if((k|0)==8)break;else c=c+2|0}s=o?8:i;u=(s|0)>1;h=d+4|0;t=d+8|0;o=d+12|0;n=0;while(1){Xi[v>>2]=0;Xi[v+4>>2]=0;Xi[v+8>>2]=0;Xi[v+12>>2]=0;a=0;do{if(u){l=v+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[e+(f<<1)>>1]|0,Wi[128076+(f<<2<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=4);f=Gi[e>>1]<<6;k=Gi[e+8>>1]<<6;c=k+f|0;k=f-k|0;f=Gi[e+4>>1]|0;b=Gi[e+12>>1]|0;r=(b*36|0)+(f*83|0)|0;b=(f*36|0)+(Zi(b,-83)|0)|0;f=r+c|0;Xi[d>>2]=f;Xi[h>>2]=b+k;Xi[t>>2]=k-b;Xi[o>>2]=c-r;r=0;while(1){b=Xi[v+(r<<2)>>2]|0;k=f+512+b|0;c=k>>10;Gi[e+(r<<1)>>1]=(c+32768|0)>>>0>65535?k>>31^32767:c;b=f-b+512|0;c=b>>10;Gi[e+(7-r<<1)>>1]=(c+32768|0)>>>0>65535?b>>31^32767:c;r=r+1|0;if((r|0)==4)break;f=Xi[d+(r<<2)>>2]|0}n=n+1|0;if((n|0)==8)break;else e=e+16|0}Ue=E;return}function s_(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;D=Ue;Ue=Ue+192|0;E=D+160|0;_=D+128|0;g=D+112|0;m=D+96|0;M=D+64|0;R=D+32|0;N=D+16|0;T=D;F=(i|0)>16;n=i+4|0;y=g+4|0;O=g+8|0;A=g+12|0;c=E+28|0;d=m+4|0;v=E+4|0;o=E+24|0;s=m+8|0;u=E+8|0;h=E+20|0;w=m+12|0;k=E+12|0;b=E+16|0;S=0;n=(n|0)>16?16:n;p=e;while(1){Xi[_>>2]=0;Xi[_+4>>2]=0;Xi[_+8>>2]=0;Xi[_+12>>2]=0;Xi[_+16>>2]=0;Xi[_+20>>2]=0;Xi[_+24>>2]=0;Xi[_+28>>2]=0;l=(n|0)>1;t=0;do{if(l){a=_+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[p+(f<<4<<1)>>1]|0,Wi[128076+(f<<1<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=8);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;r=Gi[p+64>>1]|0;f=Gi[p+192>>1]|0;l=Gi[p+320>>1]|0;a=Gi[p+448>>1]|0;t=0;do{C=m+(t<<2)|0;P=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[C>>2]|0)|0;P=(Zi(f,Wi[128460+t>>0]|0)|0)+P|0;P=(Zi(l,Wi[128716+t>>0]|0)|0)+P|0;Xi[C>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+P;t=t+1|0}while((t|0)!=4);a=Gi[p>>1]<<6;P=Gi[p+256>>1]<<6;t=P+a|0;P=a-P|0;a=Gi[p+128>>1]|0;f=Gi[p+384>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+P|0;f=P-f|0;r=t-r|0;t=Xi[m>>2]|0;Xi[E>>2]=t+a;Xi[c>>2]=a-t;t=Xi[d>>2]|0;Xi[v>>2]=t+l;Xi[o>>2]=l-t;t=Xi[s>>2]|0;Xi[u>>2]=t+f;Xi[h>>2]=f-t;t=Xi[w>>2]|0;Xi[k>>2]=t+r;Xi[b>>2]=r-t;t=0;do{P=Xi[E+(t<<2)>>2]|0;C=Xi[_+(t<<2)>>2]|0;I=P+64+C|0;L=I>>7;Gi[p+(t<<4<<1)>>1]=(L+32768|0)>>>0>65535?I>>31^32767:L;C=P-C+64|0;P=C>>7;Gi[p+(15-t<<4<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;t=t+1|0}while((t|0)!=8);if((n|0)<16)n=(S|0)!=0&(S&3|0)==0?n+-4|0:n;S=S+1|0;if((S|0)==16)break;else p=p+2|0}Xi[g>>2]=a;Xi[y>>2]=l;Xi[O>>2]=f;Xi[A>>2]=r;s=F?16:i;u=(s|0)>1;m=N+4|0;p=N+8|0;F=N+12|0;h=M+28|0;w=T+4|0;k=M+4|0;b=M+24|0;c=T+8|0;d=M+8|0;v=M+20|0;E=T+12|0;S=M+12|0;_=M+16|0;t=e;o=0;while(1){Xi[R>>2]=0;Xi[R+4>>2]=0;Xi[R+8>>2]=0;Xi[R+12>>2]=0;Xi[R+16>>2]=0;Xi[R+20>>2]=0;Xi[R+24>>2]=0;Xi[R+28>>2]=0;a=0;do{if(u){l=R+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<1<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[T>>2]=0;Xi[T+4>>2]=0;Xi[T+8>>2]=0;Xi[T+12>>2]=0;r=Gi[t+4>>1]|0;f=Gi[t+12>>1]|0;l=Gi[t+20>>1]|0;a=Gi[t+28>>1]|0;n=0;do{I=T+(n<<2)|0;L=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[I>>2]|0)|0;L=(Zi(f,Wi[128460+n>>0]|0)|0)+L|0;L=(Zi(l,Wi[128716+n>>0]|0)|0)+L|0;Xi[I>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+L;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;I=Gi[t+16>>1]<<6;n=I+a|0;I=a-I|0;a=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+I|0;f=I-f|0;r=n-r|0;n=Xi[T>>2]|0;Xi[M>>2]=n+a;Xi[h>>2]=a-n;n=Xi[w>>2]|0;Xi[k>>2]=n+l;Xi[b>>2]=l-n;n=Xi[c>>2]|0;Xi[d>>2]=n+f;Xi[v>>2]=f-n;n=Xi[E>>2]|0;Xi[S>>2]=n+r;Xi[_>>2]=r-n;n=0;do{I=Xi[M+(n<<2)>>2]|0;L=Xi[R+(n<<2)>>2]|0;C=I+512+L|0;P=C>>10;Gi[t+(n<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;L=I-L+512|0;I=L>>10;Gi[t+(15-n<<1)>>1]=(I+32768|0)>>>0>65535?L>>31^32767:I;n=n+1|0}while((n|0)!=8);o=o+1|0;if((o|0)==16)break;else t=t+32|0}Xi[N>>2]=a;Xi[m>>2]=l;Xi[p>>2]=f;Xi[F>>2]=r;Ue=D;return}function u_(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;L=Ue;Ue=Ue+320|0;T=L+256|0;D=L+192|0;S=L+160|0;m=L+128|0;M=L+112|0;p=L+96|0;R=L+64|0;N=L+32|0;P=L+16|0;C=L;y=(i|0)>32;n=i+4|0;O=M+4|0;A=M+8|0;g=M+12|0;d=S+28|0;v=p+4|0;E=S+4|0;s=S+24|0;u=p+8|0;h=S+8|0;w=S+20|0;k=p+12|0;b=S+12|0;c=S+16|0;_=0;n=(n|0)>32?32:n;F=e;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));l=(n|0)>1;t=0;do{if(l){a=D+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<5<<1)>>1]|0,Wi[128076+(f<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=16);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;Xi[m+16>>2]=0;Xi[m+20>>2]=0;Xi[m+24>>2]=0;Xi[m+28>>2]=0;l=(n|0)/2|0;a=(n|0)>3;o=0;do{if(a){t=m+(o<<2)|0;r=Xi[t>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<6<<1)>>1]|0,Wi[128076+(f<<1<<5)+o>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(l|0));Xi[t>>2]=r}o=o+1|0}while((o|0)!=8);Xi[p>>2]=0;Xi[p+4>>2]=0;Xi[p+8>>2]=0;Xi[p+12>>2]=0;r=Gi[F+256>>1]|0;f=Gi[F+768>>1]|0;l=Gi[F+1280>>1]|0;a=Gi[F+1792>>1]|0;t=0;do{o=p+(t<<2)|0;I=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[o>>2]|0)|0;I=(Zi(f,Wi[128460+t>>0]|0)|0)+I|0;I=(Zi(l,Wi[128716+t>>0]|0)|0)+I|0;Xi[o>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+I;t=t+1|0}while((t|0)!=4);a=Gi[F>>1]<<6;I=Gi[F+1024>>1]<<6;t=I+a|0;I=a-I|0;a=Gi[F+512>>1]|0;f=Gi[F+1536>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+I|0;f=I-f|0;r=t-r|0;t=Xi[p>>2]|0;Xi[S>>2]=t+a;Xi[d>>2]=a-t;t=Xi[v>>2]|0;Xi[E>>2]=t+l;Xi[s>>2]=l-t;t=Xi[u>>2]|0;Xi[h>>2]=t+f;Xi[w>>2]=f-t;t=Xi[k>>2]|0;Xi[b>>2]=t+r;Xi[c>>2]=r-t;t=0;do{o=Xi[S+(t<<2)>>2]|0;I=Xi[m+(t<<2)>>2]|0;Xi[T+(t<<2)>>2]=I+o;Xi[T+(15-t<<2)>>2]=o-I;t=t+1|0}while((t|0)!=8);t=0;do{I=Xi[T+(t<<2)>>2]|0;o=Xi[D+(t<<2)>>2]|0;B=I+64+o|0;H=B>>7;Gi[F+(t<<5<<1)>>1]=(H+32768|0)>>>0>65535?B>>31^32767:H;o=I-o+64|0;I=o>>7;Gi[F+(31-t<<5<<1)>>1]=(I+32768|0)>>>0>65535?o>>31^32767:I;t=t+1|0}while((t|0)!=16);if((n|0)<32)n=(_|0)!=0&(_&3|0)==0?n+-4|0:n;_=_+1|0;if((_|0)==32)break;else F=F+2|0}Xi[M>>2]=a;Xi[O>>2]=l;Xi[A>>2]=f;Xi[g>>2]=r;s=y?32:i;u=(s|0)>1;h=(s|0)/2|0;w=(s|0)>3;F=P+4|0;y=P+8|0;O=P+12|0;k=R+28|0;b=C+4|0;c=R+4|0;d=R+24|0;v=C+8|0;E=R+8|0;S=R+20|0;_=C+12|0;m=R+12|0;p=R+16|0;t=e;o=0;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));a=0;do{if(u){l=D+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=16);Xi[N>>2]=0;Xi[N+4>>2]=0;Xi[N+8>>2]=0;Xi[N+12>>2]=0;Xi[N+16>>2]=0;Xi[N+20>>2]=0;Xi[N+24>>2]=0;Xi[N+28>>2]=0;a=0;do{if(w){l=N+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{B=f<<1;r=(Zi(Gi[t+(B<<1)>>1]|0,Wi[128076+(B<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(h|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[C>>2]=0;Xi[C+4>>2]=0;Xi[C+8>>2]=0;Xi[C+12>>2]=0;r=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;l=Gi[t+40>>1]|0;a=Gi[t+56>>1]|0;n=0;do{B=C+(n<<2)|0;H=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[B>>2]|0)|0;H=(Zi(f,Wi[128460+n>>0]|0)|0)+H|0;H=(Zi(l,Wi[128716+n>>0]|0)|0)+H|0;Xi[B>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+H;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;B=Gi[t+32>>1]<<6;n=B+a|0;B=a-B|0;a=Gi[t+16>>1]|0;f=Gi[t+48>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+B|0;f=B-f|0;r=n-r|0;n=Xi[C>>2]|0;Xi[R>>2]=n+a;Xi[k>>2]=a-n;n=Xi[b>>2]|0;Xi[c>>2]=n+l;Xi[d>>2]=l-n;n=Xi[v>>2]|0;Xi[E>>2]=n+f;Xi[S>>2]=f-n;n=Xi[_>>2]|0;Xi[m>>2]=n+r;Xi[p>>2]=r-n;n=0;do{H=Xi[R+(n<<2)>>2]|0;B=Xi[N+(n<<2)>>2]|0;Xi[T+(n<<2)>>2]=B+H;Xi[T+(15-n<<2)>>2]=H-B;n=n+1|0}while((n|0)!=8);n=0;do{B=Xi[T+(n<<2)>>2]|0;H=Xi[D+(n<<2)>>2]|0;e=B+512+H|0;I=e>>10;Gi[t+(n<<1)>>1]=(I+32768|0)>>>0>65535?e>>31^32767:I;H=B-H+512|0;B=H>>10;Gi[t+(31-n<<1)>>1]=(B+32768|0)>>>0>65535?H>>31^32767:B;n=n+1|0}while((n|0)!=16);o=o+1|0;if((o|0)==32)break;else t=t+64|0}Xi[P>>2]=a;Xi[F>>2]=l;Xi[y>>2]=f;Xi[O>>2]=r;Ue=L;return}function h_(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+8|0)>>>4&65535;r=0;do{f=r<<2;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;r=r+1|0}while((r|0)!=4);return}function w_(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+8|0)>>>4&65535;r=0;do{f=r<<3;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;Gi[e+((f|4)<<1)>>1]=i;Gi[e+((f|5)<<1)>>1]=i;Gi[e+((f|6)<<1)>>1]=i;Gi[e+((f|7)<<1)>>1]=i;r=r+1|0}while((r|0)!=8);return}function k_(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+8|0)>>>4&65535;l=0;do{r=l<<4;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=16);l=l+1|0}while((l|0)!=16);return}function b_(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+8|0)>>>4&65535;l=0;do{r=l<<5;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=32);l=l+1|0}while((l|0)!=32);return}function c_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+128|0;w=k;o=w;s=o+128|0;do{Xi[o>>2]=0;o=o+4|0}while((o|0)<(s|0));h=r>>>1;Xi[w+((a&31)<<2)>>2]=Gi[l+2>>1];Xi[w+((a+1&31)<<2)>>2]=Gi[l+4>>1];Xi[w+((a+2&31)<<2)>>2]=Gi[l+6>>1];Xi[w+((a+3&31)<<2)>>2]=Gi[l+8>>1];f=f>>>1;if((t|0)>0){u=(n|0)>0;l=e;o=i;a=0;while(1){if(u){s=0;do{r=Ji[o+(s<<1)>>1]|0;r=r+(Xi[w+(r>>>5<<2)>>2]|0)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[l+(s<<1)>>1]=r;s=s+1|0}while((s|0)!=(n|0))}a=a+1|0;if((a|0)==(t|0))break;else{l=l+(h<<1)|0;o=o+(f<<1)|0}}}Ue=k;return}function d_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0;u=r>>>1;h=((Wi[129100+(l<<2)+1>>0]|0)*80|0)+(Wi[129100+(l<<2)>>0]|0)|0;o=((Wi[129100+(l<<2)+3>>0]|0)*80|0)+(Wi[129100+(l<<2)+2>>0]|0)|0;if((n|0)>0){s=(a|0)>0;t=0;while(1){if(s){l=0;do{r=Gi[i+(l<<1)>>1]|0;k=Gi[i+(h+l<<1)>>1]|0;w=Gi[i+(o+l<<1)>>1]|0;r=(Gi[f+(qi[129116+((((r&65535)<(k&65535))<<31>>31)+2+((r&65535)>(k&65535)&1)+(((r&65535)<(w&65535))<<31>>31)+((r&65535)>(w&65535)&1))>>0]<<1)>>1]|0)+(r&65535)|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e+(l<<1)>>1]=r;l=l+1|0}while((l|0)!=(a|0))}t=t+1|0;if((t|0)==(n|0))break;else{e=e+(u<<1)|0;i=i+160|0}}}return}function v_(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=l+112+(o*10|0)|0;l=Xi[l+100+(o<<2)>>2]|0;w=r>>>1;r=f>>>1;if((l|0)!=1){if(Xi[a>>2]|0){u=Gi[k>>1]|0;if((t|0)>0){s=0;do{h=(Ji[i+((Zi(s,r)|0)<<1)>>1]|0)+u|0;if(h>>>0>=1024)h=0-h>>31&1023;Gi[e+((Zi(s,w)|0)<<1)>>1]=h;s=s+1|0}while((s|0)!=(t|0));h=1}else h=1}else h=0;if(Xi[a+8>>2]|0){o=Gi[k>>1]|0;n=n+-1|0;if((t|0)>0){s=0;do{u=(Ji[i+((Zi(s,r)|0)+n<<1)>>1]|0)+o|0;if(u>>>0>=1024)u=0-u>>31&1023;Gi[e+((Zi(s,w)|0)+n<<1)>>1]=u;s=s+1|0}while((s|0)!=(t|0))}}if(l|0){s=n;b=13}}else{h=0;s=n;b=13}if((b|0)==13){if(Xi[a+4>>2]|0?(c=Gi[k>>1]|0,(h|0)<(s|0)):0){u=h;do{n=(Ji[i+(u<<1)>>1]|0)+c|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(u<<1)>>1]=n;u=u+1|0}while((u|0)!=(s|0))}if(Xi[a+12>>2]|0?(d=Gi[k>>1]|0,E=t+-1|0,v=Zi(E,w)|0,E=Zi(E,r)|0,(h|0)<(s|0)):0)do{n=(Ji[i+(h+E<<1)>>1]|0)+d|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(h+v<<1)>>1]=n;h=h+1|0}while((h|0)!=(s|0))}return}function E_(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;b=l+112+(o*10|0)|0;S=Xi[l+100+(o<<2)>>2]|0;P=r>>>1;D=f>>>1;g=(S|0)!=1;if(g){if(Xi[a>>2]|0){l=Gi[b>>1]|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)<<1)>>1]|0)+l|0;if(o>>>0>=1024)o=0-o>>31&1023;Gi[e+((Zi(r,P)|0)<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0));c=1}else c=1}else c=0;if(Xi[a+8>>2]|0){f=Gi[b>>1]|0;l=n+-1|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)+l<<1)>>1]|0)+f|0;if(o>>>0>=1024)o=0-o>>31&1023;Gi[e+((Zi(r,P)|0)+l<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0))}}else l=n;if(!S){S=0;F=0;r=0;_=0;m=0;v=0;y=h+1|0;p=0;a=h+2|0;b=h+3|0;E=t;n=0;d=l}else{A=c;d=l;O=14}}else{A=0;d=n;O=14}if((O|0)==14){c=Xi[a+4>>2]|0;E=(c|0)==0;if(!E){l=Gi[b>>1]|0;if((A|0)<(d|0)){r=A;do{o=(Ji[i+(r<<1)>>1]|0)+l|0;if(o>>>0>=1024)o=0-o>>31&1023;Gi[e+(r<<1)>>1]=o;r=r+1|0}while((r|0)!=(d|0));O=1}else O=1}else O=0;if(Xi[a+12>>2]|0){b=Gi[b>>1]|0;l=t+-1|0;r=Zi(l,P)|0;f=Zi(l,D)|0;if((A|0)<(d|0)){n=A;do{o=(Ji[i+(n+f<<1)>>1]|0)+b|0;if(o>>>0>=1024)o=0-o>>31&1023;Gi[e+(n+r<<1)>>1]=o;n=n+1|0}while((n|0)!=(d|0));t=l}else t=l}v=(S|0)==2;if(v&(Wi[h>>0]|0)==0)o=(Xi[a>>2]|c|0)==0;else o=0;f=o&1;c=h+1|0;o=(S|0)==3;if(o&(Wi[c>>0]|0)==0&E){l=(Xi[a+8>>2]|0)==0;o=1}else l=0;r=l&1;n=h+2|0;if(v&(Wi[n>>0]|0)==0?(Xi[a+8>>2]|0)==0:0)l=(Xi[a+12>>2]|0)==0;else l=0;l=l&1;b=h+3|0;if(o&(Wi[b>>0]|0)==0?(Xi[a>>2]|0)==0:0){S=(Xi[a+12>>2]|0)==0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}else{S=0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}}f=S&1;if(g&(Wi[s>>0]|0)!=0?(M=n+F|0,R=E-f|0,(M|0)<(R|0)):0){o=M;do{Gi[e+((Zi(o,P)|0)<<1)>>1]=Gi[i+((Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(R|0))}if(g&(Wi[s+1>>0]|0)!=0?(T=r+n|0,N=E-_|0,(T|0)<(N|0)):0){l=d+-1|0;o=T;do{Gi[e+(l+(Zi(o,P)|0)<<1)>>1]=Gi[i+(l+(Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(N|0))}if(m&(Wi[u>>0]|0)!=0?(k=c+F|0,C=d-r|0,(k|0)<(C|0)):0)do{Gi[e+(k<<1)>>1]=Gi[i+(k<<1)>>1]|0;k=k+1|0}while((k|0)!=(C|0));if(m&(Wi[u+1>>0]|0)!=0?(w=f+c|0,L=d-_|0,(w|0)<(L|0)):0){o=E+-1|0;k=Zi(o,D)|0;o=Zi(o,P)|0;do{Gi[e+(w+o<<1)>>1]=Gi[i+(w+k<<1)>>1]|0;w=w+1|0}while((w|0)!=(L|0))}if(v&(Wi[h>>0]|0)!=0)Gi[e>>1]=Gi[i>>1]|0;if(p&(Wi[y>>0]|0)!=0){h=d+-1|0;Gi[e+(h<<1)>>1]=Gi[i+(h<<1)>>1]|0}if(v&(Wi[a>>0]|0)!=0){h=E+-1|0;L=d+-1|0;Gi[e+(L+(Zi(h,P)|0)<<1)>>1]=Gi[i+(L+(Zi(h,D)|0)<<1)>>1]|0}if(p&(Wi[b>>0]|0)!=0){h=E+-1|0;Gi[e+((Zi(h,P)|0)<<1)>>1]=Gi[i+((Zi(h,D)|0)<<1)>>1]|0}return}function S_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0;t=r>>>1;if((f|0)>0){o=(n|0)>0;r=i;a=0;while(1){if(o){l=0;do{Gi[e+(l<<1)>>1]=(Ji[r+(l<<1)>>1]|0)<<4;l=l+1|0}while((l|0)!=(n|0))}a=a+1|0;if((a|0)==(f|0))break;else{e=e+128|0;r=r+(t<<1)|0}}}return}function __(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=r>>>1;r=l+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;c=48+(r<<4)+6|0;b=48+(r<<4)+7|0;k=0;while(1){if(v){r=Wi[d>>0]|0;a=Wi[E>>0]|0;l=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[c>>0]|0;h=Wi[b>>0]|0;w=0;do{O=Zi(Ji[i+(w+-3<<1)>>1]|0,r)|0;O=(Zi(Ji[i+(w+-2<<1)>>1]|0,a)|0)+O|0;O=O+(Zi(Ji[i+(w+-1<<1)>>1]|0,l)|0)|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;y=w;w=w+1|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,o)|0)|0;O=O+(Zi(Ji[i+(y+2<<1)>>1]|0,s)|0)|0;O=O+(Zi(Ji[i+(y+3<<1)>>1]|0,u)|0)|0;Gi[e+(y<<1)>>1]=(O+(Zi(Ji[i+(y+4<<1)>>1]|0,h)|0)|0)>>>2}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(F<<1)|0}}}return}function m_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;A=r>>>1;r=a+-1|0;S=48+(r<<4)|0;if((f|0)>0){_=(n|0)>0;m=A*3|0;p=48+(r<<4)+1|0;F=A<<1;y=48+(r<<4)+2|0;O=48+(r<<4)+3|0;d=48+(r<<4)+4|0;v=48+(r<<4)+5|0;E=48+(r<<4)+6|0;b=48+(r<<4)+7|0;c=A<<2;k=0;while(1){if(_){r=Wi[S>>0]|0;l=Wi[p>>0]|0;a=Wi[y>>0]|0;t=Wi[O>>0]|0;o=Wi[d>>0]|0;s=Wi[v>>0]|0;u=Wi[E>>0]|0;h=Wi[b>>0]|0;w=0;do{g=Zi(Ji[i+(w-m<<1)>>1]|0,r)|0;g=(Zi(Ji[i+(w-F<<1)>>1]|0,l)|0)+g|0;g=g+(Zi(Ji[i+(w-A<<1)>>1]|0,a)|0)|0;g=g+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;g=g+(Zi(Ji[i+(w+A<<1)>>1]|0,o)|0)|0;g=g+(Zi(Ji[i+(w+F<<1)>>1]|0,s)|0)|0;g=g+(Zi(Ji[i+(w+m<<1)>>1]|0,u)|0)|0;Gi[e+(w<<1)>>1]=(g+(Zi(Ji[i+(w+c<<1)>>1]|0,h)|0)|0)>>>2;w=w+1|0}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(A<<1)|0}}}return}function p_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;L=Ue;Ue=Ue+9088|0;P=L;C=r>>>1;r=l+-1|0;M=48+(r<<4)|0;if((f|0)>-7){R=(n|0)>0;T=48+(r<<4)+1|0;N=48+(r<<4)+2|0;D=48+(r<<4)+3|0;O=48+(r<<4)+4|0;A=48+(r<<4)+5|0;g=48+(r<<4)+6|0;F=48+(r<<4)+7|0;y=f+6|0;S=i+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(R){l=Wi[M>>0]|0;i=Wi[T>>0]|0;t=Wi[N>>0]|0;o=Wi[D>>0]|0;s=Wi[O>>0]|0;u=Wi[A>>0]|0;h=Wi[g>>0]|0;w=Wi[F>>0]|0;r=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){I=(Zi(k&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(b&65535,t)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;r=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(I+(Zi(r&65535,w)|0)|0)>>>2;m=m+1|0;if((m|0)==(n|0))break;else{z=E;x=v;U=d;B=c;H=b;I=k;E=r;v=z;d=x;c=U;b=B;k=H;r=I}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}r=a+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;F=48+(r<<4)+6|0;c=48+(r<<4)+7|0;w=P+384|0;b=0;while(1){if(v){r=Wi[d>>0]|0;l=Wi[E>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[c>>0]|0;k=0;do{z=Zi(Gi[w+(k+-192<<1)>>1]|0,r)|0;z=(Zi(Gi[w+(k+-128<<1)>>1]|0,l)|0)+z|0;z=z+(Zi(Gi[w+(k+-64<<1)>>1]|0,i)|0)|0;z=z+(Zi(Gi[w+(k<<1)>>1]|0,t)|0)|0;z=z+(Zi(Gi[w+(k+64<<1)>>1]|0,o)|0)|0;z=z+(Zi(Gi[w+(k+128<<1)>>1]|0,s)|0)|0;z=z+(Zi(Gi[w+(k+192<<1)>>1]|0,u)|0)|0;Gi[e+(k<<1)>>1]=(z+(Zi(Gi[w+(k+256<<1)>>1]|0,h)|0)|0)>>>6;k=k+1|0}while((k|0)!=(n|0))}b=b+1|0;if((b|0)==(f|0))break;else{e=e+128|0;w=w+128|0}}}}Ue=L;return}function F_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0;o=f>>>1;n=i>>>1;if((l|0)>0){a=t<<1;f=0;while(1){qT(e|0,r|0,a|0)|0;f=f+1|0;if((f|0)==(l|0))break;else{e=e+(n<<1)|0;r=r+(o<<1)|0}}}return}function y_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;A=f>>>1;O=i>>>1;f=a+-1|0;S=48+(f<<4)|0;if((l|0)>0){_=(t|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;v=48+(f<<4)+5|0;E=48+(f<<4)+6|0;d=48+(f<<4)+7|0;c=0;while(1){if(_){n=Wi[S>>0]|0;i=Wi[m>>0]|0;a=Wi[p>>0]|0;o=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[v>>0]|0;h=Wi[E>>0]|0;w=Wi[d>>0]|0;k=0;do{f=Zi(Ji[r+(k+-3<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(k+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k+-1<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;b=k;k=k+1|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+3<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(b+4<<1)>>1]|0,w)|0)>>2)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(b<<1)>>1]=f}while((k|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(O<<1)|0;r=r+(A<<1)|0}}}return}function O_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0;M=f>>>1;g=i>>>1;f=n+-1|0;m=48+(f<<4)|0;if((l|0)>0){p=(t|0)>0;F=M*3|0;y=48+(f<<4)+1|0;O=M<<1;A=48+(f<<4)+2|0;v=48+(f<<4)+3|0;E=48+(f<<4)+4|0;S=48+(f<<4)+5|0;_=48+(f<<4)+6|0;c=48+(f<<4)+7|0;d=M<<2;b=0;while(1){if(p){a=Wi[m>>0]|0;i=Wi[y>>0]|0;n=Wi[A>>0]|0;o=Wi[v>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[c>>0]|0;k=0;do{f=Zi(Ji[r+(k-F<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(k-O<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k-M<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(k+M<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(k+O<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(k+F<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(k+d<<1)>>1]|0,w)|0)>>2)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(k<<1)>>1]=f;k=k+1|0}while((k|0)!=(t|0))}b=b+1|0;if((b|0)==(l|0))break;else{e=e+(g<<1)|0;r=r+(M<<1)|0}}}return}function A_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;I=Ue;Ue=Ue+9088|0;P=I;C=f>>>1;L=i>>>1;f=a+-1|0;R=48+(f<<4)|0;if((l|0)>-7){T=(t|0)>0;N=48+(f<<4)+1|0;D=48+(f<<4)+2|0;O=48+(f<<4)+3|0;A=48+(f<<4)+4|0;g=48+(f<<4)+5|0;M=48+(f<<4)+6|0;F=48+(f<<4)+7|0;y=l+6|0;S=r+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(T){i=Wi[R>>0]|0;a=Wi[N>>0]|0;r=Wi[D>>0]|0;o=Wi[O>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[F>>0]|0;f=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){H=(Zi(k&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(b&65535,r)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;f=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(H+(Zi(f&65535,w)|0)|0)>>>2;m=m+1|0;if((m|0)==(t|0))break;else{V=E;z=v;x=d;U=c;B=b;H=k;E=f;v=V;d=z;c=x;b=U;k=B;f=H}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}f=n+-1|0;v=48+(f<<4)|0;if((l|0)>0){E=(t|0)>0;S=48+(f<<4)+1|0;_=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;d=48+(f<<4)+7|0;k=P+384|0;c=0;while(1){if(E){a=Wi[v>>0]|0;r=Wi[S>>0]|0;o=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;i=Wi[d>>0]|0;b=0;do{f=Zi(Gi[k+(b+-192<<1)>>1]|0,a)|0;f=(Zi(Gi[k+(b+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[k+(b+-64<<1)>>1]|0,o)|0)|0;f=f+(Zi(Gi[k+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[k+(b+64<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[k+(b+128<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[k+(b+192<<1)>>1]|0,w)|0)|0;f=(f+(Zi(Gi[k+(b+256<<1)>>1]|0,i)|0)>>6)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(L<<1)|0;k=k+128|0}}}}Ue=I;return}function g_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0;d=f>>>1;b=i>>>1;c=a+4|0;k=1<<a+3;h=t<<2;if((l|0)>0){w=(u|0)>0;t=n<<4;a=e;o=r;i=0;while(1){if(w){s=0;do{f=((Zi(t,Ji[o+(s<<1)>>1]|0)|0)+k>>c)+h|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[a+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(u|0))}i=i+1|0;if((i|0)==(l|0))break;else{a=a+(b<<1)|0;o=o+(d<<1)|0}}}return}function M_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;T=f>>>1;R=i>>>1;f=o+-1|0;g=48+(f<<4)|0;M=a+4|0;A=1<<a+3;y=t<<2;if((l|0)>0){O=(u|0)>0;E=48+(f<<4)+1|0;S=48+(f<<4)+2|0;_=48+(f<<4)+3|0;m=48+(f<<4)+4|0;p=48+(f<<4)+5|0;F=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(O){s=Wi[g>>0]|0;i=Wi[E>>0]|0;o=Wi[S>>0]|0;a=Wi[_>>0]|0;t=Wi[m>>0]|0;h=Wi[p>>0]|0;w=Wi[F>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>2,n)|0)+A>>M)+y|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(c<<1)>>1]=f}while((b|0)!=(u|0))}d=d+1|0;if((d|0)==(l|0))break;else{e=e+(R<<1)|0;r=r+(T<<1)|0}}}return}function R_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;D=f>>>1;N=i>>>1;f=s+-1|0;R=48+(f<<4)|0;T=a+4|0;M=1<<a+3;A=t<<2;if((l|0)>0){g=(u|0)>0;E=D*3|0;S=48+(f<<4)+1|0;_=D<<1;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=D<<2;c=0;while(1){if(g){o=Wi[R>>0]|0;i=Wi[S>>0]|0;s=Wi[m>>0]|0;a=Wi[p>>0]|0;t=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[O>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-E<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(b-_<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-D<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(b+D<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b+_<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+E<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>2,n)|0)+M>>T)+A|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(u|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(N<<1)|0;r=r+(D<<1)|0}}}return}function T_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0;x=Ue;Ue=Ue+9088|0;I=x;L=f>>>1;B=i>>>1;U=a+4|0;H=1<<a+3;f=o+-1|0;P=48+(f<<4)|0;if((l|0)>-7){g=(u|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;T=48+(f<<4)+3|0;N=48+(f<<4)+4|0;D=48+(f<<4)+5|0;C=48+(f<<4)+6|0;O=48+(f<<4)+7|0;A=l+6|0;m=r+((Zi(L,-3)|0)<<1)|0;p=I;y=0;while(1){if(g){i=Wi[P>>0]|0;a=Wi[M>>0]|0;o=Wi[R>>0]|0;r=Wi[T>>0]|0;h=Wi[N>>0]|0;w=Wi[D>>0]|0;k=Wi[C>>0]|0;b=Wi[O>>0]|0;f=Gi[m+-6>>1]|0;c=Gi[m+-4>>1]|0;d=Gi[m+-2>>1]|0;v=Gi[m>>1]|0;E=Gi[m+2>>1]|0;S=Gi[m+4>>1]|0;_=Gi[m+6>>1]|0;F=0;while(1){z=(Zi(c&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(d&65535,o)|0)+(Zi(v&65535,r)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)+(Zi(_&65535,k)|0)|0;f=Gi[m+(F+4<<1)>>1]|0;Gi[p+(F<<1)>>1]=(z+(Zi(f&65535,b)|0)|0)>>>2;F=F+1|0;if((F|0)==(u|0))break;else{W=_;K=S;j=E;Y=v;V=d;z=c;_=f;S=W;E=K;v=j;d=Y;c=V;f=z}}}if((y|0)<(A|0)){m=m+(L<<1)|0;p=p+128|0;y=y+1|0}else break}f=s+-1|0;g=48+(f<<4)|0;S=t<<2;if((l|0)>0){_=(u|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;E=48+(f<<4)+7|0;c=I+384|0;v=0;while(1){if(_){r=Wi[g>>0]|0;h=Wi[m>>0]|0;w=Wi[p>>0]|0;k=Wi[F>>0]|0;b=Wi[y>>0]|0;i=Wi[O>>0]|0;a=Wi[A>>0]|0;o=Wi[E>>0]|0;d=0;do{f=Zi(Gi[c+(d+-192<<1)>>1]|0,r)|0;f=(Zi(Gi[c+(d+-128<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[c+(d+-64<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[c+(d<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[c+(d+64<<1)>>1]|0,b)|0)|0;f=f+(Zi(Gi[c+(d+128<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[c+(d+192<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[c+(d+256<<1)>>1]|0,o)|0)>>6,n)|0)+H>>U)+S|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(u|0))}v=v+1|0;if((v|0)==(l|0))break;else{e=e+(B<<1)|0;c=c+128|0}}}}Ue=x;return}function N_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0;h=f>>>1;s=i>>>1;if((a|0)>0){u=(o|0)>0;n=r;i=0;while(1){if(u){t=0;do{f=(Gi[l+(t<<1)>>1]|0)+16+(Ji[n+(t<<1)>>1]<<4)>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(o|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(s<<1)|0;n=n+(h<<1)|0}}}return}function D_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;g=f>>>1;A=i>>>1;f=n+-1|0;_=48+(f<<4)|0;if((a|0)>0){m=(o|0)>0;p=48+(f<<4)+1|0;F=48+(f<<4)+2|0;y=48+(f<<4)+3|0;O=48+(f<<4)+4|0;E=48+(f<<4)+5|0;S=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(m){t=Wi[_>>0]|0;i=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;h=Wi[E>>0]|0;w=Wi[S>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>2;f=(Gi[l+(c<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(c<<1)>>1]=f}while((b|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(A<<1)|0;r=r+(g<<1)|0}}}return}function C_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;R=f>>>1;M=i>>>1;f=t+-1|0;p=48+(f<<4)|0;if((a|0)>0){F=(o|0)>0;y=R*3|0;O=48+(f<<4)+1|0;A=R<<1;g=48+(f<<4)+2|0;E=48+(f<<4)+3|0;S=48+(f<<4)+4|0;_=48+(f<<4)+5|0;m=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=R<<2;c=0;while(1){if(F){n=Wi[p>>0]|0;i=Wi[O>>0]|0;t=Wi[g>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[m>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-y<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(b-A<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-R<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+R<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+A<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+y<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>2;f=(Gi[l+(b<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(o|0))}c=c+1|0;if((c|0)==(a|0))break;else{l=l+128|0;e=e+(M<<1)|0;r=r+(R<<1)|0}}}return}function P_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;H=Ue;Ue=Ue+9088|0;L=H;P=f>>>1;I=i>>>1;f=n+-1|0;T=48+(f<<4)|0;if((a|0)>-7){N=(o|0)>0;D=48+(f<<4)+1|0;C=48+(f<<4)+2|0;A=48+(f<<4)+3|0;g=48+(f<<4)+4|0;M=48+(f<<4)+5|0;R=48+(f<<4)+6|0;y=48+(f<<4)+7|0;O=a+6|0;_=r+((Zi(P,-3)|0)<<1)|0;m=L;F=0;while(1){if(N){i=Wi[T>>0]|0;n=Wi[D>>0]|0;r=Wi[C>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[R>>0]|0;k=Wi[y>>0]|0;f=Gi[_+-6>>1]|0;b=Gi[_+-4>>1]|0;c=Gi[_+-2>>1]|0;d=Gi[_>>1]|0;v=Gi[_+2>>1]|0;E=Gi[_+4>>1]|0;S=Gi[_+6>>1]|0;p=0;while(1){B=(Zi(b&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,r)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)|0;f=Gi[_+(p+4<<1)>>1]|0;Gi[m+(p<<1)>>1]=(B+(Zi(f&65535,k)|0)|0)>>>2;p=p+1|0;if((p|0)==(o|0))break;else{Y=S;V=E;z=v;x=d;U=c;B=b;S=f;E=Y;v=V;d=z;c=x;b=U;f=B}}}if((F|0)<(O|0)){_=_+(P<<1)|0;m=m+128|0;F=F+1|0}else break}f=t+-1|0;E=48+(f<<4)|0;if((a|0)>0){S=(o|0)>0;_=48+(f<<4)+1|0;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;v=48+(f<<4)+7|0;b=L+384|0;d=0;while(1){if(S){n=Wi[E>>0]|0;r=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[O>>0]|0;i=Wi[v>>0]|0;c=0;do{f=Zi(Gi[b+(c+-192<<1)>>1]|0,n)|0;f=(Zi(Gi[b+(c+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[b+(c+-64<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[b+(c<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[b+(c+128<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[b+(c+192<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[b+(c+256<<1)>>1]|0,i)|0)>>6;f=(Gi[l+(c<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(I<<1)|0;b=b+128|0}}}}Ue=H;return}function L_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0;E=f>>>1;c=i>>>1;d=n+5|0;if((a|0)>0){v=(k|0)>0;b=o<<4;o=(u+s<<2|1)<<n+4;h=r;i=0;while(1){if(v){w=0;do{f=Zi(b,Ji[h+(w<<1)>>1]|0)|0;f=(Zi(Gi[l+(w<<1)>>1]|0,t)|0)+o+f>>d;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(k|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(c<<1)|0;h=h+(E<<1)|0}}}return}function I_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;N=f>>>1;T=i>>>1;f=h+-1|0;O=48+(f<<4)|0;A=n+5|0;if((a|0)>0){g=(k|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;_=48+(f<<4)+7|0;S=(u+s<<2|1)<<n+4;E=0;while(1){if(g){w=Wi[O>>0]|0;i=Wi[M>>0]|0;h=Wi[R>>0]|0;n=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;b=Wi[y>>0]|0;c=Wi[_>>0]|0;d=0;do{f=Zi(Ji[r+(d+-3<<1)>>1]|0,w)|0;f=(Zi(Ji[r+(d+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d+-1<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;v=d;d=d+1|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(v+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(v+3<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(v+4<<1)>>1]|0,c)|0)>>2,o)|0;f=(Zi(Gi[l+(v<<1)>>1]|0,t)|0)+S+f>>A;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(v<<1)>>1]=f}while((d|0)!=(k|0))}E=E+1|0;if((E|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;r=r+(N<<1)|0}}}return}function H_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;C=f>>>1;D=i>>>1;f=w+-1|0;g=48+(f<<4)|0;M=n+5|0;if((a|0)>0){R=(k|0)>0;T=C*3|0;N=48+(f<<4)+1|0;m=C<<1;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;S=48+(f<<4)+7|0;_=C<<2;E=(u+s<<2|1)<<n+4;v=0;while(1){if(R){h=Wi[g>>0]|0;i=Wi[N>>0]|0;w=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;b=Wi[A>>0]|0;c=Wi[S>>0]|0;d=0;do{f=Zi(Ji[r+(d-T<<1)>>1]|0,h)|0;f=(Zi(Ji[r+(d-m<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d-C<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(d+C<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(d+m<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(d+T<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(d+_<<1)>>1]|0,c)|0)>>2,o)|0;f=(Zi(Gi[l+(d<<1)>>1]|0,t)|0)+E+f>>M;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(k|0))}v=v+1|0;if((v|0)==(a|0))break;else{l=l+128|0;e=e+(D<<1)|0;r=r+(C<<1)|0}}}return}function B_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0;Y=Ue;Ue=Ue+9088|0;x=Y;B=f>>>1;z=i>>>1;V=n+5|0;U=n+4|0;f=h+-1|0;I=48+(f<<4)|0;if((a|0)>-7){H=(k|0)>0;T=48+(f<<4)+1|0;N=48+(f<<4)+2|0;D=48+(f<<4)+3|0;C=48+(f<<4)+4|0;P=48+(f<<4)+5|0;L=48+(f<<4)+6|0;M=48+(f<<4)+7|0;R=a+6|0;y=r+((Zi(B,-3)|0)<<1)|0;O=x;g=0;while(1){if(H){i=Wi[I>>0]|0;n=Wi[T>>0]|0;h=Wi[N>>0]|0;r=Wi[D>>0]|0;b=Wi[C>>0]|0;c=Wi[P>>0]|0;d=Wi[L>>0]|0;v=Wi[M>>0]|0;f=Gi[y+-6>>1]|0;E=Gi[y+-4>>1]|0;S=Gi[y+-2>>1]|0;_=Gi[y>>1]|0;m=Gi[y+2>>1]|0;p=Gi[y+4>>1]|0;F=Gi[y+6>>1]|0;A=0;while(1){j=(Zi(E&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(S&65535,h)|0)+(Zi(_&65535,r)|0)+(Zi(m&65535,b)|0)+(Zi(p&65535,c)|0)+(Zi(F&65535,d)|0)|0;f=Gi[y+(A+4<<1)>>1]|0;Gi[O+(A<<1)>>1]=(j+(Zi(f&65535,v)|0)|0)>>>2;A=A+1|0;if((A|0)==(k|0))break;else{q=F;X=p;G=m;W=_;K=S;j=E;F=f;p=q;m=X;_=G;S=W;E=K;f=j}}}if((g|0)<(R|0)){y=y+(B<<1)|0;O=O+128|0;g=g+1|0}else break}f=w+-1|0;F=48+(f<<4)|0;if((a|0)>0){y=(k|0)>0;O=48+(f<<4)+1|0;A=48+(f<<4)+2|0;g=48+(f<<4)+3|0;M=48+(f<<4)+4|0;R=48+(f<<4)+5|0;T=48+(f<<4)+6|0;p=48+(f<<4)+7|0;m=(u+s<<2|1)<<U;E=x+384|0;_=0;while(1){if(y){b=Wi[F>>0]|0;c=Wi[O>>0]|0;d=Wi[A>>0]|0;v=Wi[g>>0]|0;i=Wi[M>>0]|0;n=Wi[R>>0]|0;h=Wi[T>>0]|0;r=Wi[p>>0]|0;S=0;do{f=Zi(Gi[E+(S+-192<<1)>>1]|0,b)|0;f=(Zi(Gi[E+(S+-128<<1)>>1]|0,c)|0)+f|0;f=f+(Zi(Gi[E+(S+-64<<1)>>1]|0,d)|0)|0;f=f+(Zi(Gi[E+(S<<1)>>1]|0,v)|0)|0;f=f+(Zi(Gi[E+(S+64<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[E+(S+128<<1)>>1]|0,n)|0)|0;f=f+(Zi(Gi[E+(S+192<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Gi[E+(S+256<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(S<<1)>>1]|0,t)|0)+m+f>>V;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(S<<1)>>1]=f;S=S+1|0}while((S|0)!=(k|0))}_=_+1|0;if((_|0)==(a|0))break;else{l=l+128|0;e=e+(z<<1)|0;E=E+128|0}}}}Ue=Y;return}function U_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;c=r>>>1;r=l+-1|0;h=16+(r<<2)|0;if((f|0)>0){w=(n|0)>0;k=16+(r<<2)+1|0;b=16+(r<<2)+2|0;u=16+(r<<2)+3|0;s=0;while(1){if(w){t=Wi[h>>0]|0;r=Wi[k>>0]|0;a=Wi[b>>0]|0;l=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o+-1<<1)>>1]|0,t)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,r)|0)+v|0;d=o;o=o+1|0;v=v+(Zi(Ji[i+(o<<1)>>1]|0,a)|0)|0;Gi[e+(d<<1)>>1]=(v+(Zi(Ji[i+(d+2<<1)>>1]|0,l)|0)|0)>>>2}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(c<<1)|0}}}return}function x_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r>>>1;r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;u=16+(r<<2)+3|0;h=d<<1;s=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;a=Wi[c>>0]|0;t=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o-d<<1)>>1]|0,r)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,l)|0)+v|0;v=v+(Zi(Ji[i+(o+d<<1)>>1]|0,a)|0)|0;Gi[e+(o<<1)>>1]=(v+(Zi(Ji[i+(o+h<<1)>>1]|0,t)|0)|0)>>>2;o=o+1|0}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(d<<1)|0}}}return}function z_(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=Ue;Ue=Ue+8576|0;p=F;m=r>>>1;r=l+-1|0;v=16+(r<<2)|0;if((f|0)>-3){E=(n|0)>0;S=16+(r<<2)+1|0;_=16+(r<<2)+2|0;d=16+(r<<2)+3|0;c=f+2|0;h=i+(0-m<<1)|0;w=p;b=0;while(1){if(E){l=Wi[v>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[d>>0]|0;r=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){y=(Zi(s&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(u&65535,t)|0)|0;r=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(y+(Zi(r&65535,o)|0)|0)>>>2;k=k+1|0;if((k|0)==(n|0))break;else{O=u;y=s;u=r;s=O;r=y}}}if((b|0)<(c|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;h=16+(r<<2)+3|0;o=p+128|0;u=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;i=Wi[c>>0]|0;t=Wi[h>>0]|0;s=0;do{O=Zi(Gi[o+(s+-64<<1)>>1]|0,r)|0;O=(Zi(Gi[o+(s<<1)>>1]|0,l)|0)+O|0;O=O+(Zi(Gi[o+(s+64<<1)>>1]|0,i)|0)|0;Gi[e+(s<<1)>>1]=(O+(Zi(Gi[o+(s+128<<1)>>1]|0,t)|0)|0)>>>6;s=s+1|0}while((s|0)!=(n|0))}u=u+1|0;if((u|0)==(f|0))break;else{e=e+128|0;o=o+128|0}}}}Ue=F;return}function V_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=a+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;h=0;while(1){if(b){n=Wi[k>>0]|0;i=Wi[c>>0]|0;a=Wi[d>>0]|0;o=Wi[w>>0]|0;s=0;do{f=Zi(Ji[r+(s+-1<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;u=s;s=s+1|0;f=f+(Zi(Ji[r+(s<<1)>>1]|0,a)|0)|0;f=(f+(Zi(Ji[r+(u+2<<1)>>1]|0,o)|0)>>2)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(u<<1)>>1]=f}while((s|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function Y_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;h=16+(f<<2)+3|0;w=E<<1;u=0;while(1){if(b){a=Wi[k>>0]|0;i=Wi[c>>0]|0;n=Wi[d>>0]|0;o=Wi[h>>0]|0;s=0;do{f=Zi(Ji[r+(s-E<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(s+E<<1)>>1]|0,n)|0)|0;f=(f+(Zi(Ji[r+(s+w<<1)>>1]|0,o)|0)>>2)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(t|0))}u=u+1|0;if((u|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function j_(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;y=Ue;Ue=Ue+8576|0;p=y;m=f>>>1;F=i>>>1;f=a+-1|0;v=16+(f<<2)|0;if((l|0)>-3){E=(t|0)>0;S=16+(f<<2)+1|0;_=16+(f<<2)+2|0;c=16+(f<<2)+3|0;d=l+2|0;h=r+(0-m<<1)|0;w=p;b=0;while(1){if(E){i=Wi[v>>0]|0;a=Wi[S>>0]|0;r=Wi[_>>0]|0;o=Wi[c>>0]|0;f=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){O=(Zi(s&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(u&65535,r)|0)|0;f=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(O+(Zi(f&65535,o)|0)|0)>>>2;k=k+1|0;if((k|0)==(t|0))break;else{A=u;O=s;u=f;s=A;f=O}}}if((b|0)<(d|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;s=p+128|0;h=0;while(1){if(b){i=Wi[k>>0]|0;a=Wi[c>>0]|0;r=Wi[d>>0]|0;o=Wi[w>>0]|0;u=0;do{f=Zi(Gi[s+(u+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[s+(u<<1)>>1]|0,a)|0)+f|0;f=f+(Zi(Gi[s+(u+64<<1)>>1]|0,r)|0)|0;f=(f+(Zi(Gi[s+(u+128<<1)>>1]|0,o)|0)>>6)+8>>4;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(F<<1)|0;s=s+128|0}}}}Ue=y;return}function K_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=o+-1|0;S=16+(f<<2)|0;_=a+4|0;E=1<<a+3;d=t<<2;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(v){s=Wi[S>>0]|0;i=Wi[b>>0]|0;o=Wi[c>>0]|0;a=Wi[k>>0]|0;t=0;do{f=Zi(Ji[r+(t+-1<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;h=t;t=t+1|0;f=f+(Zi(Ji[r+(t<<1)>>1]|0,o)|0)|0;f=((Zi(f+(Zi(Ji[r+(h+2<<1)>>1]|0,a)|0)>>2,n)|0)+E>>_)+d|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(h<<1)>>1]=f}while((t|0)!=(u|0))}w=w+1|0;if((w|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function W_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=s+-1|0;S=16+(f<<2)|0;_=a+4|0;E=1<<a+3;d=t<<2;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=p<<1;h=0;while(1){if(v){o=Wi[S>>0]|0;i=Wi[b>>0]|0;s=Wi[c>>0]|0;a=Wi[w>>0]|0;t=0;do{f=Zi(Ji[r+(t-p<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(t+p<<1)>>1]|0,s)|0)|0;f=((Zi(f+(Zi(Ji[r+(t+k<<1)>>1]|0,a)|0)>>2,n)|0)+E>>_)+d|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(u|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function G_(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;M=Ue;Ue=Ue+8576|0;y=M;F=f>>>1;g=i>>>1;f=o+-1|0;p=16+(f<<2)|0;A=a+4|0;O=1<<a+3;if((l|0)>-3){S=(u|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;v=16+(f<<2)+3|0;E=l+2|0;k=r+(0-F<<1)|0;b=y;d=0;while(1){if(S){i=Wi[p>>0]|0;o=Wi[_>>0]|0;a=Wi[m>>0]|0;r=Wi[v>>0]|0;f=Gi[k+-2>>1]|0;h=Gi[k>>1]|0;w=Gi[k+2>>1]|0;c=0;while(1){R=(Zi(h&65535,o)|0)+(Zi(f&65535,i)|0)+(Zi(w&65535,a)|0)|0;f=Gi[k+(c+2<<1)>>1]|0;Gi[b+(c<<1)>>1]=(R+(Zi(f&65535,r)|0)|0)>>>2;c=c+1|0;if((c|0)==(u|0))break;else{T=w;R=h;w=f;h=T;f=R}}}if((d|0)<(E|0)){k=k+(F<<1)|0;b=b+128|0;d=d+1|0}else break}f=s+-1|0;S=16+(f<<2)|0;c=t<<2;if((l|0)>0){d=(u|0)>0;v=16+(f<<2)+1|0;E=16+(f<<2)+2|0;b=16+(f<<2)+3|0;h=y+128|0;k=0;while(1){if(d){i=Wi[S>>0]|0;o=Wi[v>>0]|0;a=Wi[E>>0]|0;r=Wi[b>>0]|0;w=0;do{f=Zi(Gi[h+(w+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[h+(w<<1)>>1]|0,o)|0)+f|0;f=f+(Zi(Gi[h+(w+64<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[h+(w+128<<1)>>1]|0,r)|0)>>6,n)|0)+O>>A)+c|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(u|0))}k=k+1|0;if((k|0)==(l|0))break;else{e=e+(g<<1)|0;h=h+128|0}}}}Ue=M;return}function X_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;E=i>>>1;f=n+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(c){t=Wi[b>>0]|0;i=Wi[d>>0]|0;n=Wi[v>>0]|0;s=Wi[k>>0]|0;u=0;do{f=Zi(Ji[r+(u+-1<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,i)|0)+f|0;h=u;u=u+1|0;f=f+(Zi(Ji[r+(u<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(h+2<<1)>>1]|0,s)|0)>>2;f=(Gi[l+(h<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(h<<1)>>1]=f}while((u|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(E<<1)|0;r=r+(S<<1)|0}}}return}function q_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;f=t+-1|0;E=16+(f<<2)|0;b=i>>>1;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=S<<1;h=0;while(1){if(c){n=Wi[E>>0]|0;t=Wi[d>>0]|0;i=Wi[v>>0]|0;s=Wi[w>>0]|0;u=0;do{f=Zi(Ji[r+(u-S<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,t)|0)+f|0;f=f+(Zi(Ji[r+(u+S<<1)>>1]|0,i)|0)|0;f=f+(Zi(Ji[r+(u+k<<1)>>1]|0,s)|0)>>2;f=(Gi[l+(u<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(o|0))}h=h+1|0;if((h|0)==(a|0))break;else{l=l+128|0;e=e+(b<<1)|0;r=r+(S<<1)|0}}}return}function J_(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;O=Ue;Ue=Ue+8576|0;F=O;p=f>>>1;y=i>>>1;f=n+-1|0;E=16+(f<<2)|0;if((a|0)>-3){S=(o|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=a+2|0;w=r+(0-p<<1)|0;k=F;c=0;while(1){if(S){i=Wi[E>>0]|0;n=Wi[_>>0]|0;r=Wi[m>>0]|0;s=Wi[d>>0]|0;f=Gi[w+-2>>1]|0;u=Gi[w>>1]|0;h=Gi[w+2>>1]|0;b=0;while(1){A=(Zi(u&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(h&65535,r)|0)|0;f=Gi[w+(b+2<<1)>>1]|0;Gi[k+(b<<1)>>1]=(A+(Zi(f&65535,s)|0)|0)>>>2;b=b+1|0;if((b|0)==(o|0))break;else{g=h;A=u;h=f;u=g;f=A}}}if((c|0)<(v|0)){w=w+(p<<1)|0;k=k+128|0;c=c+1|0}else break}f=t+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;u=F+128|0;w=0;while(1){if(c){i=Wi[b>>0]|0;n=Wi[d>>0]|0;r=Wi[v>>0]|0;s=Wi[k>>0]|0;h=0;do{f=Zi(Gi[u+(h+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[u+(h<<1)>>1]|0,n)|0)+f|0;f=f+(Zi(Gi[u+(h+64<<1)>>1]|0,r)|0)|0;f=f+(Zi(Gi[u+(h+128<<1)>>1]|0,s)|0)>>6;f=(Gi[l+(h<<1)>>1]|0)+16+f>>5;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(h<<1)>>1]=f;h=h+1|0}while((h|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(y<<1)|0;u=u+128|0}}}}Ue=O;return}function Z_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>>1;p=i>>>1;f=h+-1|0;v=16+(f<<2)|0;E=n+5|0;if((a|0)>0){S=(k|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;c=(u+s<<2|1)<<n+4;s=r;b=0;while(1){if(S){w=Wi[v>>0]|0;i=Wi[_>>0]|0;h=Wi[m>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u+-1<<1)>>1]|0,w)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,i)|0)+f|0;r=u;u=u+1|0;f=f+(Zi(Ji[s+(u<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Ji[s+(r+2<<1)>>1]|0,n)|0)>>2,o)|0;f=(Zi(Gi[l+(r<<1)>>1]|0,t)|0)+c+f>>E;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(r<<1)>>1]=f}while((u|0)!=(k|0))}b=b+1|0;if((b|0)==(a|0))break;else{l=l+128|0;e=e+(p<<1)|0;s=s+(F<<1)|0}}}return}function Q_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=f>>>1;f=w+-1|0;F=16+(f<<2)|0;E=i>>>1;S=n+5|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=y<<1;c=(u+s<<2|1)<<n+4;b=e;s=r;e=0;while(1){if(_){h=Wi[F>>0]|0;w=Wi[m>>0]|0;i=Wi[p>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u-y<<1)>>1]|0,h)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,w)|0)+f|0;f=f+(Zi(Ji[s+(u+y<<1)>>1]|0,i)|0)|0;f=Zi(f+(Zi(Ji[s+(u+v<<1)>>1]|0,n)|0)>>2,o)|0;f=(Zi(Gi[l+(u<<1)>>1]|0,t)|0)+c+f>>S;if(f>>>0>=1024)f=0-f>>31&1023;Gi[b+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(k|0))}e=e+1|0;if((e|0)==(a|0))break;else{l=l+128|0;b=b+(E<<1)|0;s=s+(y<<1)|0}}}return}function $_(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;N=Ue;Ue=Ue+8576|0;M=N;A=f>>>1;T=i>>>1;f=h+-1|0;O=16+(f<<2)|0;R=n+5|0;g=n+4|0;if((a|0)>-3){y=(k|0)>0;p=16+(f<<2)+1|0;F=16+(f<<2)+2|0;_=16+(f<<2)+3|0;m=a+2|0;d=r+(0-A<<1)|0;v=M;S=0;while(1){if(y){i=Wi[O>>0]|0;h=Wi[p>>0]|0;n=Wi[F>>0]|0;r=Wi[_>>0]|0;f=Gi[d+-2>>1]|0;b=Gi[d>>1]|0;c=Gi[d+2>>1]|0;E=0;while(1){D=(Zi(b&65535,h)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,n)|0)|0;f=Gi[d+(E+2<<1)>>1]|0;Gi[v+(E<<1)>>1]=(D+(Zi(f&65535,r)|0)|0)>>>2;E=E+1|0;if((E|0)==(k|0))break;else{C=c;D=b;c=f;b=C;f=D}}}if((S|0)<(m|0)){d=d+(A<<1)|0;v=v+128|0;S=S+1|0}else break}f=w+-1|0;S=16+(f<<2)|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;E=16+(f<<2)+3|0;v=(u+s<<2|1)<<g;b=M+128|0;d=0;while(1){if(_){i=Wi[S>>0]|0;h=Wi[m>>0]|0;n=Wi[p>>0]|0;r=Wi[E>>0]|0;c=0;do{f=Zi(Gi[b+(c+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[b+(c<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,n)|0)|0;f=Zi(f+(Zi(Gi[b+(c+128<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(c<<1)>>1]|0,t)|0)+v+f>>R;if(f>>>0>=1024)f=0-f>>31&1023;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(k|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;b=b+128|0}}}}Ue=N;return}function em(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;im(e,i,2,r,f,l,a);return}function im(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0;se=i>>>1;oe=r>>>1;J=f<<2;ee=Zi(se,-3)|0;ie=Zi(se,-2)|0;re=0-se|0;fe=se<<1;le=oe*3|0;ae=le+ee|0;ne=le+ie|0;z=le-se|0;V=le+fe|0;Y=le+se|0;j=J>>3;K=J>>2;W=Zi(se,-4)|0;G=se*3|0;X=le+W|0;q=le+G|0;Z=(J>>1)+J>>3;Q=oe<<2;$=oe<<2;U=oe+ee|0;x=oe+ie|0;N=oe-se|0;D=oe+se|0;C=oe+fe|0;P=oe+G|0;T=oe+ee|0;L=oe+ie|0;I=oe-se|0;H=oe+se|0;B=oe+fe|0;te=0;i=e;do{e=Gi[i+(ee<<1)>>1]|0;t=Gi[i+(ie<<1)>>1]|0;h=Gi[i+(re<<1)>>1]|0;r=h&65535;_=(e&65535)-((t&65535)<<1)+r|0;_=(_|0)>-1?_:0-_|0;b=Gi[i+(fe<<1)>>1]|0;k=Gi[i+(se<<1)>>1]|0;w=Gi[i>>1]|0;f=w&65535;p=(b&65535)-((k&65535)<<1)+f|0;p=(p|0)>-1?p:0-p|0;o=Ji[i+(z<<1)>>1]|0;m=(Ji[i+(ae<<1)>>1]|0)-((Ji[i+(ne<<1)>>1]|0)<<1)+o|0;m=(m|0)>-1?m:0-m|0;s=Ji[i+(le<<1)>>1]|0;F=(Ji[i+(V<<1)>>1]|0)-((Ji[i+(Y<<1)>>1]|0)<<1)+s|0;F=(F|0)>-1?F:0-F|0;u=p+_|0;d=F+m|0;E=Xi[l+(te<<2)>>2]|0;R=E<<2;S=Wi[a+te>>0]|0;y=Wi[n+te>>0]|0;do{if((d+u|0)<(J|0)){v=E*20>>1;M=(Ji[i+(W<<1)>>1]|0)-r|0;c=Gi[i+(G<<1)>>1]|0;g=(c&65535)-f|0;if((((((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)?(M=r-f|0,(((M|0)>-1?M:0-M|0)|0)<(v|0)):0)?(M=(Ji[i+(X<<1)>>1]|0)-o|0,g=(Ji[i+(q<<1)>>1]|0)-s|0,(((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)):0)?(M=o-s|0,((u<<1|0)<(K|0)?(((M|0)>-1?M:0-M|0)|0)<(v|0):0)&(d<<1|0)<(K|0)):0){_=E<<3;E=S<<24>>24==0;S=0-_|0;v=y<<24>>24==0;u=0;d=i;while(1){s=e&65535;o=t&65535;t=h&65535;e=w&65535;f=k&65535;r=b&65535;if(E){R=Ji[d+(W<<1)>>1]|0;M=((s+4+f+(t+o+e<<1)|0)>>>3)-t|0;Gi[d+(re<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+t;M=((s+2+o+t+e|0)>>>2)-o|0;Gi[d+(ie<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+o;R=((s*3|0)+4+o+t+e+(R<<1)>>3)-s|0;Gi[d+(ee<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+s}if(v){R=((o+4+r+(e+t+f<<1)|0)>>>3)-e|0;Gi[d>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+e;R=((t+2+e+f+r|0)>>>2)-f|0;Gi[d+(se<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+f;R=((t+4+e+f+(r*3|0)+((c&65535)<<1)|0)>>>3)-r|0;Gi[d+(fe<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+r}f=d+(oe<<1)|0;r=u+1|0;if((r|0)==4)break;e=Gi[d+(U<<1)>>1]|0;t=Gi[d+(x<<1)>>1]|0;h=Gi[d+(N<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[d+(D<<1)>>1]|0;b=Gi[d+(C<<1)>>1]|0;c=Gi[d+(P<<1)>>1]|0;u=r;d=f}i=i+($<<1)|0;break}M=R>>1;A=E*40|0;g=0-R|0;O=S<<24>>24==0;y=y<<24>>24==0;m=O&(m+_|0)<(Z|0);_=0-M|0;S=y&(F+p|0)<(Z|0);v=0;E=i;while(1){c=e&65535;d=E+(ie<<1)|0;u=t&65535;e=E+(re<<1)|0;o=h&65535;h=w&65535;w=E+(se<<1)|0;s=k&65535;t=b&65535;r=((h-o|0)*9|0)+8+(Zi(s-u|0,-3)|0)>>4;if((((r|0)>-1?r:0-r|0)|0)<(A|0)){f=(r|0)<(g|0)?g:(r|0)>(R|0)?R:r;if(O){r=f+o|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r}if(y){r=h-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[E>>1]=r}if(m){r=((c+1+o|0)>>>1)-u+f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+u|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[d>>1]=r}if(S){r=((h+1+t|0)>>>1)-s-f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+s|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[w>>1]=r}}f=E+(oe<<1)|0;r=v+1|0;if((r|0)==4)break;e=Gi[E+(T<<1)>>1]|0;t=Gi[E+(L<<1)>>1]|0;h=Gi[E+(I<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[E+(H<<1)>>1]|0;b=Gi[E+(B<<1)>>1]|0;v=r;E=f}i=i+($<<1)|0}else i=i+(Q<<1)|0}while(0);te=te+1|0}while((te|0)!=2);return}function rm(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;im(e,2,i,r,f,l,a);return}function fm(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;lm(e,i,2,r,f,l);return}function lm(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=i>>>1;c=r>>>1;d=Zi(S,-2)|0;v=0-S|0;b=c<<2;E=0;while(1){h=Xi[f+(E<<2)>>2]<<2;if((h|0)>=1){o=0-h|0;s=(Wi[l+E>>0]|0)==0;u=(Wi[a+E>>0]|0)==0;w=0;k=e;while(1){n=k+(v<<1)|0;i=Ji[n>>1]|0;t=Ji[k>>1]|0;r=(Ji[k+(d<<1)>>1]|0)+4-(Ji[k+(S<<1)>>1]|0)+(t-i<<2)>>3;r=(r|0)<(o|0)?o:(r|0)>(h|0)?h:r;if(s){i=r+i|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[n>>1]=i}if(u){i=t-r|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[k>>1]=i}w=w+1|0;if((w|0)==4)break;else k=k+(c<<1)|0}}E=E+1|0;if((E|0)==2)break;else e=e+(b<<1)|0}return}function am(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;lm(e,2,i,r,f,l);return}function nm(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;u=i>>>1;if((f|0)>0){h=(r|0)>0;w=l+8|0;k=l+16|0;b=32-a|0;c=12-a|0;s=0;while(1){if(h){i=Xi[k>>2]|0;n=Xi[l>>2]|0;t=Xi[w>>2]|0;o=0;do{d=n+(t>>>3)|0;d=(ZT(qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24|0)|0)<<(t&7)>>>b;v=t+a|0;t=i>>>0>v>>>0?v:i;Xi[w>>2]=t;Gi[e+(o<<1)>>1]=d<<c;o=o+1|0}while((o|0)!=(r|0))}s=s+1|0;if((s|0)==(f|0))break;else e=e+(u<<1)|0}}return}function tm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=r;a=a+1|0;if((a|0)==4)break;else f=f+2|0}n=n+1|0;if((n|0)==4)break;else{i=i+8|0;e=e+(t<<1)|0}}return}function om(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=r;a=a+1|0;if((a|0)==8)break;else f=f+2|0}n=n+1|0;if((n|0)==8)break;else{i=i+16|0;e=e+(t<<1)|0}}return}function sm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=r;a=a+1|0;if((a|0)==16)break;else f=f+2|0}n=n+1|0;if((n|0)==16)break;else{i=i+32|0;e=e+(t<<1)|0}}return}function um(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=r>>>1;n=0;while(1){f=i;a=0;while(1){l=e+(a<<1)|0;r=(Gi[f>>1]|0)+(Ji[l>>1]|0)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l>>1]=r;a=a+1|0;if((a|0)==32)break;else f=f+2|0}n=n+1|0;if((n|0)==32)break;else{i=i+64|0;e=e+(t<<1)|0}}return}function hm(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=i<<16>>16;a=3-t|0;t=1<<t;if((a|0)>0){n=1<<a+-1;if(i<<16>>16!=31){l=(t|0)>1?t:1;f=0;while(1){i=e;r=0;while(1){Gi[i>>1]=(Gi[i>>1]|0)+n>>a;r=r+1|0;if((r|0)>=(t|0))break;else i=i+2|0}f=f+1|0;if((f|0)>=(t|0))break;else e=e+(l<<1)|0}}}else if(i<<16>>16!=31){l=0-a|0;a=(t|0)>1?t:1;i=e;f=0;while(1){e=i;r=0;while(1){Gi[e>>1]=Gi[e>>1]<<l;r=r+1|0;if((r|0)>=(t|0))break;else e=e+2|0}f=f+1|0;if((f|0)>=(t|0))break;else i=i+(a<<1)|0}}return}function wm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=1<<(i<<16>>16);if(!r){if(i<<16>>16!=31){l=(a|0)>1;r=e;f=0;while(1){if(l){i=Gi[r>>1]|0;e=1;do{n=r+(e<<1)|0;i=(Ji[n>>1]|0)+(i&65535)&65535;Gi[n>>1]=i;e=e+1|0}while((e|0)!=(a|0))}f=f+1|0;if((f|0)>=(a|0))break;else r=r+(a<<1)|0}}}else if((a|0)>1){f=i<<16>>16==31;l=a+-1|0;i=e;e=0;do{if(!f){r=0;do{n=i+(r+a<<1)|0;Gi[n>>1]=(Ji[n>>1]|0)+(Ji[i+(r<<1)>>1]|0);r=r+1|0}while((r|0)!=(a|0))}i=i+(a<<1)|0;e=e+1|0}while((e|0)!=(l|0))}return}function km(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=0;r=e;while(1){w=Gi[r>>1]|0;u=r+16|0;o=Gi[u>>1]|0;n=o+w|0;f=r+24|0;h=Gi[f>>1]|0;s=h+o|0;l=w-h|0;t=r+8|0;a=(Gi[t>>1]|0)*74|0;h=((w-o+h|0)*74|0)+64|0;o=h>>7;Gi[u>>1]=(o+32768|0)>>>0>65535?h>>31^32767:o;u=(n*29|0)+64+(s*55|0)+a|0;o=u>>7;Gi[r>>1]=(o+32768|0)>>>0>65535?u>>31^32767:o;s=(Zi(s,-29)|0)+64+(l*55|0)+a|0;o=s>>7;Gi[t>>1]=(o+32768|0)>>>0>65535?s>>31^32767:o;a=(n*55|0)+64+(l*29|0)-a|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){f=Gi[e>>1]|0;a=e+4|0;t=Gi[a>>1]|0;s=t+f|0;w=e+6|0;l=Gi[w>>1]|0;n=l+t|0;h=f-l|0;o=e+2|0;u=(Gi[o>>1]|0)*74|0;l=((f-t+l|0)*74|0)+128|0;t=l>>8;Gi[a>>1]=(t+32768|0)>>>0>65535?l>>31^32767:t;a=(s*29|0)+128+(n*55|0)+u|0;t=a>>8;Gi[e>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=(Zi(n,-29)|0)+128+(h*55|0)+u|0;t=n>>8;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;u=(s*55|0)+128+(h*29|0)-u|0;h=u>>8;Gi[w>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function bm(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;i=0;r=e;while(1){s=Gi[r>>1]<<6;n=r+16|0;t=Gi[n>>1]<<6;l=t+s|0;t=s-t|0;s=r+8|0;u=Gi[s>>1]|0;f=r+24|0;o=Gi[f>>1]|0;a=(o*36|0)+(u*83|0)|0;o=(u*36|0)+(Zi(o,-83)|0)|0;u=l+64+a|0;h=u>>7;Gi[r>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;h=t+64+o|0;u=h>>7;Gi[s>>1]=(u+32768|0)>>>0>65535?h>>31^32767:u;o=t-o+64|0;t=o>>7;Gi[n>>1]=(t+32768|0)>>>0>65535?o>>31^32767:t;a=l-a+64|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){a=Gi[e>>1]<<6;o=e+4|0;t=Gi[o>>1]<<6;u=t+a|0;t=a-t|0;a=e+2|0;l=Gi[a>>1]|0;h=e+6|0;n=Gi[h>>1]|0;s=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=u+128+s|0;f=l>>8;Gi[e>>1]=(f+32768|0)>>>0>65535?l>>31^32767:f;f=t+128+n|0;l=f>>8;Gi[a>>1]=(l+32768|0)>>>0>65535?f>>31^32767:l;n=t-n+128|0;t=n>>8;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;s=u-s+128|0;u=s>>8;Gi[h>>1]=(u+32768|0)>>>0>65535?s>>31^32767:u;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function cm(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+64|0;w=E+48|0;b=E+32|0;d=E+16|0;v=E;o=(i|0)>8;r=i+4|0;s=w+4|0;u=w+8|0;h=w+12|0;k=0;r=(r|0)>8?8:r;c=e;while(1){Xi[b>>2]=0;Xi[b+4>>2]=0;Xi[b+8>>2]=0;Xi[b+12>>2]=0;a=(r|0)>1;t=0;do{if(a){n=b+(t<<2)|0;f=Xi[n>>2]|0;l=1;do{f=(Zi(Gi[c+(l<<3<<1)>>1]|0,Wi[128076+(l<<2<<5)+t>>0]|0)|0)+f|0;l=l+2|0}while((l|0)<(r|0));Xi[n>>2]=f}t=t+1|0}while((t|0)!=4);l=Gi[c>>1]<<6;a=Gi[c+64>>1]<<6;t=a+l|0;a=l-a|0;l=Gi[c+32>>1]|0;n=Gi[c+96>>1]|0;f=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=f+t|0;Xi[w>>2]=l;Xi[s>>2]=n+a;Xi[u>>2]=a-n;Xi[h>>2]=t-f;f=0;while(1){n=Xi[b+(f<<2)>>2]|0;a=l+64+n|0;t=a>>7;Gi[c+(f<<3<<1)>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=l-n+64|0;t=n>>7;Gi[c+(7-f<<3<<1)>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;f=f+1|0;if((f|0)==4)break;l=Xi[w+(f<<2)>>2]|0}if((r|0)<8)r=(k|0)!=0&(k&3|0)==0?r+-4|0:r;k=k+1|0;if((k|0)==8)break;else c=c+2|0}s=o?8:i;u=(s|0)>1;h=d+4|0;t=d+8|0;o=d+12|0;n=0;while(1){Xi[v>>2]=0;Xi[v+4>>2]=0;Xi[v+8>>2]=0;Xi[v+12>>2]=0;a=0;do{if(u){l=v+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[e+(f<<1)>>1]|0,Wi[128076+(f<<2<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=4);f=Gi[e>>1]<<6;k=Gi[e+8>>1]<<6;c=k+f|0;k=f-k|0;f=Gi[e+4>>1]|0;b=Gi[e+12>>1]|0;r=(b*36|0)+(f*83|0)|0;b=(f*36|0)+(Zi(b,-83)|0)|0;f=r+c|0;Xi[d>>2]=f;Xi[h>>2]=b+k;Xi[t>>2]=k-b;Xi[o>>2]=c-r;r=0;while(1){b=Xi[v+(r<<2)>>2]|0;k=f+128+b|0;c=k>>8;Gi[e+(r<<1)>>1]=(c+32768|0)>>>0>65535?k>>31^32767:c;b=f-b+128|0;c=b>>8;Gi[e+(7-r<<1)>>1]=(c+32768|0)>>>0>65535?b>>31^32767:c;r=r+1|0;if((r|0)==4)break;f=Xi[d+(r<<2)>>2]|0}n=n+1|0;if((n|0)==8)break;else e=e+16|0}Ue=E;return}function dm(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;D=Ue;Ue=Ue+192|0;E=D+160|0;_=D+128|0;g=D+112|0;m=D+96|0;M=D+64|0;R=D+32|0;N=D+16|0;T=D;F=(i|0)>16;n=i+4|0;y=g+4|0;O=g+8|0;A=g+12|0;c=E+28|0;d=m+4|0;v=E+4|0;o=E+24|0;s=m+8|0;u=E+8|0;h=E+20|0;w=m+12|0;k=E+12|0;b=E+16|0;S=0;n=(n|0)>16?16:n;p=e;while(1){Xi[_>>2]=0;Xi[_+4>>2]=0;Xi[_+8>>2]=0;Xi[_+12>>2]=0;Xi[_+16>>2]=0;Xi[_+20>>2]=0;Xi[_+24>>2]=0;Xi[_+28>>2]=0;l=(n|0)>1;t=0;do{if(l){a=_+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[p+(f<<4<<1)>>1]|0,Wi[128076+(f<<1<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=8);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;r=Gi[p+64>>1]|0;f=Gi[p+192>>1]|0;l=Gi[p+320>>1]|0;a=Gi[p+448>>1]|0;t=0;do{C=m+(t<<2)|0;P=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[C>>2]|0)|0;P=(Zi(f,Wi[128460+t>>0]|0)|0)+P|0;P=(Zi(l,Wi[128716+t>>0]|0)|0)+P|0;Xi[C>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+P;t=t+1|0}while((t|0)!=4);a=Gi[p>>1]<<6;P=Gi[p+256>>1]<<6;t=P+a|0;P=a-P|0;a=Gi[p+128>>1]|0;f=Gi[p+384>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+P|0;f=P-f|0;r=t-r|0;t=Xi[m>>2]|0;Xi[E>>2]=t+a;Xi[c>>2]=a-t;t=Xi[d>>2]|0;Xi[v>>2]=t+l;Xi[o>>2]=l-t;t=Xi[s>>2]|0;Xi[u>>2]=t+f;Xi[h>>2]=f-t;t=Xi[w>>2]|0;Xi[k>>2]=t+r;Xi[b>>2]=r-t;t=0;do{P=Xi[E+(t<<2)>>2]|0;C=Xi[_+(t<<2)>>2]|0;I=P+64+C|0;L=I>>7;Gi[p+(t<<4<<1)>>1]=(L+32768|0)>>>0>65535?I>>31^32767:L;C=P-C+64|0;P=C>>7;Gi[p+(15-t<<4<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;t=t+1|0}while((t|0)!=8);if((n|0)<16)n=(S|0)!=0&(S&3|0)==0?n+-4|0:n;S=S+1|0;if((S|0)==16)break;else p=p+2|0}Xi[g>>2]=a;Xi[y>>2]=l;Xi[O>>2]=f;Xi[A>>2]=r;s=F?16:i;u=(s|0)>1;m=N+4|0;p=N+8|0;F=N+12|0;h=M+28|0;w=T+4|0;k=M+4|0;b=M+24|0;c=T+8|0;d=M+8|0;v=M+20|0;E=T+12|0;S=M+12|0;_=M+16|0;t=e;o=0;while(1){Xi[R>>2]=0;Xi[R+4>>2]=0;Xi[R+8>>2]=0;Xi[R+12>>2]=0;Xi[R+16>>2]=0;Xi[R+20>>2]=0;Xi[R+24>>2]=0;Xi[R+28>>2]=0;a=0;do{if(u){l=R+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<1<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[T>>2]=0;Xi[T+4>>2]=0;Xi[T+8>>2]=0;Xi[T+12>>2]=0;r=Gi[t+4>>1]|0;f=Gi[t+12>>1]|0;l=Gi[t+20>>1]|0;a=Gi[t+28>>1]|0;n=0;do{I=T+(n<<2)|0;L=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[I>>2]|0)|0;L=(Zi(f,Wi[128460+n>>0]|0)|0)+L|0;L=(Zi(l,Wi[128716+n>>0]|0)|0)+L|0;Xi[I>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+L;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;I=Gi[t+16>>1]<<6;n=I+a|0;I=a-I|0;a=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+I|0;f=I-f|0;r=n-r|0;n=Xi[T>>2]|0;Xi[M>>2]=n+a;Xi[h>>2]=a-n;n=Xi[w>>2]|0;Xi[k>>2]=n+l;Xi[b>>2]=l-n;n=Xi[c>>2]|0;Xi[d>>2]=n+f;Xi[v>>2]=f-n;n=Xi[E>>2]|0;Xi[S>>2]=n+r;Xi[_>>2]=r-n;n=0;do{I=Xi[M+(n<<2)>>2]|0;L=Xi[R+(n<<2)>>2]|0;C=I+128+L|0;P=C>>8;Gi[t+(n<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;L=I-L+128|0;I=L>>8;Gi[t+(15-n<<1)>>1]=(I+32768|0)>>>0>65535?L>>31^32767:I;n=n+1|0}while((n|0)!=8);o=o+1|0;if((o|0)==16)break;else t=t+32|0}Xi[N>>2]=a;Xi[m>>2]=l;Xi[p>>2]=f;Xi[F>>2]=r;Ue=D;return}function vm(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;L=Ue;Ue=Ue+320|0;T=L+256|0;D=L+192|0;S=L+160|0;m=L+128|0;M=L+112|0;p=L+96|0;R=L+64|0;N=L+32|0;P=L+16|0;C=L;y=(i|0)>32;n=i+4|0;O=M+4|0;A=M+8|0;g=M+12|0;d=S+28|0;v=p+4|0;E=S+4|0;s=S+24|0;u=p+8|0;h=S+8|0;w=S+20|0;k=p+12|0;b=S+12|0;c=S+16|0;_=0;n=(n|0)>32?32:n;F=e;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));l=(n|0)>1;t=0;do{if(l){a=D+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<5<<1)>>1]|0,Wi[128076+(f<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=16);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;Xi[m+16>>2]=0;Xi[m+20>>2]=0;Xi[m+24>>2]=0;Xi[m+28>>2]=0;l=(n|0)/2|0;a=(n|0)>3;o=0;do{if(a){t=m+(o<<2)|0;r=Xi[t>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<6<<1)>>1]|0,Wi[128076+(f<<1<<5)+o>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(l|0));Xi[t>>2]=r}o=o+1|0}while((o|0)!=8);Xi[p>>2]=0;Xi[p+4>>2]=0;Xi[p+8>>2]=0;Xi[p+12>>2]=0;r=Gi[F+256>>1]|0;f=Gi[F+768>>1]|0;l=Gi[F+1280>>1]|0;a=Gi[F+1792>>1]|0;t=0;do{o=p+(t<<2)|0;I=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[o>>2]|0)|0;I=(Zi(f,Wi[128460+t>>0]|0)|0)+I|0;I=(Zi(l,Wi[128716+t>>0]|0)|0)+I|0;Xi[o>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+I;t=t+1|0}while((t|0)!=4);a=Gi[F>>1]<<6;I=Gi[F+1024>>1]<<6;t=I+a|0;I=a-I|0;a=Gi[F+512>>1]|0;f=Gi[F+1536>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+I|0;f=I-f|0;r=t-r|0;t=Xi[p>>2]|0;Xi[S>>2]=t+a;Xi[d>>2]=a-t;t=Xi[v>>2]|0;Xi[E>>2]=t+l;Xi[s>>2]=l-t;t=Xi[u>>2]|0;Xi[h>>2]=t+f;Xi[w>>2]=f-t;t=Xi[k>>2]|0;Xi[b>>2]=t+r;Xi[c>>2]=r-t;t=0;do{o=Xi[S+(t<<2)>>2]|0;I=Xi[m+(t<<2)>>2]|0;Xi[T+(t<<2)>>2]=I+o;Xi[T+(15-t<<2)>>2]=o-I;t=t+1|0}while((t|0)!=8);t=0;do{I=Xi[T+(t<<2)>>2]|0;o=Xi[D+(t<<2)>>2]|0;B=I+64+o|0;H=B>>7;Gi[F+(t<<5<<1)>>1]=(H+32768|0)>>>0>65535?B>>31^32767:H;o=I-o+64|0;I=o>>7;Gi[F+(31-t<<5<<1)>>1]=(I+32768|0)>>>0>65535?o>>31^32767:I;t=t+1|0}while((t|0)!=16);if((n|0)<32)n=(_|0)!=0&(_&3|0)==0?n+-4|0:n;_=_+1|0;if((_|0)==32)break;else F=F+2|0}Xi[M>>2]=a;Xi[O>>2]=l;Xi[A>>2]=f;Xi[g>>2]=r;s=y?32:i;u=(s|0)>1;h=(s|0)/2|0;w=(s|0)>3;F=P+4|0;y=P+8|0;O=P+12|0;k=R+28|0;b=C+4|0;c=R+4|0;d=R+24|0;v=C+8|0;E=R+8|0;S=R+20|0;_=C+12|0;m=R+12|0;p=R+16|0;t=e;o=0;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));a=0;do{if(u){l=D+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=16);Xi[N>>2]=0;Xi[N+4>>2]=0;Xi[N+8>>2]=0;Xi[N+12>>2]=0;Xi[N+16>>2]=0;Xi[N+20>>2]=0;Xi[N+24>>2]=0;Xi[N+28>>2]=0;a=0;do{if(w){l=N+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{B=f<<1;r=(Zi(Gi[t+(B<<1)>>1]|0,Wi[128076+(B<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(h|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[C>>2]=0;Xi[C+4>>2]=0;Xi[C+8>>2]=0;Xi[C+12>>2]=0;r=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;l=Gi[t+40>>1]|0;a=Gi[t+56>>1]|0;n=0;do{B=C+(n<<2)|0;H=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[B>>2]|0)|0;H=(Zi(f,Wi[128460+n>>0]|0)|0)+H|0;H=(Zi(l,Wi[128716+n>>0]|0)|0)+H|0;Xi[B>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+H;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;B=Gi[t+32>>1]<<6;n=B+a|0;B=a-B|0;a=Gi[t+16>>1]|0;f=Gi[t+48>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+B|0;f=B-f|0;r=n-r|0;n=Xi[C>>2]|0;Xi[R>>2]=n+a;Xi[k>>2]=a-n;n=Xi[b>>2]|0;Xi[c>>2]=n+l;Xi[d>>2]=l-n;n=Xi[v>>2]|0;Xi[E>>2]=n+f;Xi[S>>2]=f-n;n=Xi[_>>2]|0;Xi[m>>2]=n+r;Xi[p>>2]=r-n;n=0;do{H=Xi[R+(n<<2)>>2]|0;B=Xi[N+(n<<2)>>2]|0;Xi[T+(n<<2)>>2]=B+H;Xi[T+(15-n<<2)>>2]=H-B;n=n+1|0}while((n|0)!=8);n=0;do{B=Xi[T+(n<<2)>>2]|0;H=Xi[D+(n<<2)>>2]|0;e=B+128+H|0;I=e>>8;Gi[t+(n<<1)>>1]=(I+32768|0)>>>0>65535?e>>31^32767:I;H=B-H+128|0;B=H>>8;Gi[t+(31-n<<1)>>1]=(B+32768|0)>>>0>65535?H>>31^32767:B;n=n+1|0}while((n|0)!=16);o=o+1|0;if((o|0)==32)break;else t=t+64|0}Xi[P>>2]=a;Xi[F>>2]=l;Xi[y>>2]=f;Xi[O>>2]=r;Ue=L;return}function Em(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+2|0)>>>2&65535;r=0;do{f=r<<2;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;r=r+1|0}while((r|0)!=4);return}function Sm(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+2|0)>>>2&65535;r=0;do{f=r<<3;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;Gi[e+((f|4)<<1)>>1]=i;Gi[e+((f|5)<<1)>>1]=i;Gi[e+((f|6)<<1)>>1]=i;Gi[e+((f|7)<<1)>>1]=i;r=r+1|0}while((r|0)!=8);return}function _m(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+2|0)>>>2&65535;l=0;do{r=l<<4;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=16);l=l+1|0}while((l|0)!=16);return}function mm(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+2|0)>>>2&65535;l=0;do{r=l<<5;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=32);l=l+1|0}while((l|0)!=32);return}function pm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+128|0;w=k;o=w;s=o+128|0;do{Xi[o>>2]=0;o=o+4|0}while((o|0)<(s|0));h=r>>>1;Xi[w+((a&31)<<2)>>2]=Gi[l+2>>1];Xi[w+((a+1&31)<<2)>>2]=Gi[l+4>>1];Xi[w+((a+2&31)<<2)>>2]=Gi[l+6>>1];Xi[w+((a+3&31)<<2)>>2]=Gi[l+8>>1];f=f>>>1;if((t|0)>0){u=(n|0)>0;l=e;o=i;a=0;while(1){if(u){s=0;do{r=Ji[o+(s<<1)>>1]|0;r=r+(Xi[w+(r>>>7<<2)>>2]|0)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[l+(s<<1)>>1]=r;s=s+1|0}while((s|0)!=(n|0))}a=a+1|0;if((a|0)==(t|0))break;else{l=l+(h<<1)|0;o=o+(f<<1)|0}}}Ue=k;return}function Fm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0;u=r>>>1;h=((Wi[129100+(l<<2)+1>>0]|0)*80|0)+(Wi[129100+(l<<2)>>0]|0)|0;o=((Wi[129100+(l<<2)+3>>0]|0)*80|0)+(Wi[129100+(l<<2)+2>>0]|0)|0;if((n|0)>0){s=(a|0)>0;t=0;while(1){if(s){l=0;do{r=Gi[i+(l<<1)>>1]|0;k=Gi[i+(h+l<<1)>>1]|0;w=Gi[i+(o+l<<1)>>1]|0;r=(Gi[f+(qi[129116+((((r&65535)<(k&65535))<<31>>31)+2+((r&65535)>(k&65535)&1)+(((r&65535)<(w&65535))<<31>>31)+((r&65535)>(w&65535)&1))>>0]<<1)>>1]|0)+(r&65535)|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e+(l<<1)>>1]=r;l=l+1|0}while((l|0)!=(a|0))}t=t+1|0;if((t|0)==(n|0))break;else{e=e+(u<<1)|0;i=i+160|0}}}return}function ym(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=l+112+(o*10|0)|0;l=Xi[l+100+(o<<2)>>2]|0;w=r>>>1;r=f>>>1;if((l|0)!=1){if(Xi[a>>2]|0){u=Gi[k>>1]|0;if((t|0)>0){s=0;do{h=(Ji[i+((Zi(s,r)|0)<<1)>>1]|0)+u|0;if(h>>>0>=4096)h=0-h>>31&4095;Gi[e+((Zi(s,w)|0)<<1)>>1]=h;s=s+1|0}while((s|0)!=(t|0));h=1}else h=1}else h=0;if(Xi[a+8>>2]|0){o=Gi[k>>1]|0;n=n+-1|0;if((t|0)>0){s=0;do{u=(Ji[i+((Zi(s,r)|0)+n<<1)>>1]|0)+o|0;if(u>>>0>=4096)u=0-u>>31&4095;Gi[e+((Zi(s,w)|0)+n<<1)>>1]=u;s=s+1|0}while((s|0)!=(t|0))}}if(l|0){s=n;b=13}}else{h=0;s=n;b=13}if((b|0)==13){if(Xi[a+4>>2]|0?(c=Gi[k>>1]|0,(h|0)<(s|0)):0){u=h;do{n=(Ji[i+(u<<1)>>1]|0)+c|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(u<<1)>>1]=n;u=u+1|0}while((u|0)!=(s|0))}if(Xi[a+12>>2]|0?(d=Gi[k>>1]|0,E=t+-1|0,v=Zi(E,w)|0,E=Zi(E,r)|0,(h|0)<(s|0)):0)do{n=(Ji[i+(h+E<<1)>>1]|0)+d|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(h+v<<1)>>1]=n;h=h+1|0}while((h|0)!=(s|0))}return}function Om(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0;b=l+112+(o*10|0)|0;S=Xi[l+100+(o<<2)>>2]|0;P=r>>>1;D=f>>>1;g=(S|0)!=1;if(g){if(Xi[a>>2]|0){l=Gi[b>>1]|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)<<1)>>1]|0)+l|0;if(o>>>0>=4096)o=0-o>>31&4095;Gi[e+((Zi(r,P)|0)<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0));c=1}else c=1}else c=0;if(Xi[a+8>>2]|0){f=Gi[b>>1]|0;l=n+-1|0;if((t|0)>0){r=0;do{o=(Ji[i+((Zi(r,D)|0)+l<<1)>>1]|0)+f|0;if(o>>>0>=4096)o=0-o>>31&4095;Gi[e+((Zi(r,P)|0)+l<<1)>>1]=o;r=r+1|0}while((r|0)!=(t|0))}}else l=n;if(!S){S=0;F=0;r=0;_=0;m=0;v=0;y=h+1|0;p=0;a=h+2|0;b=h+3|0;E=t;n=0;d=l}else{A=c;d=l;O=14}}else{A=0;d=n;O=14}if((O|0)==14){c=Xi[a+4>>2]|0;E=(c|0)==0;if(!E){l=Gi[b>>1]|0;if((A|0)<(d|0)){r=A;do{o=(Ji[i+(r<<1)>>1]|0)+l|0;if(o>>>0>=4096)o=0-o>>31&4095;Gi[e+(r<<1)>>1]=o;r=r+1|0}while((r|0)!=(d|0));O=1}else O=1}else O=0;if(Xi[a+12>>2]|0){b=Gi[b>>1]|0;l=t+-1|0;r=Zi(l,P)|0;f=Zi(l,D)|0;if((A|0)<(d|0)){n=A;do{o=(Ji[i+(n+f<<1)>>1]|0)+b|0;if(o>>>0>=4096)o=0-o>>31&4095;Gi[e+(n+r<<1)>>1]=o;n=n+1|0}while((n|0)!=(d|0));t=l}else t=l}v=(S|0)==2;if(v&(Wi[h>>0]|0)==0)o=(Xi[a>>2]|c|0)==0;else o=0;f=o&1;c=h+1|0;o=(S|0)==3;if(o&(Wi[c>>0]|0)==0&E){l=(Xi[a+8>>2]|0)==0;o=1}else l=0;r=l&1;n=h+2|0;if(v&(Wi[n>>0]|0)==0?(Xi[a+8>>2]|0)==0:0)l=(Xi[a+12>>2]|0)==0;else l=0;l=l&1;b=h+3|0;if(o&(Wi[b>>0]|0)==0?(Xi[a>>2]|0)==0:0){S=(Xi[a+12>>2]|0)==0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}else{S=0;F=f;_=l;m=1;y=c;p=o;a=n;E=t;c=A;n=O}}f=S&1;if(g&(Wi[s>>0]|0)!=0?(M=n+F|0,R=E-f|0,(M|0)<(R|0)):0){o=M;do{Gi[e+((Zi(o,P)|0)<<1)>>1]=Gi[i+((Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(R|0))}if(g&(Wi[s+1>>0]|0)!=0?(T=r+n|0,N=E-_|0,(T|0)<(N|0)):0){l=d+-1|0;o=T;do{Gi[e+(l+(Zi(o,P)|0)<<1)>>1]=Gi[i+(l+(Zi(o,D)|0)<<1)>>1]|0;o=o+1|0}while((o|0)!=(N|0))}if(m&(Wi[u>>0]|0)!=0?(k=c+F|0,C=d-r|0,(k|0)<(C|0)):0)do{Gi[e+(k<<1)>>1]=Gi[i+(k<<1)>>1]|0;k=k+1|0}while((k|0)!=(C|0));if(m&(Wi[u+1>>0]|0)!=0?(w=f+c|0,L=d-_|0,(w|0)<(L|0)):0){o=E+-1|0;k=Zi(o,D)|0;o=Zi(o,P)|0;do{Gi[e+(w+o<<1)>>1]=Gi[i+(w+k<<1)>>1]|0;w=w+1|0}while((w|0)!=(L|0))}if(v&(Wi[h>>0]|0)!=0)Gi[e>>1]=Gi[i>>1]|0;if(p&(Wi[y>>0]|0)!=0){h=d+-1|0;Gi[e+(h<<1)>>1]=Gi[i+(h<<1)>>1]|0}if(v&(Wi[a>>0]|0)!=0){h=E+-1|0;L=d+-1|0;Gi[e+(L+(Zi(h,P)|0)<<1)>>1]=Gi[i+(L+(Zi(h,D)|0)<<1)>>1]|0}if(p&(Wi[b>>0]|0)!=0){h=E+-1|0;Gi[e+((Zi(h,P)|0)<<1)>>1]=Gi[i+((Zi(h,D)|0)<<1)>>1]|0}return}function Am(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0;t=r>>>1;if((f|0)>0){o=(n|0)>0;r=i;a=0;while(1){if(o){l=0;do{Gi[e+(l<<1)>>1]=(Ji[r+(l<<1)>>1]|0)<<2;l=l+1|0}while((l|0)!=(n|0))}a=a+1|0;if((a|0)==(f|0))break;else{e=e+128|0;r=r+(t<<1)|0}}}return}function gm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=r>>>1;r=l+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;c=48+(r<<4)+6|0;b=48+(r<<4)+7|0;k=0;while(1){if(v){r=Wi[d>>0]|0;a=Wi[E>>0]|0;l=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[c>>0]|0;h=Wi[b>>0]|0;w=0;do{O=Zi(Ji[i+(w+-3<<1)>>1]|0,r)|0;O=(Zi(Ji[i+(w+-2<<1)>>1]|0,a)|0)+O|0;O=O+(Zi(Ji[i+(w+-1<<1)>>1]|0,l)|0)|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;y=w;w=w+1|0;O=O+(Zi(Ji[i+(w<<1)>>1]|0,o)|0)|0;O=O+(Zi(Ji[i+(y+2<<1)>>1]|0,s)|0)|0;O=O+(Zi(Ji[i+(y+3<<1)>>1]|0,u)|0)|0;Gi[e+(y<<1)>>1]=(O+(Zi(Ji[i+(y+4<<1)>>1]|0,h)|0)|0)>>>4}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(F<<1)|0}}}return}function Mm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;A=r>>>1;r=a+-1|0;S=48+(r<<4)|0;if((f|0)>0){_=(n|0)>0;m=A*3|0;p=48+(r<<4)+1|0;F=A<<1;y=48+(r<<4)+2|0;O=48+(r<<4)+3|0;d=48+(r<<4)+4|0;v=48+(r<<4)+5|0;E=48+(r<<4)+6|0;b=48+(r<<4)+7|0;c=A<<2;k=0;while(1){if(_){r=Wi[S>>0]|0;l=Wi[p>>0]|0;a=Wi[y>>0]|0;t=Wi[O>>0]|0;o=Wi[d>>0]|0;s=Wi[v>>0]|0;u=Wi[E>>0]|0;h=Wi[b>>0]|0;w=0;do{g=Zi(Ji[i+(w-m<<1)>>1]|0,r)|0;g=(Zi(Ji[i+(w-F<<1)>>1]|0,l)|0)+g|0;g=g+(Zi(Ji[i+(w-A<<1)>>1]|0,a)|0)|0;g=g+(Zi(Ji[i+(w<<1)>>1]|0,t)|0)|0;g=g+(Zi(Ji[i+(w+A<<1)>>1]|0,o)|0)|0;g=g+(Zi(Ji[i+(w+F<<1)>>1]|0,s)|0)|0;g=g+(Zi(Ji[i+(w+m<<1)>>1]|0,u)|0)|0;Gi[e+(w<<1)>>1]=(g+(Zi(Ji[i+(w+c<<1)>>1]|0,h)|0)|0)>>>4;w=w+1|0}while((w|0)!=(n|0))}k=k+1|0;if((k|0)==(f|0))break;else{e=e+128|0;i=i+(A<<1)|0}}}return}function Rm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;L=Ue;Ue=Ue+9088|0;P=L;C=r>>>1;r=l+-1|0;M=48+(r<<4)|0;if((f|0)>-7){R=(n|0)>0;T=48+(r<<4)+1|0;N=48+(r<<4)+2|0;D=48+(r<<4)+3|0;O=48+(r<<4)+4|0;A=48+(r<<4)+5|0;g=48+(r<<4)+6|0;F=48+(r<<4)+7|0;y=f+6|0;S=i+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(R){l=Wi[M>>0]|0;i=Wi[T>>0]|0;t=Wi[N>>0]|0;o=Wi[D>>0]|0;s=Wi[O>>0]|0;u=Wi[A>>0]|0;h=Wi[g>>0]|0;w=Wi[F>>0]|0;r=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){I=(Zi(k&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(b&65535,t)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;r=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(I+(Zi(r&65535,w)|0)|0)>>>4;m=m+1|0;if((m|0)==(n|0))break;else{z=E;x=v;U=d;B=c;H=b;I=k;E=r;v=z;d=x;c=U;b=B;k=H;r=I}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}r=a+-1|0;d=48+(r<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(r<<4)+1|0;S=48+(r<<4)+2|0;_=48+(r<<4)+3|0;m=48+(r<<4)+4|0;p=48+(r<<4)+5|0;F=48+(r<<4)+6|0;c=48+(r<<4)+7|0;w=P+384|0;b=0;while(1){if(v){r=Wi[d>>0]|0;l=Wi[E>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[c>>0]|0;k=0;do{z=Zi(Gi[w+(k+-192<<1)>>1]|0,r)|0;z=(Zi(Gi[w+(k+-128<<1)>>1]|0,l)|0)+z|0;z=z+(Zi(Gi[w+(k+-64<<1)>>1]|0,i)|0)|0;z=z+(Zi(Gi[w+(k<<1)>>1]|0,t)|0)|0;z=z+(Zi(Gi[w+(k+64<<1)>>1]|0,o)|0)|0;z=z+(Zi(Gi[w+(k+128<<1)>>1]|0,s)|0)|0;z=z+(Zi(Gi[w+(k+192<<1)>>1]|0,u)|0)|0;Gi[e+(k<<1)>>1]=(z+(Zi(Gi[w+(k+256<<1)>>1]|0,h)|0)|0)>>>6;k=k+1|0}while((k|0)!=(n|0))}b=b+1|0;if((b|0)==(f|0))break;else{e=e+128|0;w=w+128|0}}}}Ue=L;return}function Tm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0;o=f>>>1;n=i>>>1;if((l|0)>0){a=t<<1;f=0;while(1){qT(e|0,r|0,a|0)|0;f=f+1|0;if((f|0)==(l|0))break;else{e=e+(n<<1)|0;r=r+(o<<1)|0}}}return}function Nm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;A=f>>>1;O=i>>>1;f=a+-1|0;S=48+(f<<4)|0;if((l|0)>0){_=(t|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;v=48+(f<<4)+5|0;E=48+(f<<4)+6|0;d=48+(f<<4)+7|0;c=0;while(1){if(_){n=Wi[S>>0]|0;i=Wi[m>>0]|0;a=Wi[p>>0]|0;o=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[v>>0]|0;h=Wi[E>>0]|0;w=Wi[d>>0]|0;k=0;do{f=Zi(Ji[r+(k+-3<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(k+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k+-1<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;b=k;k=k+1|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+3<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(b+4<<1)>>1]|0,w)|0)>>4)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(b<<1)>>1]=f}while((k|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(O<<1)|0;r=r+(A<<1)|0}}}return}function Dm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0;M=f>>>1;g=i>>>1;f=n+-1|0;m=48+(f<<4)|0;if((l|0)>0){p=(t|0)>0;F=M*3|0;y=48+(f<<4)+1|0;O=M<<1;A=48+(f<<4)+2|0;v=48+(f<<4)+3|0;E=48+(f<<4)+4|0;S=48+(f<<4)+5|0;_=48+(f<<4)+6|0;c=48+(f<<4)+7|0;d=M<<2;b=0;while(1){if(p){a=Wi[m>>0]|0;i=Wi[y>>0]|0;n=Wi[A>>0]|0;o=Wi[v>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[c>>0]|0;k=0;do{f=Zi(Ji[r+(k-F<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(k-O<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(k-M<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(k<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(k+M<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(k+O<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(k+F<<1)>>1]|0,h)|0)|0;f=(f+(Zi(Ji[r+(k+d<<1)>>1]|0,w)|0)>>4)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(k<<1)>>1]=f;k=k+1|0}while((k|0)!=(t|0))}b=b+1|0;if((b|0)==(l|0))break;else{e=e+(g<<1)|0;r=r+(M<<1)|0}}}return}function Cm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;I=Ue;Ue=Ue+9088|0;P=I;C=f>>>1;L=i>>>1;f=a+-1|0;R=48+(f<<4)|0;if((l|0)>-7){T=(t|0)>0;N=48+(f<<4)+1|0;D=48+(f<<4)+2|0;O=48+(f<<4)+3|0;A=48+(f<<4)+4|0;g=48+(f<<4)+5|0;M=48+(f<<4)+6|0;F=48+(f<<4)+7|0;y=l+6|0;S=r+((Zi(C,-3)|0)<<1)|0;_=P;p=0;while(1){if(T){i=Wi[R>>0]|0;a=Wi[N>>0]|0;r=Wi[D>>0]|0;o=Wi[O>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[F>>0]|0;f=Gi[S+-6>>1]|0;k=Gi[S+-4>>1]|0;b=Gi[S+-2>>1]|0;c=Gi[S>>1]|0;d=Gi[S+2>>1]|0;v=Gi[S+4>>1]|0;E=Gi[S+6>>1]|0;m=0;while(1){H=(Zi(k&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(b&65535,r)|0)+(Zi(c&65535,o)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)|0;f=Gi[S+(m+4<<1)>>1]|0;Gi[_+(m<<1)>>1]=(H+(Zi(f&65535,w)|0)|0)>>>4;m=m+1|0;if((m|0)==(t|0))break;else{V=E;z=v;x=d;U=c;B=b;H=k;E=f;v=V;d=z;c=x;b=U;k=B;f=H}}}if((p|0)<(y|0)){S=S+(C<<1)|0;_=_+128|0;p=p+1|0}else break}f=n+-1|0;v=48+(f<<4)|0;if((l|0)>0){E=(t|0)>0;S=48+(f<<4)+1|0;_=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;d=48+(f<<4)+7|0;k=P+384|0;c=0;while(1){if(E){a=Wi[v>>0]|0;r=Wi[S>>0]|0;o=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;i=Wi[d>>0]|0;b=0;do{f=Zi(Gi[k+(b+-192<<1)>>1]|0,a)|0;f=(Zi(Gi[k+(b+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[k+(b+-64<<1)>>1]|0,o)|0)|0;f=f+(Zi(Gi[k+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[k+(b+64<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[k+(b+128<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[k+(b+192<<1)>>1]|0,w)|0)|0;f=(f+(Zi(Gi[k+(b+256<<1)>>1]|0,i)|0)>>6)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(L<<1)|0;k=k+128|0}}}}Ue=I;return}function Pm(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0;d=f>>>1;b=i>>>1;c=a+2|0;k=1<<a+1;h=t<<4;if((l|0)>0){w=(u|0)>0;t=n<<2;a=e;o=r;i=0;while(1){if(w){s=0;do{f=((Zi(t,Ji[o+(s<<1)>>1]|0)|0)+k>>c)+h|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[a+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(u|0))}i=i+1|0;if((i|0)==(l|0))break;else{a=a+(b<<1)|0;o=o+(d<<1)|0}}}return}function Lm(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;T=f>>>1;R=i>>>1;f=o+-1|0;g=48+(f<<4)|0;M=a+2|0;A=1<<a+1;y=t<<4;if((l|0)>0){O=(u|0)>0;E=48+(f<<4)+1|0;S=48+(f<<4)+2|0;_=48+(f<<4)+3|0;m=48+(f<<4)+4|0;p=48+(f<<4)+5|0;F=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(O){s=Wi[g>>0]|0;i=Wi[E>>0]|0;o=Wi[S>>0]|0;a=Wi[_>>0]|0;t=Wi[m>>0]|0;h=Wi[p>>0]|0;w=Wi[F>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,o)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>4,n)|0)+A>>M)+y|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(c<<1)>>1]=f}while((b|0)!=(u|0))}d=d+1|0;if((d|0)==(l|0))break;else{e=e+(R<<1)|0;r=r+(T<<1)|0}}}return}function Im(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;D=f>>>1;N=i>>>1;f=s+-1|0;R=48+(f<<4)|0;T=a+2|0;M=1<<a+1;A=t<<4;if((l|0)>0){g=(u|0)>0;E=D*3|0;S=48+(f<<4)+1|0;_=D<<1;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=D<<2;c=0;while(1){if(g){o=Wi[R>>0]|0;i=Wi[S>>0]|0;s=Wi[m>>0]|0;a=Wi[p>>0]|0;t=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[O>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-E<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(b-_<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-D<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,a)|0)|0;f=f+(Zi(Ji[r+(b+D<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b+_<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+E<<1)>>1]|0,w)|0)|0;f=((Zi(f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>4,n)|0)+M>>T)+A|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(u|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+(N<<1)|0;r=r+(D<<1)|0}}}return}function Hm(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0;x=Ue;Ue=Ue+9088|0;I=x;L=f>>>1;B=i>>>1;U=a+2|0;H=1<<a+1;f=o+-1|0;P=48+(f<<4)|0;if((l|0)>-7){g=(u|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;T=48+(f<<4)+3|0;N=48+(f<<4)+4|0;D=48+(f<<4)+5|0;C=48+(f<<4)+6|0;O=48+(f<<4)+7|0;A=l+6|0;m=r+((Zi(L,-3)|0)<<1)|0;p=I;y=0;while(1){if(g){i=Wi[P>>0]|0;a=Wi[M>>0]|0;o=Wi[R>>0]|0;r=Wi[T>>0]|0;h=Wi[N>>0]|0;w=Wi[D>>0]|0;k=Wi[C>>0]|0;b=Wi[O>>0]|0;f=Gi[m+-6>>1]|0;c=Gi[m+-4>>1]|0;d=Gi[m+-2>>1]|0;v=Gi[m>>1]|0;E=Gi[m+2>>1]|0;S=Gi[m+4>>1]|0;_=Gi[m+6>>1]|0;F=0;while(1){z=(Zi(c&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(d&65535,o)|0)+(Zi(v&65535,r)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)+(Zi(_&65535,k)|0)|0;f=Gi[m+(F+4<<1)>>1]|0;Gi[p+(F<<1)>>1]=(z+(Zi(f&65535,b)|0)|0)>>>4;F=F+1|0;if((F|0)==(u|0))break;else{W=_;K=S;j=E;Y=v;V=d;z=c;_=f;S=W;E=K;v=j;d=Y;c=V;f=z}}}if((y|0)<(A|0)){m=m+(L<<1)|0;p=p+128|0;y=y+1|0}else break}f=s+-1|0;g=48+(f<<4)|0;S=t<<4;if((l|0)>0){_=(u|0)>0;m=48+(f<<4)+1|0;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;E=48+(f<<4)+7|0;c=I+384|0;v=0;while(1){if(_){r=Wi[g>>0]|0;h=Wi[m>>0]|0;w=Wi[p>>0]|0;k=Wi[F>>0]|0;b=Wi[y>>0]|0;i=Wi[O>>0]|0;a=Wi[A>>0]|0;o=Wi[E>>0]|0;d=0;do{f=Zi(Gi[c+(d+-192<<1)>>1]|0,r)|0;f=(Zi(Gi[c+(d+-128<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[c+(d+-64<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[c+(d<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[c+(d+64<<1)>>1]|0,b)|0)|0;f=f+(Zi(Gi[c+(d+128<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[c+(d+192<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[c+(d+256<<1)>>1]|0,o)|0)>>6,n)|0)+H>>U)+S|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(u|0))}v=v+1|0;if((v|0)==(l|0))break;else{e=e+(B<<1)|0;c=c+128|0}}}}Ue=x;return}function Bm(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0;h=f>>>1;s=i>>>1;if((a|0)>0){u=(o|0)>0;n=r;i=0;while(1){if(u){t=0;do{f=(Gi[l+(t<<1)>>1]|0)+4+(Ji[n+(t<<1)>>1]<<2)>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(o|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(s<<1)|0;n=n+(h<<1)|0}}}return}function Um(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;g=f>>>1;A=i>>>1;f=n+-1|0;_=48+(f<<4)|0;if((a|0)>0){m=(o|0)>0;p=48+(f<<4)+1|0;F=48+(f<<4)+2|0;y=48+(f<<4)+3|0;O=48+(f<<4)+4|0;E=48+(f<<4)+5|0;S=48+(f<<4)+6|0;v=48+(f<<4)+7|0;d=0;while(1){if(m){t=Wi[_>>0]|0;i=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;h=Wi[E>>0]|0;w=Wi[S>>0]|0;k=Wi[v>>0]|0;b=0;do{f=Zi(Ji[r+(b+-3<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(b+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b+-1<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;c=b;b=b+1|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(c+2<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(c+3<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(c+4<<1)>>1]|0,k)|0)>>4;f=(Gi[l+(c<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(c<<1)>>1]=f}while((b|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(A<<1)|0;r=r+(g<<1)|0}}}return}function xm(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;R=f>>>1;M=i>>>1;f=t+-1|0;p=48+(f<<4)|0;if((a|0)>0){F=(o|0)>0;y=R*3|0;O=48+(f<<4)+1|0;A=R<<1;g=48+(f<<4)+2|0;E=48+(f<<4)+3|0;S=48+(f<<4)+4|0;_=48+(f<<4)+5|0;m=48+(f<<4)+6|0;d=48+(f<<4)+7|0;v=R<<2;c=0;while(1){if(F){n=Wi[p>>0]|0;i=Wi[O>>0]|0;t=Wi[g>>0]|0;s=Wi[E>>0]|0;u=Wi[S>>0]|0;h=Wi[_>>0]|0;w=Wi[m>>0]|0;k=Wi[d>>0]|0;b=0;do{f=Zi(Ji[r+(b-y<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(b-A<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(b-R<<1)>>1]|0,t)|0)|0;f=f+(Zi(Ji[r+(b<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(b+R<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(b+A<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(b+y<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(b+v<<1)>>1]|0,k)|0)>>4;f=(Gi[l+(b<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(b<<1)>>1]=f;b=b+1|0}while((b|0)!=(o|0))}c=c+1|0;if((c|0)==(a|0))break;else{l=l+128|0;e=e+(M<<1)|0;r=r+(R<<1)|0}}}return}function zm(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;H=Ue;Ue=Ue+9088|0;L=H;P=f>>>1;I=i>>>1;f=n+-1|0;T=48+(f<<4)|0;if((a|0)>-7){N=(o|0)>0;D=48+(f<<4)+1|0;C=48+(f<<4)+2|0;A=48+(f<<4)+3|0;g=48+(f<<4)+4|0;M=48+(f<<4)+5|0;R=48+(f<<4)+6|0;y=48+(f<<4)+7|0;O=a+6|0;_=r+((Zi(P,-3)|0)<<1)|0;m=L;F=0;while(1){if(N){i=Wi[T>>0]|0;n=Wi[D>>0]|0;r=Wi[C>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[R>>0]|0;k=Wi[y>>0]|0;f=Gi[_+-6>>1]|0;b=Gi[_+-4>>1]|0;c=Gi[_+-2>>1]|0;d=Gi[_>>1]|0;v=Gi[_+2>>1]|0;E=Gi[_+4>>1]|0;S=Gi[_+6>>1]|0;p=0;while(1){B=(Zi(b&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,r)|0)+(Zi(d&65535,s)|0)+(Zi(v&65535,u)|0)+(Zi(E&65535,h)|0)+(Zi(S&65535,w)|0)|0;f=Gi[_+(p+4<<1)>>1]|0;Gi[m+(p<<1)>>1]=(B+(Zi(f&65535,k)|0)|0)>>>4;p=p+1|0;if((p|0)==(o|0))break;else{Y=S;V=E;z=v;x=d;U=c;B=b;S=f;E=Y;v=V;d=z;c=x;b=U;f=B}}}if((F|0)<(O|0)){_=_+(P<<1)|0;m=m+128|0;F=F+1|0}else break}f=t+-1|0;E=48+(f<<4)|0;if((a|0)>0){S=(o|0)>0;_=48+(f<<4)+1|0;m=48+(f<<4)+2|0;p=48+(f<<4)+3|0;F=48+(f<<4)+4|0;y=48+(f<<4)+5|0;O=48+(f<<4)+6|0;v=48+(f<<4)+7|0;b=L+384|0;d=0;while(1){if(S){n=Wi[E>>0]|0;r=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[O>>0]|0;i=Wi[v>>0]|0;c=0;do{f=Zi(Gi[b+(c+-192<<1)>>1]|0,n)|0;f=(Zi(Gi[b+(c+-128<<1)>>1]|0,r)|0)+f|0;f=f+(Zi(Gi[b+(c+-64<<1)>>1]|0,s)|0)|0;f=f+(Zi(Gi[b+(c<<1)>>1]|0,u)|0)|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,h)|0)|0;f=f+(Zi(Gi[b+(c+128<<1)>>1]|0,w)|0)|0;f=f+(Zi(Gi[b+(c+192<<1)>>1]|0,k)|0)|0;f=f+(Zi(Gi[b+(c+256<<1)>>1]|0,i)|0)>>6;f=(Gi[l+(c<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(I<<1)|0;b=b+128|0}}}}Ue=H;return}function Vm(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0;E=f>>>1;c=i>>>1;d=n+3|0;if((a|0)>0){v=(k|0)>0;b=o<<2;o=(u+s<<4|1)<<n+2;h=r;i=0;while(1){if(v){w=0;do{f=Zi(b,Ji[h+(w<<1)>>1]|0)|0;f=(Zi(Gi[l+(w<<1)>>1]|0,t)|0)+o+f>>d;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(k|0))}i=i+1|0;if((i|0)==(a|0))break;else{l=l+128|0;e=e+(c<<1)|0;h=h+(E<<1)|0}}}return}function Ym(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;N=f>>>1;T=i>>>1;f=h+-1|0;O=48+(f<<4)|0;A=n+3|0;if((a|0)>0){g=(k|0)>0;M=48+(f<<4)+1|0;R=48+(f<<4)+2|0;m=48+(f<<4)+3|0;p=48+(f<<4)+4|0;F=48+(f<<4)+5|0;y=48+(f<<4)+6|0;_=48+(f<<4)+7|0;S=(u+s<<4|1)<<n+2;E=0;while(1){if(g){w=Wi[O>>0]|0;i=Wi[M>>0]|0;h=Wi[R>>0]|0;n=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;b=Wi[y>>0]|0;c=Wi[_>>0]|0;d=0;do{f=Zi(Ji[r+(d+-3<<1)>>1]|0,w)|0;f=(Zi(Ji[r+(d+-2<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d+-1<<1)>>1]|0,h)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;v=d;d=d+1|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(v+2<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(v+3<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(v+4<<1)>>1]|0,c)|0)>>4,o)|0;f=(Zi(Gi[l+(v<<1)>>1]|0,t)|0)+S+f>>A;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(v<<1)>>1]=f}while((d|0)!=(k|0))}E=E+1|0;if((E|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;r=r+(N<<1)|0}}}return}function jm(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;C=f>>>1;D=i>>>1;f=w+-1|0;g=48+(f<<4)|0;M=n+3|0;if((a|0)>0){R=(k|0)>0;T=C*3|0;N=48+(f<<4)+1|0;m=C<<1;p=48+(f<<4)+2|0;F=48+(f<<4)+3|0;y=48+(f<<4)+4|0;O=48+(f<<4)+5|0;A=48+(f<<4)+6|0;S=48+(f<<4)+7|0;_=C<<2;E=(u+s<<4|1)<<n+2;v=0;while(1){if(R){h=Wi[g>>0]|0;i=Wi[N>>0]|0;w=Wi[p>>0]|0;n=Wi[F>>0]|0;s=Wi[y>>0]|0;u=Wi[O>>0]|0;b=Wi[A>>0]|0;c=Wi[S>>0]|0;d=0;do{f=Zi(Ji[r+(d-T<<1)>>1]|0,h)|0;f=(Zi(Ji[r+(d-m<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(d-C<<1)>>1]|0,w)|0)|0;f=f+(Zi(Ji[r+(d<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(d+C<<1)>>1]|0,s)|0)|0;f=f+(Zi(Ji[r+(d+m<<1)>>1]|0,u)|0)|0;f=f+(Zi(Ji[r+(d+T<<1)>>1]|0,b)|0)|0;f=Zi(f+(Zi(Ji[r+(d+_<<1)>>1]|0,c)|0)>>4,o)|0;f=(Zi(Gi[l+(d<<1)>>1]|0,t)|0)+E+f>>M;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(d<<1)>>1]=f;d=d+1|0}while((d|0)!=(k|0))}v=v+1|0;if((v|0)==(a|0))break;else{l=l+128|0;e=e+(D<<1)|0;r=r+(C<<1)|0}}}return}function Km(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0;Y=Ue;Ue=Ue+9088|0;x=Y;B=f>>>1;z=i>>>1;V=n+3|0;U=n+2|0;f=h+-1|0;I=48+(f<<4)|0;if((a|0)>-7){H=(k|0)>0;T=48+(f<<4)+1|0;N=48+(f<<4)+2|0;D=48+(f<<4)+3|0;C=48+(f<<4)+4|0;P=48+(f<<4)+5|0;L=48+(f<<4)+6|0;M=48+(f<<4)+7|0;R=a+6|0;y=r+((Zi(B,-3)|0)<<1)|0;O=x;g=0;while(1){if(H){i=Wi[I>>0]|0;n=Wi[T>>0]|0;h=Wi[N>>0]|0;r=Wi[D>>0]|0;b=Wi[C>>0]|0;c=Wi[P>>0]|0;d=Wi[L>>0]|0;v=Wi[M>>0]|0;f=Gi[y+-6>>1]|0;E=Gi[y+-4>>1]|0;S=Gi[y+-2>>1]|0;_=Gi[y>>1]|0;m=Gi[y+2>>1]|0;p=Gi[y+4>>1]|0;F=Gi[y+6>>1]|0;A=0;while(1){j=(Zi(E&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(S&65535,h)|0)+(Zi(_&65535,r)|0)+(Zi(m&65535,b)|0)+(Zi(p&65535,c)|0)+(Zi(F&65535,d)|0)|0;f=Gi[y+(A+4<<1)>>1]|0;Gi[O+(A<<1)>>1]=(j+(Zi(f&65535,v)|0)|0)>>>4;A=A+1|0;if((A|0)==(k|0))break;else{q=F;X=p;G=m;W=_;K=S;j=E;F=f;p=q;m=X;_=G;S=W;E=K;f=j}}}if((g|0)<(R|0)){y=y+(B<<1)|0;O=O+128|0;g=g+1|0}else break}f=w+-1|0;F=48+(f<<4)|0;if((a|0)>0){y=(k|0)>0;O=48+(f<<4)+1|0;A=48+(f<<4)+2|0;g=48+(f<<4)+3|0;M=48+(f<<4)+4|0;R=48+(f<<4)+5|0;T=48+(f<<4)+6|0;p=48+(f<<4)+7|0;m=(u+s<<4|1)<<U;E=x+384|0;_=0;while(1){if(y){b=Wi[F>>0]|0;c=Wi[O>>0]|0;d=Wi[A>>0]|0;v=Wi[g>>0]|0;i=Wi[M>>0]|0;n=Wi[R>>0]|0;h=Wi[T>>0]|0;r=Wi[p>>0]|0;S=0;do{f=Zi(Gi[E+(S+-192<<1)>>1]|0,b)|0;f=(Zi(Gi[E+(S+-128<<1)>>1]|0,c)|0)+f|0;f=f+(Zi(Gi[E+(S+-64<<1)>>1]|0,d)|0)|0;f=f+(Zi(Gi[E+(S<<1)>>1]|0,v)|0)|0;f=f+(Zi(Gi[E+(S+64<<1)>>1]|0,i)|0)|0;f=f+(Zi(Gi[E+(S+128<<1)>>1]|0,n)|0)|0;f=f+(Zi(Gi[E+(S+192<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Gi[E+(S+256<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(S<<1)>>1]|0,t)|0)+m+f>>V;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(S<<1)>>1]=f;S=S+1|0}while((S|0)!=(k|0))}_=_+1|0;if((_|0)==(a|0))break;else{l=l+128|0;e=e+(z<<1)|0;E=E+128|0}}}}Ue=Y;return}function Wm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;c=r>>>1;r=l+-1|0;h=16+(r<<2)|0;if((f|0)>0){w=(n|0)>0;k=16+(r<<2)+1|0;b=16+(r<<2)+2|0;u=16+(r<<2)+3|0;s=0;while(1){if(w){t=Wi[h>>0]|0;r=Wi[k>>0]|0;a=Wi[b>>0]|0;l=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o+-1<<1)>>1]|0,t)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,r)|0)+v|0;d=o;o=o+1|0;v=v+(Zi(Ji[i+(o<<1)>>1]|0,a)|0)|0;Gi[e+(d<<1)>>1]=(v+(Zi(Ji[i+(d+2<<1)>>1]|0,l)|0)|0)>>>4}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(c<<1)|0}}}return}function Gm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r>>>1;r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;u=16+(r<<2)+3|0;h=d<<1;s=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;a=Wi[c>>0]|0;t=Wi[u>>0]|0;o=0;do{v=Zi(Ji[i+(o-d<<1)>>1]|0,r)|0;v=(Zi(Ji[i+(o<<1)>>1]|0,l)|0)+v|0;v=v+(Zi(Ji[i+(o+d<<1)>>1]|0,a)|0)|0;Gi[e+(o<<1)>>1]=(v+(Zi(Ji[i+(o+h<<1)>>1]|0,t)|0)|0)>>>4;o=o+1|0}while((o|0)!=(n|0))}s=s+1|0;if((s|0)==(f|0))break;else{e=e+128|0;i=i+(d<<1)|0}}}return}function Xm(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=Ue;Ue=Ue+8576|0;p=F;m=r>>>1;r=l+-1|0;v=16+(r<<2)|0;if((f|0)>-3){E=(n|0)>0;S=16+(r<<2)+1|0;_=16+(r<<2)+2|0;d=16+(r<<2)+3|0;c=f+2|0;h=i+(0-m<<1)|0;w=p;b=0;while(1){if(E){l=Wi[v>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[d>>0]|0;r=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){y=(Zi(s&65535,i)|0)+(Zi(r&65535,l)|0)+(Zi(u&65535,t)|0)|0;r=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(y+(Zi(r&65535,o)|0)|0)>>>4;k=k+1|0;if((k|0)==(n|0))break;else{O=u;y=s;u=r;s=O;r=y}}}if((b|0)<(c|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}r=a+-1|0;w=16+(r<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(r<<2)+1|0;c=16+(r<<2)+2|0;h=16+(r<<2)+3|0;o=p+128|0;u=0;while(1){if(k){r=Wi[w>>0]|0;l=Wi[b>>0]|0;i=Wi[c>>0]|0;t=Wi[h>>0]|0;s=0;do{O=Zi(Gi[o+(s+-64<<1)>>1]|0,r)|0;O=(Zi(Gi[o+(s<<1)>>1]|0,l)|0)+O|0;O=O+(Zi(Gi[o+(s+64<<1)>>1]|0,i)|0)|0;Gi[e+(s<<1)>>1]=(O+(Zi(Gi[o+(s+128<<1)>>1]|0,t)|0)|0)>>>6;s=s+1|0}while((s|0)!=(n|0))}u=u+1|0;if((u|0)==(f|0))break;else{e=e+128|0;o=o+128|0}}}}Ue=F;return}function qm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=a+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;h=0;while(1){if(b){n=Wi[k>>0]|0;i=Wi[c>>0]|0;a=Wi[d>>0]|0;o=Wi[w>>0]|0;s=0;do{f=Zi(Ji[r+(s+-1<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;u=s;s=s+1|0;f=f+(Zi(Ji[r+(s<<1)>>1]|0,a)|0)|0;f=(f+(Zi(Ji[r+(u+2<<1)>>1]|0,o)|0)>>4)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(u<<1)>>1]=f}while((s|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function Jm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=f>>>1;v=i>>>1;f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;h=16+(f<<2)+3|0;w=E<<1;u=0;while(1){if(b){a=Wi[k>>0]|0;i=Wi[c>>0]|0;n=Wi[d>>0]|0;o=Wi[h>>0]|0;s=0;do{f=Zi(Ji[r+(s-E<<1)>>1]|0,a)|0;f=(Zi(Ji[r+(s<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(s+E<<1)>>1]|0,n)|0)|0;f=(f+(Zi(Ji[r+(s+w<<1)>>1]|0,o)|0)>>4)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(s<<1)>>1]=f;s=s+1|0}while((s|0)!=(t|0))}u=u+1|0;if((u|0)==(l|0))break;else{e=e+(v<<1)|0;r=r+(E<<1)|0}}}return}function Zm(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;y=Ue;Ue=Ue+8576|0;p=y;m=f>>>1;F=i>>>1;f=a+-1|0;v=16+(f<<2)|0;if((l|0)>-3){E=(t|0)>0;S=16+(f<<2)+1|0;_=16+(f<<2)+2|0;c=16+(f<<2)+3|0;d=l+2|0;h=r+(0-m<<1)|0;w=p;b=0;while(1){if(E){i=Wi[v>>0]|0;a=Wi[S>>0]|0;r=Wi[_>>0]|0;o=Wi[c>>0]|0;f=Gi[h+-2>>1]|0;s=Gi[h>>1]|0;u=Gi[h+2>>1]|0;k=0;while(1){O=(Zi(s&65535,a)|0)+(Zi(f&65535,i)|0)+(Zi(u&65535,r)|0)|0;f=Gi[h+(k+2<<1)>>1]|0;Gi[w+(k<<1)>>1]=(O+(Zi(f&65535,o)|0)|0)>>>4;k=k+1|0;if((k|0)==(t|0))break;else{A=u;O=s;u=f;s=A;f=O}}}if((b|0)<(d|0)){h=h+(m<<1)|0;w=w+128|0;b=b+1|0}else break}f=n+-1|0;k=16+(f<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(f<<2)+1|0;d=16+(f<<2)+2|0;w=16+(f<<2)+3|0;s=p+128|0;h=0;while(1){if(b){i=Wi[k>>0]|0;a=Wi[c>>0]|0;r=Wi[d>>0]|0;o=Wi[w>>0]|0;u=0;do{f=Zi(Gi[s+(u+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[s+(u<<1)>>1]|0,a)|0)+f|0;f=f+(Zi(Gi[s+(u+64<<1)>>1]|0,r)|0)|0;f=(f+(Zi(Gi[s+(u+128<<1)>>1]|0,o)|0)>>6)+2>>2;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(F<<1)|0;s=s+128|0}}}}Ue=y;return}function Qm(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=o+-1|0;S=16+(f<<2)|0;_=a+2|0;E=1<<a+1;d=t<<4;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(v){s=Wi[S>>0]|0;i=Wi[b>>0]|0;o=Wi[c>>0]|0;a=Wi[k>>0]|0;t=0;do{f=Zi(Ji[r+(t+-1<<1)>>1]|0,s)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;h=t;t=t+1|0;f=f+(Zi(Ji[r+(t<<1)>>1]|0,o)|0)|0;f=((Zi(f+(Zi(Ji[r+(h+2<<1)>>1]|0,a)|0)>>4,n)|0)+E>>_)+d|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(h<<1)>>1]=f}while((t|0)!=(u|0))}w=w+1|0;if((w|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function $m(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=f>>>1;m=i>>>1;f=s+-1|0;S=16+(f<<2)|0;_=a+2|0;E=1<<a+1;d=t<<4;if((l|0)>0){v=(u|0)>0;b=16+(f<<2)+1|0;c=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=p<<1;h=0;while(1){if(v){o=Wi[S>>0]|0;i=Wi[b>>0]|0;s=Wi[c>>0]|0;a=Wi[w>>0]|0;t=0;do{f=Zi(Ji[r+(t-p<<1)>>1]|0,o)|0;f=(Zi(Ji[r+(t<<1)>>1]|0,i)|0)+f|0;f=f+(Zi(Ji[r+(t+p<<1)>>1]|0,s)|0)|0;f=((Zi(f+(Zi(Ji[r+(t+k<<1)>>1]|0,a)|0)>>4,n)|0)+E>>_)+d|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(t<<1)>>1]=f;t=t+1|0}while((t|0)!=(u|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+(m<<1)|0;r=r+(p<<1)|0}}}return}function ep(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;M=Ue;Ue=Ue+8576|0;y=M;F=f>>>1;g=i>>>1;f=o+-1|0;p=16+(f<<2)|0;A=a+2|0;O=1<<a+1;if((l|0)>-3){S=(u|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;v=16+(f<<2)+3|0;E=l+2|0;k=r+(0-F<<1)|0;b=y;d=0;while(1){if(S){i=Wi[p>>0]|0;o=Wi[_>>0]|0;a=Wi[m>>0]|0;r=Wi[v>>0]|0;f=Gi[k+-2>>1]|0;h=Gi[k>>1]|0;w=Gi[k+2>>1]|0;c=0;while(1){R=(Zi(h&65535,o)|0)+(Zi(f&65535,i)|0)+(Zi(w&65535,a)|0)|0;f=Gi[k+(c+2<<1)>>1]|0;Gi[b+(c<<1)>>1]=(R+(Zi(f&65535,r)|0)|0)>>>4;c=c+1|0;if((c|0)==(u|0))break;else{T=w;R=h;w=f;h=T;f=R}}}if((d|0)<(E|0)){k=k+(F<<1)|0;b=b+128|0;d=d+1|0}else break}f=s+-1|0;S=16+(f<<2)|0;c=t<<4;if((l|0)>0){d=(u|0)>0;v=16+(f<<2)+1|0;E=16+(f<<2)+2|0;b=16+(f<<2)+3|0;h=y+128|0;k=0;while(1){if(d){i=Wi[S>>0]|0;o=Wi[v>>0]|0;a=Wi[E>>0]|0;r=Wi[b>>0]|0;w=0;do{f=Zi(Gi[h+(w+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[h+(w<<1)>>1]|0,o)|0)+f|0;f=f+(Zi(Gi[h+(w+64<<1)>>1]|0,a)|0)|0;f=((Zi(f+(Zi(Gi[h+(w+128<<1)>>1]|0,r)|0)>>6,n)|0)+O>>A)+c|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(w<<1)>>1]=f;w=w+1|0}while((w|0)!=(u|0))}k=k+1|0;if((k|0)==(l|0))break;else{e=e+(g<<1)|0;h=h+128|0}}}}Ue=M;return}function ip(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;E=i>>>1;f=n+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;w=0;while(1){if(c){t=Wi[b>>0]|0;i=Wi[d>>0]|0;n=Wi[v>>0]|0;s=Wi[k>>0]|0;u=0;do{f=Zi(Ji[r+(u+-1<<1)>>1]|0,t)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,i)|0)+f|0;h=u;u=u+1|0;f=f+(Zi(Ji[r+(u<<1)>>1]|0,n)|0)|0;f=f+(Zi(Ji[r+(h+2<<1)>>1]|0,s)|0)>>4;f=(Gi[l+(h<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(h<<1)>>1]=f}while((u|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(E<<1)|0;r=r+(S<<1)|0}}}return}function rp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=f>>>1;f=t+-1|0;E=16+(f<<2)|0;b=i>>>1;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;w=16+(f<<2)+3|0;k=S<<1;h=0;while(1){if(c){n=Wi[E>>0]|0;t=Wi[d>>0]|0;i=Wi[v>>0]|0;s=Wi[w>>0]|0;u=0;do{f=Zi(Ji[r+(u-S<<1)>>1]|0,n)|0;f=(Zi(Ji[r+(u<<1)>>1]|0,t)|0)+f|0;f=f+(Zi(Ji[r+(u+S<<1)>>1]|0,i)|0)|0;f=f+(Zi(Ji[r+(u+k<<1)>>1]|0,s)|0)>>4;f=(Gi[l+(u<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(o|0))}h=h+1|0;if((h|0)==(a|0))break;else{l=l+128|0;e=e+(b<<1)|0;r=r+(S<<1)|0}}}return}function fp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;O=Ue;Ue=Ue+8576|0;F=O;p=f>>>1;y=i>>>1;f=n+-1|0;E=16+(f<<2)|0;if((a|0)>-3){S=(o|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=a+2|0;w=r+(0-p<<1)|0;k=F;c=0;while(1){if(S){i=Wi[E>>0]|0;n=Wi[_>>0]|0;r=Wi[m>>0]|0;s=Wi[d>>0]|0;f=Gi[w+-2>>1]|0;u=Gi[w>>1]|0;h=Gi[w+2>>1]|0;b=0;while(1){A=(Zi(u&65535,n)|0)+(Zi(f&65535,i)|0)+(Zi(h&65535,r)|0)|0;f=Gi[w+(b+2<<1)>>1]|0;Gi[k+(b<<1)>>1]=(A+(Zi(f&65535,s)|0)|0)>>>4;b=b+1|0;if((b|0)==(o|0))break;else{g=h;A=u;h=f;u=g;f=A}}}if((c|0)<(v|0)){w=w+(p<<1)|0;k=k+128|0;c=c+1|0}else break}f=t+-1|0;b=16+(f<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(f<<2)+1|0;v=16+(f<<2)+2|0;k=16+(f<<2)+3|0;u=F+128|0;w=0;while(1){if(c){i=Wi[b>>0]|0;n=Wi[d>>0]|0;r=Wi[v>>0]|0;s=Wi[k>>0]|0;h=0;do{f=Zi(Gi[u+(h+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[u+(h<<1)>>1]|0,n)|0)+f|0;f=f+(Zi(Gi[u+(h+64<<1)>>1]|0,r)|0)|0;f=f+(Zi(Gi[u+(h+128<<1)>>1]|0,s)|0)>>6;f=(Gi[l+(h<<1)>>1]|0)+4+f>>3;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(h<<1)>>1]=f;h=h+1|0}while((h|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+(y<<1)|0;u=u+128|0}}}}Ue=O;return}function lp(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>>1;p=i>>>1;f=h+-1|0;v=16+(f<<2)|0;E=n+3|0;if((a|0)>0){S=(k|0)>0;_=16+(f<<2)+1|0;m=16+(f<<2)+2|0;d=16+(f<<2)+3|0;c=(u+s<<4|1)<<n+2;s=r;b=0;while(1){if(S){w=Wi[v>>0]|0;i=Wi[_>>0]|0;h=Wi[m>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u+-1<<1)>>1]|0,w)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,i)|0)+f|0;r=u;u=u+1|0;f=f+(Zi(Ji[s+(u<<1)>>1]|0,h)|0)|0;f=Zi(f+(Zi(Ji[s+(r+2<<1)>>1]|0,n)|0)>>4,o)|0;f=(Zi(Gi[l+(r<<1)>>1]|0,t)|0)+c+f>>E;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(r<<1)>>1]=f}while((u|0)!=(k|0))}b=b+1|0;if((b|0)==(a|0))break;else{l=l+128|0;e=e+(p<<1)|0;s=s+(F<<1)|0}}}return}function ap(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;y=f>>>1;f=w+-1|0;F=16+(f<<2)|0;E=i>>>1;S=n+3|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;d=16+(f<<2)+3|0;v=y<<1;c=(u+s<<4|1)<<n+2;b=e;s=r;e=0;while(1){if(_){h=Wi[F>>0]|0;w=Wi[m>>0]|0;i=Wi[p>>0]|0;n=Wi[d>>0]|0;u=0;do{f=Zi(Ji[s+(u-y<<1)>>1]|0,h)|0;f=(Zi(Ji[s+(u<<1)>>1]|0,w)|0)+f|0;f=f+(Zi(Ji[s+(u+y<<1)>>1]|0,i)|0)|0;f=Zi(f+(Zi(Ji[s+(u+v<<1)>>1]|0,n)|0)>>4,o)|0;f=(Zi(Gi[l+(u<<1)>>1]|0,t)|0)+c+f>>S;if(f>>>0>=4096)f=0-f>>31&4095;Gi[b+(u<<1)>>1]=f;u=u+1|0}while((u|0)!=(k|0))}e=e+1|0;if((e|0)==(a|0))break;else{l=l+128|0;b=b+(E<<1)|0;s=s+(y<<1)|0}}}return}function np(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;N=Ue;Ue=Ue+8576|0;M=N;A=f>>>1;T=i>>>1;f=h+-1|0;O=16+(f<<2)|0;R=n+3|0;g=n+2|0;if((a|0)>-3){y=(k|0)>0;p=16+(f<<2)+1|0;F=16+(f<<2)+2|0;_=16+(f<<2)+3|0;m=a+2|0;d=r+(0-A<<1)|0;v=M;S=0;while(1){if(y){i=Wi[O>>0]|0;h=Wi[p>>0]|0;n=Wi[F>>0]|0;r=Wi[_>>0]|0;f=Gi[d+-2>>1]|0;b=Gi[d>>1]|0;c=Gi[d+2>>1]|0;E=0;while(1){D=(Zi(b&65535,h)|0)+(Zi(f&65535,i)|0)+(Zi(c&65535,n)|0)|0;f=Gi[d+(E+2<<1)>>1]|0;Gi[v+(E<<1)>>1]=(D+(Zi(f&65535,r)|0)|0)>>>4;E=E+1|0;if((E|0)==(k|0))break;else{C=c;D=b;c=f;b=C;f=D}}}if((S|0)<(m|0)){d=d+(A<<1)|0;v=v+128|0;S=S+1|0}else break}f=w+-1|0;S=16+(f<<2)|0;if((a|0)>0){_=(k|0)>0;m=16+(f<<2)+1|0;p=16+(f<<2)+2|0;E=16+(f<<2)+3|0;v=(u+s<<4|1)<<g;b=M+128|0;d=0;while(1){if(_){i=Wi[S>>0]|0;h=Wi[m>>0]|0;n=Wi[p>>0]|0;r=Wi[E>>0]|0;c=0;do{f=Zi(Gi[b+(c+-64<<1)>>1]|0,i)|0;f=(Zi(Gi[b+(c<<1)>>1]|0,h)|0)+f|0;f=f+(Zi(Gi[b+(c+64<<1)>>1]|0,n)|0)|0;f=Zi(f+(Zi(Gi[b+(c+128<<1)>>1]|0,r)|0)>>6,o)|0;f=(Zi(Gi[l+(c<<1)>>1]|0,t)|0)+v+f>>R;if(f>>>0>=4096)f=0-f>>31&4095;Gi[e+(c<<1)>>1]=f;c=c+1|0}while((c|0)!=(k|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+(T<<1)|0;b=b+128|0}}}}Ue=N;return}function tp(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;op(e,i,2,r,f,l,a);return}function op(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0;se=i>>>1;oe=r>>>1;J=f<<4;ee=Zi(se,-3)|0;ie=Zi(se,-2)|0;re=0-se|0;fe=se<<1;le=oe*3|0;ae=le+ee|0;ne=le+ie|0;z=le-se|0;V=le+fe|0;Y=le+se|0;j=J>>3;K=J>>2;W=Zi(se,-4)|0;G=se*3|0;X=le+W|0;q=le+G|0;Z=(J>>1)+J>>3;Q=oe<<2;$=oe<<2;U=oe+ee|0;x=oe+ie|0;N=oe-se|0;D=oe+se|0;C=oe+fe|0;P=oe+G|0;T=oe+ee|0;L=oe+ie|0;I=oe-se|0;H=oe+se|0;B=oe+fe|0;te=0;i=e;do{e=Gi[i+(ee<<1)>>1]|0;t=Gi[i+(ie<<1)>>1]|0;h=Gi[i+(re<<1)>>1]|0;r=h&65535;_=(e&65535)-((t&65535)<<1)+r|0;_=(_|0)>-1?_:0-_|0;b=Gi[i+(fe<<1)>>1]|0;k=Gi[i+(se<<1)>>1]|0;w=Gi[i>>1]|0;f=w&65535;p=(b&65535)-((k&65535)<<1)+f|0;p=(p|0)>-1?p:0-p|0;o=Ji[i+(z<<1)>>1]|0;m=(Ji[i+(ae<<1)>>1]|0)-((Ji[i+(ne<<1)>>1]|0)<<1)+o|0;m=(m|0)>-1?m:0-m|0;s=Ji[i+(le<<1)>>1]|0;F=(Ji[i+(V<<1)>>1]|0)-((Ji[i+(Y<<1)>>1]|0)<<1)+s|0;F=(F|0)>-1?F:0-F|0;u=p+_|0;d=F+m|0;E=Xi[l+(te<<2)>>2]|0;R=E<<4;S=Wi[a+te>>0]|0;y=Wi[n+te>>0]|0;do{if((d+u|0)<(J|0)){v=E*80>>1;M=(Ji[i+(W<<1)>>1]|0)-r|0;c=Gi[i+(G<<1)>>1]|0;g=(c&65535)-f|0;if((((((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)?(M=r-f|0,(((M|0)>-1?M:0-M|0)|0)<(v|0)):0)?(M=(Ji[i+(X<<1)>>1]|0)-o|0,g=(Ji[i+(q<<1)>>1]|0)-s|0,(((g|0)>-1?g:0-g|0)+((M|0)>-1?M:0-M|0)|0)<(j|0)):0)?(M=o-s|0,((u<<1|0)<(K|0)?(((M|0)>-1?M:0-M|0)|0)<(v|0):0)&(d<<1|0)<(K|0)):0){_=E<<5;E=S<<24>>24==0;S=0-_|0;v=y<<24>>24==0;u=0;d=i;while(1){s=e&65535;o=t&65535;t=h&65535;e=w&65535;f=k&65535;r=b&65535;if(E){R=Ji[d+(W<<1)>>1]|0;M=((s+4+f+(t+o+e<<1)|0)>>>3)-t|0;Gi[d+(re<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+t;M=((s+2+o+t+e|0)>>>2)-o|0;Gi[d+(ie<<1)>>1]=((M|0)<(S|0)?S:(M|0)>(_|0)?_:M)+o;R=((s*3|0)+4+o+t+e+(R<<1)>>3)-s|0;Gi[d+(ee<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+s}if(v){R=((o+4+r+(e+t+f<<1)|0)>>>3)-e|0;Gi[d>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+e;R=((t+2+e+f+r|0)>>>2)-f|0;Gi[d+(se<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+f;R=((t+4+e+f+(r*3|0)+((c&65535)<<1)|0)>>>3)-r|0;Gi[d+(fe<<1)>>1]=((R|0)<(S|0)?S:(R|0)>(_|0)?_:R)+r}f=d+(oe<<1)|0;r=u+1|0;if((r|0)==4)break;e=Gi[d+(U<<1)>>1]|0;t=Gi[d+(x<<1)>>1]|0;h=Gi[d+(N<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[d+(D<<1)>>1]|0;b=Gi[d+(C<<1)>>1]|0;c=Gi[d+(P<<1)>>1]|0;u=r;d=f}i=i+($<<1)|0;break}M=R>>1;A=E*160|0;g=0-R|0;O=S<<24>>24==0;y=y<<24>>24==0;m=O&(m+_|0)<(Z|0);_=0-M|0;S=y&(F+p|0)<(Z|0);v=0;E=i;while(1){c=e&65535;d=E+(ie<<1)|0;u=t&65535;e=E+(re<<1)|0;o=h&65535;h=w&65535;w=E+(se<<1)|0;s=k&65535;t=b&65535;r=((h-o|0)*9|0)+8+(Zi(s-u|0,-3)|0)>>4;if((((r|0)>-1?r:0-r|0)|0)<(A|0)){f=(r|0)<(g|0)?g:(r|0)>(R|0)?R:r;if(O){r=f+o|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r}if(y){r=h-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[E>>1]=r}if(m){r=((c+1+o|0)>>>1)-u+f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+u|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[d>>1]=r}if(S){r=((h+1+t|0)>>>1)-s-f>>1;r=((r|0)<(_|0)?_:(r|0)>(M|0)?M:r)+s|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[w>>1]=r}}f=E+(oe<<1)|0;r=v+1|0;if((r|0)==4)break;e=Gi[E+(T<<1)>>1]|0;t=Gi[E+(L<<1)>>1]|0;h=Gi[E+(I<<1)>>1]|0;w=Gi[f>>1]|0;k=Gi[E+(H<<1)>>1]|0;b=Gi[E+(B<<1)>>1]|0;v=r;E=f}i=i+($<<1)|0}else i=i+(Q<<1)|0}while(0);te=te+1|0}while((te|0)!=2);return}function sp(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;op(e,2,i,r,f,l,a);return}function up(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;hp(e,i,2,r,f,l);return}function hp(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;S=i>>>1;c=r>>>1;d=Zi(S,-2)|0;v=0-S|0;b=c<<2;E=0;while(1){h=Xi[f+(E<<2)>>2]<<4;if((h|0)>=1){o=0-h|0;s=(Wi[l+E>>0]|0)==0;u=(Wi[a+E>>0]|0)==0;w=0;k=e;while(1){n=k+(v<<1)|0;i=Ji[n>>1]|0;t=Ji[k>>1]|0;r=(Ji[k+(d<<1)>>1]|0)+4-(Ji[k+(S<<1)>>1]|0)+(t-i<<2)>>3;r=(r|0)<(o|0)?o:(r|0)>(h|0)?h:r;if(s){i=r+i|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[n>>1]=i}if(u){i=t-r|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[k>>1]=i}w=w+1|0;if((w|0)==4)break;else k=k+(c<<1)|0}}E=E+1|0;if((E|0)==2)break;else e=e+(b<<1)|0}return}function wp(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;hp(e,2,i,r,f,l);return}function kp(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;if((f|0)>0){o=(r|0)>0;s=l+8|0;u=l+16|0;h=32-a|0;w=8-a|0;t=0;while(1){if(o){n=0;do{c=Xi[s>>2]|0;b=Xi[u>>2]|0;k=(Xi[l>>2]|0)+(c>>>3)|0;k=(ZT(qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24|0)|0)<<(c&7)>>>h;c=c+a|0;Xi[s>>2]=b>>>0>c>>>0?c:b;Wi[e+n>>0]=k<<w;n=n+1|0}while((n|0)!=(r|0))}t=t+1|0;if((t|0)==(f|0))break;else e=e+i|0}}return}function bp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=0;while(1){f=i;l=0;while(1){n=e+l|0;t=(Gi[f>>1]|0)+(qi[n>>0]|0)|0;Wi[n>>0]=t>>>0>255?0-t>>31:t;l=l+1|0;if((l|0)==4)break;else f=f+2|0}a=a+1|0;if((a|0)==4)break;else{i=i+8|0;e=e+r|0}}return}function cp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=0;while(1){f=i;l=0;while(1){n=e+l|0;t=(Gi[f>>1]|0)+(qi[n>>0]|0)|0;Wi[n>>0]=t>>>0>255?0-t>>31:t;l=l+1|0;if((l|0)==8)break;else f=f+2|0}a=a+1|0;if((a|0)==8)break;else{i=i+16|0;e=e+r|0}}return}function dp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=0;while(1){f=i;l=0;while(1){n=e+l|0;t=(Gi[f>>1]|0)+(qi[n>>0]|0)|0;Wi[n>>0]=t>>>0>255?0-t>>31:t;l=l+1|0;if((l|0)==16)break;else f=f+2|0}a=a+1|0;if((a|0)==16)break;else{i=i+32|0;e=e+r|0}}return}function vp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;a=0;while(1){f=i;l=0;while(1){n=e+l|0;t=(Gi[f>>1]|0)+(qi[n>>0]|0)|0;Wi[n>>0]=t>>>0>255?0-t>>31:t;l=l+1|0;if((l|0)==32)break;else f=f+2|0}a=a+1|0;if((a|0)==32)break;else{i=i+64|0;e=e+r|0}}return}function Ep(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=i<<16>>16;a=7-t|0;t=1<<t;if((a|0)>0){n=1<<a+-1;if(i<<16>>16!=31){l=(t|0)>1?t:1;f=0;while(1){i=e;r=0;while(1){Gi[i>>1]=(Gi[i>>1]|0)+n>>a;r=r+1|0;if((r|0)>=(t|0))break;else i=i+2|0}f=f+1|0;if((f|0)>=(t|0))break;else e=e+(l<<1)|0}}}else if(i<<16>>16!=31){l=0-a|0;a=(t|0)>1?t:1;i=e;f=0;while(1){e=i;r=0;while(1){Gi[e>>1]=Gi[e>>1]<<l;r=r+1|0;if((r|0)>=(t|0))break;else e=e+2|0}f=f+1|0;if((f|0)>=(t|0))break;else i=i+(a<<1)|0}}return}function Sp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=1<<(i<<16>>16);if(!r){if(i<<16>>16!=31){l=(a|0)>1;r=e;f=0;while(1){if(l){i=Gi[r>>1]|0;e=1;do{n=r+(e<<1)|0;i=(Ji[n>>1]|0)+(i&65535)&65535;Gi[n>>1]=i;e=e+1|0}while((e|0)!=(a|0))}f=f+1|0;if((f|0)>=(a|0))break;else r=r+(a<<1)|0}}}else if((a|0)>1){f=i<<16>>16==31;l=a+-1|0;i=e;e=0;do{if(!f){r=0;do{n=i+(r+a<<1)|0;Gi[n>>1]=(Ji[n>>1]|0)+(Ji[i+(r<<1)>>1]|0);r=r+1|0}while((r|0)!=(a|0))}i=i+(a<<1)|0;e=e+1|0}while((e|0)!=(l|0))}return}function _p(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=0;r=e;while(1){w=Gi[r>>1]|0;u=r+16|0;o=Gi[u>>1]|0;n=o+w|0;f=r+24|0;h=Gi[f>>1]|0;s=h+o|0;l=w-h|0;t=r+8|0;a=(Gi[t>>1]|0)*74|0;h=((w-o+h|0)*74|0)+64|0;o=h>>7;Gi[u>>1]=(o+32768|0)>>>0>65535?h>>31^32767:o;u=(n*29|0)+64+(s*55|0)+a|0;o=u>>7;Gi[r>>1]=(o+32768|0)>>>0>65535?u>>31^32767:o;s=(Zi(s,-29)|0)+64+(l*55|0)+a|0;o=s>>7;Gi[t>>1]=(o+32768|0)>>>0>65535?s>>31^32767:o;a=(n*55|0)+64+(l*29|0)-a|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){f=Gi[e>>1]|0;a=e+4|0;t=Gi[a>>1]|0;s=t+f|0;w=e+6|0;l=Gi[w>>1]|0;n=l+t|0;h=f-l|0;o=e+2|0;u=(Gi[o>>1]|0)*74|0;l=((f-t+l|0)*74|0)+2048|0;t=l>>12;Gi[a>>1]=(t+32768|0)>>>0>65535?l>>31^32767:t;a=(s*29|0)+2048+(n*55|0)+u|0;t=a>>12;Gi[e>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=(Zi(n,-29)|0)+2048+(h*55|0)+u|0;t=n>>12;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;u=(s*55|0)+2048+(h*29|0)-u|0;h=u>>12;Gi[w>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function mp(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;i=0;r=e;while(1){s=Gi[r>>1]<<6;n=r+16|0;t=Gi[n>>1]<<6;l=t+s|0;t=s-t|0;s=r+8|0;u=Gi[s>>1]|0;f=r+24|0;o=Gi[f>>1]|0;a=(o*36|0)+(u*83|0)|0;o=(u*36|0)+(Zi(o,-83)|0)|0;u=l+64+a|0;h=u>>7;Gi[r>>1]=(h+32768|0)>>>0>65535?u>>31^32767:h;h=t+64+o|0;u=h>>7;Gi[s>>1]=(u+32768|0)>>>0>65535?h>>31^32767:u;o=t-o+64|0;t=o>>7;Gi[n>>1]=(t+32768|0)>>>0>65535?o>>31^32767:t;a=l-a+64|0;l=a>>7;Gi[f>>1]=(l+32768|0)>>>0>65535?a>>31^32767:l;i=i+1|0;if((i|0)==4){i=0;break}else r=r+2|0}while(1){a=Gi[e>>1]<<6;o=e+4|0;t=Gi[o>>1]<<6;u=t+a|0;t=a-t|0;a=e+2|0;l=Gi[a>>1]|0;h=e+6|0;n=Gi[h>>1]|0;s=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=u+2048+s|0;f=l>>12;Gi[e>>1]=(f+32768|0)>>>0>65535?l>>31^32767:f;f=t+2048+n|0;l=f>>12;Gi[a>>1]=(l+32768|0)>>>0>65535?f>>31^32767:l;n=t-n+2048|0;t=n>>12;Gi[o>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;s=u-s+2048|0;u=s>>12;Gi[h>>1]=(u+32768|0)>>>0>65535?s>>31^32767:u;i=i+1|0;if((i|0)==4)break;else e=e+8|0}return}function pp(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+64|0;w=E+48|0;b=E+32|0;d=E+16|0;v=E;o=(i|0)>8;r=i+4|0;s=w+4|0;u=w+8|0;h=w+12|0;k=0;r=(r|0)>8?8:r;c=e;while(1){Xi[b>>2]=0;Xi[b+4>>2]=0;Xi[b+8>>2]=0;Xi[b+12>>2]=0;a=(r|0)>1;t=0;do{if(a){n=b+(t<<2)|0;f=Xi[n>>2]|0;l=1;do{f=(Zi(Gi[c+(l<<3<<1)>>1]|0,Wi[128076+(l<<2<<5)+t>>0]|0)|0)+f|0;l=l+2|0}while((l|0)<(r|0));Xi[n>>2]=f}t=t+1|0}while((t|0)!=4);l=Gi[c>>1]<<6;a=Gi[c+64>>1]<<6;t=a+l|0;a=l-a|0;l=Gi[c+32>>1]|0;n=Gi[c+96>>1]|0;f=(n*36|0)+(l*83|0)|0;n=(l*36|0)+(Zi(n,-83)|0)|0;l=f+t|0;Xi[w>>2]=l;Xi[s>>2]=n+a;Xi[u>>2]=a-n;Xi[h>>2]=t-f;f=0;while(1){n=Xi[b+(f<<2)>>2]|0;a=l+64+n|0;t=a>>7;Gi[c+(f<<3<<1)>>1]=(t+32768|0)>>>0>65535?a>>31^32767:t;n=l-n+64|0;t=n>>7;Gi[c+(7-f<<3<<1)>>1]=(t+32768|0)>>>0>65535?n>>31^32767:t;f=f+1|0;if((f|0)==4)break;l=Xi[w+(f<<2)>>2]|0}if((r|0)<8)r=(k|0)!=0&(k&3|0)==0?r+-4|0:r;k=k+1|0;if((k|0)==8)break;else c=c+2|0}s=o?8:i;u=(s|0)>1;h=d+4|0;t=d+8|0;o=d+12|0;n=0;while(1){Xi[v>>2]=0;Xi[v+4>>2]=0;Xi[v+8>>2]=0;Xi[v+12>>2]=0;a=0;do{if(u){l=v+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[e+(f<<1)>>1]|0,Wi[128076+(f<<2<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=4);f=Gi[e>>1]<<6;k=Gi[e+8>>1]<<6;c=k+f|0;k=f-k|0;f=Gi[e+4>>1]|0;b=Gi[e+12>>1]|0;r=(b*36|0)+(f*83|0)|0;b=(f*36|0)+(Zi(b,-83)|0)|0;f=r+c|0;Xi[d>>2]=f;Xi[h>>2]=b+k;Xi[t>>2]=k-b;Xi[o>>2]=c-r;r=0;while(1){b=Xi[v+(r<<2)>>2]|0;k=f+2048+b|0;c=k>>12;Gi[e+(r<<1)>>1]=(c+32768|0)>>>0>65535?k>>31^32767:c;b=f-b+2048|0;c=b>>12;Gi[e+(7-r<<1)>>1]=(c+32768|0)>>>0>65535?b>>31^32767:c;r=r+1|0;if((r|0)==4)break;f=Xi[d+(r<<2)>>2]|0}n=n+1|0;if((n|0)==8)break;else e=e+16|0}Ue=E;return}function Fp(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;D=Ue;Ue=Ue+192|0;E=D+160|0;_=D+128|0;g=D+112|0;m=D+96|0;M=D+64|0;R=D+32|0;N=D+16|0;T=D;F=(i|0)>16;n=i+4|0;y=g+4|0;O=g+8|0;A=g+12|0;c=E+28|0;d=m+4|0;v=E+4|0;o=E+24|0;s=m+8|0;u=E+8|0;h=E+20|0;w=m+12|0;k=E+12|0;b=E+16|0;S=0;n=(n|0)>16?16:n;p=e;while(1){Xi[_>>2]=0;Xi[_+4>>2]=0;Xi[_+8>>2]=0;Xi[_+12>>2]=0;Xi[_+16>>2]=0;Xi[_+20>>2]=0;Xi[_+24>>2]=0;Xi[_+28>>2]=0;l=(n|0)>1;t=0;do{if(l){a=_+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[p+(f<<4<<1)>>1]|0,Wi[128076+(f<<1<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=8);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;r=Gi[p+64>>1]|0;f=Gi[p+192>>1]|0;l=Gi[p+320>>1]|0;a=Gi[p+448>>1]|0;t=0;do{C=m+(t<<2)|0;P=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[C>>2]|0)|0;P=(Zi(f,Wi[128460+t>>0]|0)|0)+P|0;P=(Zi(l,Wi[128716+t>>0]|0)|0)+P|0;Xi[C>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+P;t=t+1|0}while((t|0)!=4);a=Gi[p>>1]<<6;P=Gi[p+256>>1]<<6;t=P+a|0;P=a-P|0;a=Gi[p+128>>1]|0;f=Gi[p+384>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+P|0;f=P-f|0;r=t-r|0;t=Xi[m>>2]|0;Xi[E>>2]=t+a;Xi[c>>2]=a-t;t=Xi[d>>2]|0;Xi[v>>2]=t+l;Xi[o>>2]=l-t;t=Xi[s>>2]|0;Xi[u>>2]=t+f;Xi[h>>2]=f-t;t=Xi[w>>2]|0;Xi[k>>2]=t+r;Xi[b>>2]=r-t;t=0;do{P=Xi[E+(t<<2)>>2]|0;C=Xi[_+(t<<2)>>2]|0;I=P+64+C|0;L=I>>7;Gi[p+(t<<4<<1)>>1]=(L+32768|0)>>>0>65535?I>>31^32767:L;C=P-C+64|0;P=C>>7;Gi[p+(15-t<<4<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;t=t+1|0}while((t|0)!=8);if((n|0)<16)n=(S|0)!=0&(S&3|0)==0?n+-4|0:n;S=S+1|0;if((S|0)==16)break;else p=p+2|0}Xi[g>>2]=a;Xi[y>>2]=l;Xi[O>>2]=f;Xi[A>>2]=r;s=F?16:i;u=(s|0)>1;m=N+4|0;p=N+8|0;F=N+12|0;h=M+28|0;w=T+4|0;k=M+4|0;b=M+24|0;c=T+8|0;d=M+8|0;v=M+20|0;E=T+12|0;S=M+12|0;_=M+16|0;t=e;o=0;while(1){Xi[R>>2]=0;Xi[R+4>>2]=0;Xi[R+8>>2]=0;Xi[R+12>>2]=0;Xi[R+16>>2]=0;Xi[R+20>>2]=0;Xi[R+24>>2]=0;Xi[R+28>>2]=0;a=0;do{if(u){l=R+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<1<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[T>>2]=0;Xi[T+4>>2]=0;Xi[T+8>>2]=0;Xi[T+12>>2]=0;r=Gi[t+4>>1]|0;f=Gi[t+12>>1]|0;l=Gi[t+20>>1]|0;a=Gi[t+28>>1]|0;n=0;do{I=T+(n<<2)|0;L=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[I>>2]|0)|0;L=(Zi(f,Wi[128460+n>>0]|0)|0)+L|0;L=(Zi(l,Wi[128716+n>>0]|0)|0)+L|0;Xi[I>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+L;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;I=Gi[t+16>>1]<<6;n=I+a|0;I=a-I|0;a=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+I|0;f=I-f|0;r=n-r|0;n=Xi[T>>2]|0;Xi[M>>2]=n+a;Xi[h>>2]=a-n;n=Xi[w>>2]|0;Xi[k>>2]=n+l;Xi[b>>2]=l-n;n=Xi[c>>2]|0;Xi[d>>2]=n+f;Xi[v>>2]=f-n;n=Xi[E>>2]|0;Xi[S>>2]=n+r;Xi[_>>2]=r-n;n=0;do{I=Xi[M+(n<<2)>>2]|0;L=Xi[R+(n<<2)>>2]|0;C=I+2048+L|0;P=C>>12;Gi[t+(n<<1)>>1]=(P+32768|0)>>>0>65535?C>>31^32767:P;L=I-L+2048|0;I=L>>12;Gi[t+(15-n<<1)>>1]=(I+32768|0)>>>0>65535?L>>31^32767:I;n=n+1|0}while((n|0)!=8);o=o+1|0;if((o|0)==16)break;else t=t+32|0}Xi[N>>2]=a;Xi[m>>2]=l;Xi[p>>2]=f;Xi[F>>2]=r;Ue=D;return}function yp(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;L=Ue;Ue=Ue+320|0;T=L+256|0;D=L+192|0;S=L+160|0;m=L+128|0;M=L+112|0;p=L+96|0;R=L+64|0;N=L+32|0;P=L+16|0;C=L;y=(i|0)>32;n=i+4|0;O=M+4|0;A=M+8|0;g=M+12|0;d=S+28|0;v=p+4|0;E=S+4|0;s=S+24|0;u=p+8|0;h=S+8|0;w=S+20|0;k=p+12|0;b=S+12|0;c=S+16|0;_=0;n=(n|0)>32?32:n;F=e;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));l=(n|0)>1;t=0;do{if(l){a=D+(t<<2)|0;r=Xi[a>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<5<<1)>>1]|0,Wi[128076+(f<<5)+t>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(n|0));Xi[a>>2]=r}t=t+1|0}while((t|0)!=16);Xi[m>>2]=0;Xi[m+4>>2]=0;Xi[m+8>>2]=0;Xi[m+12>>2]=0;Xi[m+16>>2]=0;Xi[m+20>>2]=0;Xi[m+24>>2]=0;Xi[m+28>>2]=0;l=(n|0)/2|0;a=(n|0)>3;o=0;do{if(a){t=m+(o<<2)|0;r=Xi[t>>2]|0;f=1;do{r=(Zi(Gi[F+(f<<6<<1)>>1]|0,Wi[128076+(f<<1<<5)+o>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(l|0));Xi[t>>2]=r}o=o+1|0}while((o|0)!=8);Xi[p>>2]=0;Xi[p+4>>2]=0;Xi[p+8>>2]=0;Xi[p+12>>2]=0;r=Gi[F+256>>1]|0;f=Gi[F+768>>1]|0;l=Gi[F+1280>>1]|0;a=Gi[F+1792>>1]|0;t=0;do{o=p+(t<<2)|0;I=(Zi(r,Wi[128204+t>>0]|0)|0)+(Xi[o>>2]|0)|0;I=(Zi(f,Wi[128460+t>>0]|0)|0)+I|0;I=(Zi(l,Wi[128716+t>>0]|0)|0)+I|0;Xi[o>>2]=(Zi(a,Wi[128972+t>>0]|0)|0)+I;t=t+1|0}while((t|0)!=4);a=Gi[F>>1]<<6;I=Gi[F+1024>>1]<<6;t=I+a|0;I=a-I|0;a=Gi[F+512>>1]|0;f=Gi[F+1536>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+t|0;l=f+I|0;f=I-f|0;r=t-r|0;t=Xi[p>>2]|0;Xi[S>>2]=t+a;Xi[d>>2]=a-t;t=Xi[v>>2]|0;Xi[E>>2]=t+l;Xi[s>>2]=l-t;t=Xi[u>>2]|0;Xi[h>>2]=t+f;Xi[w>>2]=f-t;t=Xi[k>>2]|0;Xi[b>>2]=t+r;Xi[c>>2]=r-t;t=0;do{o=Xi[S+(t<<2)>>2]|0;I=Xi[m+(t<<2)>>2]|0;Xi[T+(t<<2)>>2]=I+o;Xi[T+(15-t<<2)>>2]=o-I;t=t+1|0}while((t|0)!=8);t=0;do{I=Xi[T+(t<<2)>>2]|0;o=Xi[D+(t<<2)>>2]|0;B=I+64+o|0;H=B>>7;Gi[F+(t<<5<<1)>>1]=(H+32768|0)>>>0>65535?B>>31^32767:H;o=I-o+64|0;I=o>>7;Gi[F+(31-t<<5<<1)>>1]=(I+32768|0)>>>0>65535?o>>31^32767:I;t=t+1|0}while((t|0)!=16);if((n|0)<32)n=(_|0)!=0&(_&3|0)==0?n+-4|0:n;_=_+1|0;if((_|0)==32)break;else F=F+2|0}Xi[M>>2]=a;Xi[O>>2]=l;Xi[A>>2]=f;Xi[g>>2]=r;s=y?32:i;u=(s|0)>1;h=(s|0)/2|0;w=(s|0)>3;F=P+4|0;y=P+8|0;O=P+12|0;k=R+28|0;b=C+4|0;c=R+4|0;d=R+24|0;v=C+8|0;E=R+8|0;S=R+20|0;_=C+12|0;m=R+12|0;p=R+16|0;t=e;o=0;while(1){r=D;f=r+64|0;do{Xi[r>>2]=0;r=r+4|0}while((r|0)<(f|0));a=0;do{if(u){l=D+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{r=(Zi(Gi[t+(f<<1)>>1]|0,Wi[128076+(f<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(s|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=16);Xi[N>>2]=0;Xi[N+4>>2]=0;Xi[N+8>>2]=0;Xi[N+12>>2]=0;Xi[N+16>>2]=0;Xi[N+20>>2]=0;Xi[N+24>>2]=0;Xi[N+28>>2]=0;a=0;do{if(w){l=N+(a<<2)|0;r=Xi[l>>2]|0;f=1;do{B=f<<1;r=(Zi(Gi[t+(B<<1)>>1]|0,Wi[128076+(B<<5)+a>>0]|0)|0)+r|0;f=f+2|0}while((f|0)<(h|0));Xi[l>>2]=r}a=a+1|0}while((a|0)!=8);Xi[C>>2]=0;Xi[C+4>>2]=0;Xi[C+8>>2]=0;Xi[C+12>>2]=0;r=Gi[t+8>>1]|0;f=Gi[t+24>>1]|0;l=Gi[t+40>>1]|0;a=Gi[t+56>>1]|0;n=0;do{B=C+(n<<2)|0;H=(Zi(r,Wi[128204+n>>0]|0)|0)+(Xi[B>>2]|0)|0;H=(Zi(f,Wi[128460+n>>0]|0)|0)+H|0;H=(Zi(l,Wi[128716+n>>0]|0)|0)+H|0;Xi[B>>2]=(Zi(a,Wi[128972+n>>0]|0)|0)+H;n=n+1|0}while((n|0)!=4);a=Gi[t>>1]<<6;B=Gi[t+32>>1]<<6;n=B+a|0;B=a-B|0;a=Gi[t+16>>1]|0;f=Gi[t+48>>1]|0;r=(f*36|0)+(a*83|0)|0;f=(a*36|0)+(Zi(f,-83)|0)|0;a=r+n|0;l=f+B|0;f=B-f|0;r=n-r|0;n=Xi[C>>2]|0;Xi[R>>2]=n+a;Xi[k>>2]=a-n;n=Xi[b>>2]|0;Xi[c>>2]=n+l;Xi[d>>2]=l-n;n=Xi[v>>2]|0;Xi[E>>2]=n+f;Xi[S>>2]=f-n;n=Xi[_>>2]|0;Xi[m>>2]=n+r;Xi[p>>2]=r-n;n=0;do{H=Xi[R+(n<<2)>>2]|0;B=Xi[N+(n<<2)>>2]|0;Xi[T+(n<<2)>>2]=B+H;Xi[T+(15-n<<2)>>2]=H-B;n=n+1|0}while((n|0)!=8);n=0;do{B=Xi[T+(n<<2)>>2]|0;H=Xi[D+(n<<2)>>2]|0;e=B+2048+H|0;I=e>>12;Gi[t+(n<<1)>>1]=(I+32768|0)>>>0>65535?e>>31^32767:I;H=B-H+2048|0;B=H>>12;Gi[t+(31-n<<1)>>1]=(B+32768|0)>>>0>65535?H>>31^32767:B;n=n+1|0}while((n|0)!=16);o=o+1|0;if((o|0)==32)break;else t=t+64|0}Xi[P>>2]=a;Xi[F>>2]=l;Xi[y>>2]=f;Xi[O>>2]=r;Ue=L;return}function Op(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+32|0)>>>6&65535;r=0;do{f=r<<2;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;r=r+1|0}while((r|0)!=4);return}function Ap(e){e=e|0;var i=0,r=0,f=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+32|0)>>>6&65535;r=0;do{f=r<<3;Gi[e+(f<<1)>>1]=i;Gi[e+((f|1)<<1)>>1]=i;Gi[e+((f|2)<<1)>>1]=i;Gi[e+((f|3)<<1)>>1]=i;Gi[e+((f|4)<<1)>>1]=i;Gi[e+((f|5)<<1)>>1]=i;Gi[e+((f|6)<<1)>>1]=i;Gi[e+((f|7)<<1)>>1]=i;r=r+1|0}while((r|0)!=8);return}function gp(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+32|0)>>>6&65535;l=0;do{r=l<<4;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=16);l=l+1|0}while((l|0)!=16);return}function Mp(e){e=e|0;var i=0,r=0,f=0,l=0;i=((((Gi[e>>1]|0)+1|0)>>>1)+32|0)>>>6&65535;l=0;do{r=l<<5;f=0;do{Gi[e+(f+r<<1)>>1]=i;f=f+1|0}while((f|0)!=32);l=l+1|0}while((l|0)!=32);return}function Rp(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+128|0;u=h;o=u;s=o+128|0;do{Xi[o>>2]=0;o=o+4|0}while((o|0)<(s|0));Xi[u+((a&31)<<2)>>2]=Gi[l+2>>1];Xi[u+((a+1&31)<<2)>>2]=Gi[l+4>>1];Xi[u+((a+2&31)<<2)>>2]=Gi[l+6>>1];Xi[u+((a+3&31)<<2)>>2]=Gi[l+8>>1];if((t|0)>0){o=(n|0)>0;l=0;while(1){if(o){a=0;do{s=qi[i+a>>0]|0;s=s+(Xi[u+(s>>>3<<2)>>2]|0)|0;Wi[e+a>>0]=s>>>0>255?0-s>>31:s;a=a+1|0}while((a|0)!=(n|0))}l=l+1|0;if((l|0)==(t|0))break;else{e=e+r|0;i=i+f|0}}}Ue=h;return}function Tp(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0;u=((Wi[129100+(l<<2)+1>>0]|0)*160|0)+(Wi[129100+(l<<2)>>0]|0)|0;o=((Wi[129100+(l<<2)+3>>0]|0)*160|0)+(Wi[129100+(l<<2)+2>>0]|0)|0;if((n|0)>0){s=(a|0)>0;t=0;while(1){if(s){l=0;do{h=Wi[i+l>>0]|0;k=Wi[i+(u+l)>>0]|0;w=Wi[i+(o+l)>>0]|0;h=(Gi[f+(qi[129116+((((h&255)<(k&255))<<31>>31)+2+((h&255)>(k&255)&1)+(((h&255)<(w&255))<<31>>31)+((h&255)>(w&255)&1))>>0]<<1)>>1]|0)+(h&255)|0;Wi[e+l>>0]=h>>>0>255?0-h>>31:h;l=l+1|0}while((l|0)!=(a|0))}t=t+1|0;if((t|0)==(n|0))break;else{e=e+r|0;i=i+160|0}}}return}function Np(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0;w=l+112+(o*10|0)|0;o=Xi[l+100+(o<<2)>>2]|0;if((o|0)!=1){if(Xi[a>>2]|0){h=Gi[w>>1]|0;if((t|0)>0){u=0;do{l=(qi[i+(Zi(u,f)|0)>>0]|0)+h|0;Wi[e+(Zi(u,r)|0)>>0]=l>>>0>255?0-l>>31:l;u=u+1|0}while((u|0)!=(t|0));h=1}else h=1}else h=0;if(Xi[a+8>>2]|0){s=Gi[w>>1]|0;n=n+-1|0;if((t|0)>0){u=0;do{l=(qi[i+((Zi(u,f)|0)+n)>>0]|0)+s|0;Wi[e+((Zi(u,r)|0)+n)>>0]=l>>>0>255?0-l>>31:l;u=u+1|0}while((u|0)!=(t|0))}}if(o|0){u=n;k=9}}else{h=0;u=n;k=9}if((k|0)==9){if(Xi[a+4>>2]|0?(b=Gi[w>>1]|0,(h|0)<(u|0)):0){n=h;do{k=(qi[i+n>>0]|0)+b|0;Wi[e+n>>0]=k>>>0>255?0-k>>31:k;n=n+1|0}while((n|0)!=(u|0))}if(Xi[a+12>>2]|0?(c=Gi[w>>1]|0,v=t+-1|0,d=Zi(v,r)|0,v=Zi(v,f)|0,(h|0)<(u|0)):0)do{f=(qi[i+(h+v)>>0]|0)+c|0;Wi[e+(h+d)>>0]=f>>>0>255?0-f>>31:f;h=h+1|0}while((h|0)!=(u|0))}return}function Dp(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;var w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;c=l+112+(o*10|0)|0;m=Xi[l+100+(o<<2)>>2]|0;A=(m|0)!=1;if(A){if(Xi[a>>2]|0){o=Gi[c>>1]|0;if((t|0)>0){l=0;do{O=(qi[i+(Zi(l,f)|0)>>0]|0)+o|0;Wi[e+(Zi(l,r)|0)>>0]=O>>>0>255?0-O>>31:O;l=l+1|0}while((l|0)!=(t|0));E=1}else E=1}else E=0;if(Xi[a+8>>2]|0){b=Gi[c>>1]|0;o=n+-1|0;if((t|0)>0){l=0;do{O=(qi[i+((Zi(l,f)|0)+o)>>0]|0)+b|0;Wi[e+((Zi(l,r)|0)+o)>>0]=O>>>0>255?0-O>>31:O;l=l+1|0}while((l|0)!=(t|0))}}else o=n;if(!m){m=0;y=0;n=0;a=0;F=0;O=0;_=h+1|0;l=0;v=h+2|0;d=h+3|0;b=0;S=o}else p=10}else{E=0;o=n;p=10}if((p|0)==10){v=a+4|0;if(Xi[v>>2]|0){l=Gi[c>>1]|0;if((E|0)<(o|0)){b=E;do{O=(qi[i+b>>0]|0)+l|0;Wi[e+b>>0]=O>>>0>255?0-O>>31:O;b=b+1|0}while((b|0)!=(o|0));p=1}else p=1}else p=0;if(Xi[a+12>>2]|0){d=Gi[c>>1]|0;l=t+-1|0;b=Zi(l,r)|0;n=Zi(l,f)|0;if((E|0)<(o|0)){c=E;do{O=(qi[i+(c+n)>>0]|0)+d|0;Wi[e+(c+b)>>0]=O>>>0>255?0-O>>31:O;c=c+1|0}while((c|0)!=(o|0));t=l}else t=l}S=(m|0)==2;if(S&(Wi[h>>0]|0)==0?(Xi[a>>2]|0)==0:0)l=(Xi[v>>2]|0)==0;else l=0;c=l&1;_=h+1|0;l=(m|0)==3;if(l&(Wi[_>>0]|0)==0)if(!(Xi[v>>2]|0)){l=1;b=(Xi[a+8>>2]|0)==0}else{l=1;b=0}else b=0;n=b&1;v=h+2|0;if(S&(Wi[v>>0]|0)==0?(Xi[a+8>>2]|0)==0:0)b=(Xi[a+12>>2]|0)==0;else b=0;b=b&1;d=h+3|0;if(l&(Wi[d>>0]|0)==0?(Xi[a>>2]|0)==0:0){m=(Xi[a+12>>2]|0)==0;y=c;a=b;F=1;O=S;b=p;S=o}else{m=0;y=c;a=b;F=1;O=S;b=p;S=o}}c=m&1;if(A&(Wi[s>>0]|0)!=0?(g=b+y|0,M=t-c|0,(g|0)<(M|0)):0){o=g;do{Wi[e+(Zi(o,r)|0)>>0]=Wi[i+(Zi(o,f)|0)>>0]|0;o=o+1|0}while((o|0)!=(M|0))}if(A&(Wi[s+1>>0]|0)!=0?(R=n+b|0,T=t-a|0,(R|0)<(T|0)):0){b=S+-1|0;o=R;do{Wi[e+(b+(Zi(o,r)|0))>>0]=Wi[i+(b+(Zi(o,f)|0))>>0]|0;o=o+1|0}while((o|0)!=(T|0))}if(F&(Wi[u>>0]|0)!=0?(k=E+y|0,N=S-n|0,(k|0)<(N|0)):0)do{Wi[e+k>>0]=Wi[i+k>>0]|0;k=k+1|0}while((k|0)!=(N|0));if(F&(Wi[u+1>>0]|0)!=0?(w=c+E|0,D=S-a|0,(w|0)<(D|0)):0){o=t+-1|0;k=Zi(o,f)|0;o=Zi(o,r)|0;do{Wi[e+(w+o)>>0]=Wi[i+(w+k)>>0]|0;w=w+1|0}while((w|0)!=(D|0))}if(O&(Wi[h>>0]|0)!=0)Wi[e>>0]=Wi[i>>0]|0;if(l&(Wi[_>>0]|0)!=0){h=S+-1|0;Wi[e+h>>0]=Wi[i+h>>0]|0}if(O&(Wi[v>>0]|0)!=0){h=t+-1|0;D=S+-1|0;Wi[e+(D+(Zi(h,r)|0))>>0]=Wi[i+(D+(Zi(h,f)|0))>>0]|0}if(l&(Wi[d>>0]|0)!=0){h=t+-1|0;Wi[e+(Zi(h,r)|0)>>0]=Wi[i+(Zi(h,f)|0)>>0]|0}return}function Cp(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0;if((f|0)>0){t=(n|0)>0;l=i;i=0;while(1){if(t){a=0;do{Gi[e+(a<<1)>>1]=(qi[l+a>>0]|0)<<6;a=a+1|0}while((a|0)!=(n|0))}i=i+1|0;if((i|0)==(f|0))break;else{e=e+128|0;l=l+r|0}}}return}function Pp(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;l=l+-1|0;d=48+(l<<4)|0;if((f|0)>0){v=(n|0)>0;E=48+(l<<4)+1|0;S=48+(l<<4)+2|0;_=48+(l<<4)+3|0;m=48+(l<<4)+4|0;p=48+(l<<4)+5|0;F=48+(l<<4)+6|0;c=48+(l<<4)+7|0;b=0;while(1){if(v){l=Wi[d>>0]|0;a=Wi[E>>0]|0;t=Wi[S>>0]|0;o=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[c>>0]|0;k=0;do{O=Zi(qi[i+(k+-3)>>0]|0,l)|0;O=(Zi(qi[i+(k+-2)>>0]|0,a)|0)+O|0;O=O+(Zi(qi[i+(k+-1)>>0]|0,t)|0)|0;O=O+(Zi(qi[i+k>>0]|0,o)|0)|0;y=k;k=k+1|0;O=O+(Zi(qi[i+k>>0]|0,s)|0)|0;O=O+(Zi(qi[i+(y+2)>>0]|0,u)|0)|0;O=O+(Zi(qi[i+(y+3)>>0]|0,h)|0)|0;Gi[e+(y<<1)>>1]=O+(Zi(qi[i+(y+4)>>0]|0,w)|0)}while((k|0)!=(n|0))}b=b+1|0;if((b|0)==(f|0))break;else{e=e+128|0;i=i+r|0}}}return}function Lp(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;l=a+-1|0;v=48+(l<<4)|0;if((f|0)>0){_=(n|0)>0;m=r*3|0;p=48+(l<<4)+1|0;F=r<<1;y=48+(l<<4)+2|0;O=48+(l<<4)+3|0;A=48+(l<<4)+4|0;E=48+(l<<4)+5|0;S=48+(l<<4)+6|0;c=48+(l<<4)+7|0;d=r<<2;b=0;while(1){if(_){l=Wi[v>>0]|0;a=Wi[p>>0]|0;t=Wi[y>>0]|0;o=Wi[O>>0]|0;s=Wi[A>>0]|0;u=Wi[E>>0]|0;h=Wi[S>>0]|0;w=Wi[c>>0]|0;k=0;do{g=Zi(qi[i+(k-m)>>0]|0,l)|0;g=(Zi(qi[i+(k-F)>>0]|0,a)|0)+g|0;g=g+(Zi(qi[i+(k-r)>>0]|0,t)|0)|0;g=g+(Zi(qi[i+k>>0]|0,o)|0)|0;g=g+(Zi(qi[i+(k+r)>>0]|0,s)|0)|0;g=g+(Zi(qi[i+(k+F)>>0]|0,u)|0)|0;g=g+(Zi(qi[i+(k+m)>>0]|0,h)|0)|0;Gi[e+(k<<1)>>1]=g+(Zi(qi[i+(k+d)>>0]|0,w)|0);k=k+1|0}while((k|0)!=(n|0))}b=b+1|0;if((b|0)==(f|0))break;else{e=e+128|0;i=i+r|0}}}return}function Ip(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;L=Ue;Ue=Ue+9088|0;P=L;l=l+-1|0;A=48+(l<<4)|0;if((f|0)>-7){R=(n|0)>0;T=48+(l<<4)+1|0;N=48+(l<<4)+2|0;D=48+(l<<4)+3|0;C=48+(l<<4)+4|0;g=48+(l<<4)+5|0;M=48+(l<<4)+6|0;y=48+(l<<4)+7|0;O=f+6|0;_=i+(Zi(r,-3)|0)|0;m=P;F=0;while(1){if(R){i=Wi[A>>0]|0;t=Wi[T>>0]|0;o=Wi[N>>0]|0;s=Wi[D>>0]|0;u=Wi[C>>0]|0;h=Wi[g>>0]|0;w=Wi[M>>0]|0;k=Wi[y>>0]|0;l=Wi[_+-3>>0]|0;b=Wi[_+-2>>0]|0;c=Wi[_+-1>>0]|0;d=Wi[_>>0]|0;v=Wi[_+1>>0]|0;E=Wi[_+2>>0]|0;S=Wi[_+3>>0]|0;p=0;while(1){I=(Zi(b&255,t)|0)+(Zi(l&255,i)|0)+(Zi(c&255,o)|0)+(Zi(d&255,s)|0)+(Zi(v&255,u)|0)+(Zi(E&255,h)|0)+(Zi(S&255,w)|0)|0;l=Wi[_+(p+4)>>0]|0;Gi[m+(p<<1)>>1]=I+(Zi(l&255,k)|0);p=p+1|0;if((p|0)==(n|0))break;else{z=S;x=E;U=v;B=d;H=c;I=b;S=l;E=z;v=x;d=U;c=B;b=H;l=I}}}if((F|0)<(O|0)){_=_+r|0;m=m+128|0;F=F+1|0}else break}l=a+-1|0;v=48+(l<<4)|0;if((f|0)>0){E=(n|0)>0;S=48+(l<<4)+1|0;_=48+(l<<4)+2|0;m=48+(l<<4)+3|0;p=48+(l<<4)+4|0;F=48+(l<<4)+5|0;y=48+(l<<4)+6|0;d=48+(l<<4)+7|0;k=P+384|0;c=0;while(1){if(E){l=Wi[v>>0]|0;i=Wi[S>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[d>>0]|0;b=0;do{z=Zi(Gi[k+(b+-192<<1)>>1]|0,l)|0;z=(Zi(Gi[k+(b+-128<<1)>>1]|0,i)|0)+z|0;z=z+(Zi(Gi[k+(b+-64<<1)>>1]|0,t)|0)|0;z=z+(Zi(Gi[k+(b<<1)>>1]|0,o)|0)|0;z=z+(Zi(Gi[k+(b+64<<1)>>1]|0,s)|0)|0;z=z+(Zi(Gi[k+(b+128<<1)>>1]|0,u)|0)|0;z=z+(Zi(Gi[k+(b+192<<1)>>1]|0,h)|0)|0;Gi[e+(b<<1)>>1]=(z+(Zi(Gi[k+(b+256<<1)>>1]|0,w)|0)|0)>>>6;b=b+1|0}while((b|0)!=(n|0))}c=c+1|0;if((c|0)==(f|0))break;else{e=e+128|0;k=k+128|0}}}}Ue=L;return}function Hp(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;if((l|0)>0){a=e;e=0;while(1){qT(a|0,r|0,t|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+i|0;r=r+f|0}}}return}function Bp(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;a=a+-1|0;v=48+(a<<4)|0;if((l|0)>0){E=(t|0)>0;S=48+(a<<4)+1|0;_=48+(a<<4)+2|0;m=48+(a<<4)+3|0;p=48+(a<<4)+4|0;F=48+(a<<4)+5|0;y=48+(a<<4)+6|0;d=48+(a<<4)+7|0;c=0;while(1){if(E){a=Wi[v>>0]|0;n=Wi[S>>0]|0;o=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[d>>0]|0;b=0;do{D=Zi(qi[r+(b+-3)>>0]|0,a)|0;N=Zi(qi[r+(b+-2)>>0]|0,n)|0;T=Zi(qi[r+(b+-1)>>0]|0,o)|0;R=Zi(qi[r+b>>0]|0,s)|0;O=b;b=b+1|0;M=Zi(qi[r+b>>0]|0,u)|0;g=Zi(qi[r+(O+2)>>0]|0,h)|0;A=Zi(qi[r+(O+3)>>0]|0,w)|0;A=D+32+N+T+R+M+g+A+(Zi(qi[r+(O+4)>>0]|0,k)|0)>>6;Wi[e+O>>0]=A>>>0>255?0-A>>31:A}while((b|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function Up(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;a=n+-1|0;E=48+(a<<4)|0;if((l|0)>0){m=(t|0)>0;p=f*3|0;F=48+(a<<4)+1|0;y=f<<1;O=48+(a<<4)+2|0;A=48+(a<<4)+3|0;g=48+(a<<4)+4|0;S=48+(a<<4)+5|0;_=48+(a<<4)+6|0;d=48+(a<<4)+7|0;v=f<<2;c=0;while(1){if(m){a=Wi[E>>0]|0;n=Wi[F>>0]|0;o=Wi[O>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[S>>0]|0;w=Wi[_>>0]|0;k=Wi[d>>0]|0;b=0;do{P=Zi(qi[r+(b-p)>>0]|0,a)|0;C=Zi(qi[r+(b-y)>>0]|0,n)|0;D=Zi(qi[r+(b-f)>>0]|0,o)|0;N=Zi(qi[r+b>>0]|0,s)|0;T=Zi(qi[r+(b+f)>>0]|0,u)|0;R=Zi(qi[r+(b+y)>>0]|0,h)|0;M=Zi(qi[r+(b+p)>>0]|0,w)|0;M=P+32+C+D+N+T+R+M+(Zi(qi[r+(b+v)>>0]|0,k)|0)>>6;Wi[e+b>>0]=M>>>0>255?0-M>>31:M;b=b+1|0}while((b|0)!=(t|0))}c=c+1|0;if((c|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function xp(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;I=Ue;Ue=Ue+9088|0;L=I;a=a+-1|0;g=48+(a<<4)|0;if((l|0)>-7){T=(t|0)>0;N=48+(a<<4)+1|0;D=48+(a<<4)+2|0;C=48+(a<<4)+3|0;P=48+(a<<4)+4|0;M=48+(a<<4)+5|0;R=48+(a<<4)+6|0;O=48+(a<<4)+7|0;A=l+6|0;m=r+(Zi(f,-3)|0)|0;p=L;y=0;while(1){if(T){r=Wi[g>>0]|0;o=Wi[N>>0]|0;s=Wi[D>>0]|0;u=Wi[C>>0]|0;h=Wi[P>>0]|0;w=Wi[M>>0]|0;k=Wi[R>>0]|0;b=Wi[O>>0]|0;a=Wi[m+-3>>0]|0;c=Wi[m+-2>>0]|0;d=Wi[m+-1>>0]|0;v=Wi[m>>0]|0;E=Wi[m+1>>0]|0;S=Wi[m+2>>0]|0;_=Wi[m+3>>0]|0;F=0;while(1){H=(Zi(c&255,o)|0)+(Zi(a&255,r)|0)+(Zi(d&255,s)|0)+(Zi(v&255,u)|0)+(Zi(E&255,h)|0)+(Zi(S&255,w)|0)+(Zi(_&255,k)|0)|0;a=Wi[m+(F+4)>>0]|0;Gi[p+(F<<1)>>1]=H+(Zi(a&255,b)|0);F=F+1|0;if((F|0)==(t|0))break;else{V=_;z=S;x=E;U=v;B=d;H=c;_=a;S=V;E=z;v=x;d=U;c=B;a=H}}}if((y|0)<(A|0)){m=m+f|0;p=p+128|0;y=y+1|0}else break}a=n+-1|0;E=48+(a<<4)|0;if((l|0)>0){S=(t|0)>0;_=48+(a<<4)+1|0;m=48+(a<<4)+2|0;p=48+(a<<4)+3|0;F=48+(a<<4)+4|0;y=48+(a<<4)+5|0;O=48+(a<<4)+6|0;v=48+(a<<4)+7|0;b=L+384|0;d=0;while(1){if(S){a=Wi[E>>0]|0;r=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[O>>0]|0;k=Wi[v>>0]|0;c=0;do{V=Zi(Gi[b+(c+-192<<1)>>1]|0,a)|0;V=(Zi(Gi[b+(c+-128<<1)>>1]|0,r)|0)+V|0;V=V+(Zi(Gi[b+(c+-64<<1)>>1]|0,o)|0)|0;V=V+(Zi(Gi[b+(c<<1)>>1]|0,s)|0)|0;V=V+(Zi(Gi[b+(c+64<<1)>>1]|0,u)|0)|0;V=V+(Zi(Gi[b+(c+128<<1)>>1]|0,h)|0)|0;V=V+(Zi(Gi[b+(c+192<<1)>>1]|0,w)|0)|0;V=(V+(Zi(Gi[b+(c+256<<1)>>1]|0,k)|0)>>6)+32>>6;Wi[e+c>>0]=V>>>0>255?0-V>>31:V;c=c+1|0}while((c|0)!=(t|0))}d=d+1|0;if((d|0)==(l|0))break;else{e=e+i|0;b=b+128|0}}}}Ue=I;return}function zp(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0;k=a+6|0;h=1<<a+5;if((l|0)>0){w=(u|0)>0;n=n<<6;o=r;a=0;while(1){if(w){s=0;do{r=((Zi(n,qi[o+s>>0]|0)|0)+h>>k)+t|0;Wi[e+s>>0]=r>>>0>255?0-r>>31:r;s=s+1|0}while((s|0)!=(u|0))}a=a+1|0;if((a|0)==(l|0))break;else{e=e+i|0;o=o+f|0}}}return}function Vp(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;o=o+-1|0;g=48+(o<<4)|0;M=a+6|0;p=1<<a+5;if((l|0)>0){F=(u|0)>0;y=48+(o<<4)+1|0;O=48+(o<<4)+2|0;A=48+(o<<4)+3|0;S=48+(o<<4)+4|0;_=48+(o<<4)+5|0;m=48+(o<<4)+6|0;E=48+(o<<4)+7|0;v=0;while(1){if(F){o=Wi[g>>0]|0;s=Wi[y>>0]|0;a=Wi[O>>0]|0;h=Wi[A>>0]|0;w=Wi[S>>0]|0;k=Wi[_>>0]|0;b=Wi[m>>0]|0;c=Wi[E>>0]|0;d=0;do{T=Zi(qi[r+(d+-3)>>0]|0,o)|0;T=(Zi(qi[r+(d+-2)>>0]|0,s)|0)+T|0;T=T+(Zi(qi[r+(d+-1)>>0]|0,a)|0)|0;T=T+(Zi(qi[r+d>>0]|0,h)|0)|0;R=d;d=d+1|0;T=T+(Zi(qi[r+d>>0]|0,w)|0)|0;T=T+(Zi(qi[r+(R+2)>>0]|0,k)|0)|0;T=T+(Zi(qi[r+(R+3)>>0]|0,b)|0)|0;T=((Zi(T+(Zi(qi[r+(R+4)>>0]|0,c)|0)|0,n)|0)+p>>M)+t|0;Wi[e+R>>0]=T>>>0>255?0-T>>31:T}while((d|0)!=(u|0))}v=v+1|0;if((v|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function Yp(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0;o=s+-1|0;T=48+(o<<4)|0;N=a+6|0;O=1<<a+5;if((l|0)>0){A=(u|0)>0;g=f*3|0;M=48+(o<<4)+1|0;R=f<<1;_=48+(o<<4)+2|0;m=48+(o<<4)+3|0;p=48+(o<<4)+4|0;F=48+(o<<4)+5|0;y=48+(o<<4)+6|0;E=48+(o<<4)+7|0;S=f<<2;v=0;while(1){if(A){o=Wi[T>>0]|0;s=Wi[M>>0]|0;a=Wi[_>>0]|0;h=Wi[m>>0]|0;w=Wi[p>>0]|0;k=Wi[F>>0]|0;b=Wi[y>>0]|0;c=Wi[E>>0]|0;d=0;do{D=Zi(qi[r+(d-g)>>0]|0,o)|0;D=(Zi(qi[r+(d-R)>>0]|0,s)|0)+D|0;D=D+(Zi(qi[r+(d-f)>>0]|0,a)|0)|0;D=D+(Zi(qi[r+d>>0]|0,h)|0)|0;D=D+(Zi(qi[r+(d+f)>>0]|0,w)|0)|0;D=D+(Zi(qi[r+(d+R)>>0]|0,k)|0)|0;D=D+(Zi(qi[r+(d+g)>>0]|0,b)|0)|0;D=((Zi(D+(Zi(qi[r+(d+S)>>0]|0,c)|0)|0,n)|0)+O>>N)+t|0;Wi[e+d>>0]=D>>>0>255?0-D>>31:D;d=d+1|0}while((d|0)!=(u|0))}v=v+1|0;if((v|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function jp(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0;x=Ue;Ue=Ue+9088|0;H=x;U=a+6|0;B=1<<a+5;a=o+-1|0;P=48+(a<<4)|0;if((l|0)>-7){L=(u|0)>0;I=48+(a<<4)+1|0;R=48+(a<<4)+2|0;T=48+(a<<4)+3|0;N=48+(a<<4)+4|0;D=48+(a<<4)+5|0;C=48+(a<<4)+6|0;g=48+(a<<4)+7|0;M=l+6|0;F=r+(Zi(f,-3)|0)|0;y=H;A=0;while(1){if(L){o=Wi[P>>0]|0;r=Wi[I>>0]|0;h=Wi[R>>0]|0;w=Wi[T>>0]|0;k=Wi[N>>0]|0;b=Wi[D>>0]|0;c=Wi[C>>0]|0;d=Wi[g>>0]|0;a=Wi[F+-3>>0]|0;v=Wi[F+-2>>0]|0;E=Wi[F+-1>>0]|0;S=Wi[F>>0]|0;_=Wi[F+1>>0]|0;m=Wi[F+2>>0]|0;p=Wi[F+3>>0]|0;O=0;while(1){z=(Zi(v&255,r)|0)+(Zi(a&255,o)|0)+(Zi(E&255,h)|0)+(Zi(S&255,w)|0)+(Zi(_&255,k)|0)+(Zi(m&255,b)|0)+(Zi(p&255,c)|0)|0;a=Wi[F+(O+4)>>0]|0;Gi[y+(O<<1)>>1]=z+(Zi(a&255,d)|0);O=O+1|0;if((O|0)==(u|0))break;else{W=p;K=m;j=_;Y=S;V=E;z=v;p=a;m=W;_=K;S=j;E=Y;v=V;a=z}}}if((A|0)<(M|0)){F=F+f|0;y=y+128|0;A=A+1|0}else break}a=s+-1|0;_=48+(a<<4)|0;if((l|0)>0){m=(u|0)>0;p=48+(a<<4)+1|0;F=48+(a<<4)+2|0;y=48+(a<<4)+3|0;O=48+(a<<4)+4|0;A=48+(a<<4)+5|0;g=48+(a<<4)+6|0;S=48+(a<<4)+7|0;d=H+384|0;E=0;while(1){if(m){o=Wi[_>>0]|0;r=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[O>>0]|0;b=Wi[A>>0]|0;c=Wi[g>>0]|0;a=Wi[S>>0]|0;v=0;do{W=Zi(Gi[d+(v+-192<<1)>>1]|0,o)|0;W=(Zi(Gi[d+(v+-128<<1)>>1]|0,r)|0)+W|0;W=W+(Zi(Gi[d+(v+-64<<1)>>1]|0,h)|0)|0;W=W+(Zi(Gi[d+(v<<1)>>1]|0,w)|0)|0;W=W+(Zi(Gi[d+(v+64<<1)>>1]|0,k)|0)|0;W=W+(Zi(Gi[d+(v+128<<1)>>1]|0,b)|0)|0;W=W+(Zi(Gi[d+(v+192<<1)>>1]|0,c)|0)|0;W=((Zi(W+(Zi(Gi[d+(v+256<<1)>>1]|0,a)|0)>>6,n)|0)+B>>U)+t|0;Wi[e+v>>0]=W>>>0>255?0-W>>31:W;v=v+1|0}while((v|0)!=(u|0))}E=E+1|0;if((E|0)==(l|0))break;else{e=e+i|0;d=d+128|0}}}}Ue=x;return}function Kp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0;if((a|0)>0){u=(o|0)>0;s=e;n=r;e=0;while(1){if(u){t=0;do{r=(Gi[l+(t<<1)>>1]|0)+64+(qi[n+t>>0]<<6)>>7;Wi[s+t>>0]=r>>>0>255?0-r>>31:r;t=t+1|0}while((t|0)!=(o|0))}e=e+1|0;if((e|0)==(a|0))break;else{l=l+128|0;s=s+i|0;n=n+f|0}}}return}function Wp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0;n=n+-1|0;E=48+(n<<4)|0;if((a|0)>0){S=(o|0)>0;_=48+(n<<4)+1|0;m=48+(n<<4)+2|0;p=48+(n<<4)+3|0;F=48+(n<<4)+4|0;y=48+(n<<4)+5|0;O=48+(n<<4)+6|0;v=48+(n<<4)+7|0;d=0;while(1){if(S){n=Wi[E>>0]|0;t=Wi[_>>0]|0;s=Wi[m>>0]|0;u=Wi[p>>0]|0;h=Wi[F>>0]|0;w=Wi[y>>0]|0;k=Wi[O>>0]|0;b=Wi[v>>0]|0;c=0;do{P=Zi(qi[r+(c+-3)>>0]|0,n)|0;C=Zi(qi[r+(c+-2)>>0]|0,t)|0;D=Zi(qi[r+(c+-1)>>0]|0,s)|0;N=Zi(qi[r+c>>0]|0,u)|0;A=c;c=c+1|0;T=Zi(qi[r+c>>0]|0,h)|0;R=Zi(qi[r+(A+2)>>0]|0,w)|0;M=Zi(qi[r+(A+3)>>0]|0,k)|0;g=Zi(qi[r+(A+4)>>0]|0,b)|0;g=P+64+C+D+N+T+R+M+g+(Gi[l+(A<<1)>>1]|0)>>7;Wi[e+A>>0]=g>>>0>255?0-g>>31:g}while((c|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function Gp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;n=t+-1|0;S=48+(n<<4)|0;if((a|0)>0){p=(o|0)>0;F=f*3|0;y=48+(n<<4)+1|0;O=f<<1;A=48+(n<<4)+2|0;g=48+(n<<4)+3|0;M=48+(n<<4)+4|0;_=48+(n<<4)+5|0;m=48+(n<<4)+6|0;v=48+(n<<4)+7|0;E=f<<2;d=0;while(1){if(p){n=Wi[S>>0]|0;t=Wi[y>>0]|0;s=Wi[A>>0]|0;u=Wi[g>>0]|0;h=Wi[M>>0]|0;w=Wi[_>>0]|0;k=Wi[m>>0]|0;b=Wi[v>>0]|0;c=0;do{I=Zi(qi[r+(c-F)>>0]|0,n)|0;L=Zi(qi[r+(c-O)>>0]|0,t)|0;P=Zi(qi[r+(c-f)>>0]|0,s)|0;C=Zi(qi[r+c>>0]|0,u)|0;D=Zi(qi[r+(c+f)>>0]|0,h)|0;N=Zi(qi[r+(c+O)>>0]|0,w)|0;T=Zi(qi[r+(c+F)>>0]|0,k)|0;R=Zi(qi[r+(c+E)>>0]|0,b)|0;R=I+64+L+P+C+D+N+T+R+(Gi[l+(c<<1)>>1]|0)>>7;Wi[e+c>>0]=R>>>0>255?0-R>>31:R;c=c+1|0}while((c|0)!=(o|0))}d=d+1|0;if((d|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function Xp(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;H=Ue;Ue=Ue+9088|0;I=H;n=n+-1|0;M=48+(n<<4)|0;if((a|0)>-7){N=(o|0)>0;D=48+(n<<4)+1|0;C=48+(n<<4)+2|0;P=48+(n<<4)+3|0;L=48+(n<<4)+4|0;R=48+(n<<4)+5|0;T=48+(n<<4)+6|0;A=48+(n<<4)+7|0;g=a+6|0;p=r+(Zi(f,-3)|0)|0;F=I;O=0;while(1){if(N){r=Wi[M>>0]|0;s=Wi[D>>0]|0;u=Wi[C>>0]|0;h=Wi[P>>0]|0;w=Wi[L>>0]|0;k=Wi[R>>0]|0;b=Wi[T>>0]|0;c=Wi[A>>0]|0;n=Wi[p+-3>>0]|0;d=Wi[p+-2>>0]|0;v=Wi[p+-1>>0]|0;E=Wi[p>>0]|0;S=Wi[p+1>>0]|0;_=Wi[p+2>>0]|0;m=Wi[p+3>>0]|0;y=0;while(1){B=(Zi(d&255,s)|0)+(Zi(n&255,r)|0)+(Zi(v&255,u)|0)+(Zi(E&255,h)|0)+(Zi(S&255,w)|0)+(Zi(_&255,k)|0)+(Zi(m&255,b)|0)|0;n=Wi[p+(y+4)>>0]|0;Gi[F+(y<<1)>>1]=B+(Zi(n&255,c)|0);y=y+1|0;if((y|0)==(o|0))break;else{Y=m;V=_;z=S;x=E;U=v;B=d;m=n;_=Y;S=V;E=z;v=x;d=U;n=B}}}if((O|0)<(g|0)){p=p+f|0;F=F+128|0;O=O+1|0}else break}n=t+-1|0;S=48+(n<<4)|0;if((a|0)>0){_=(o|0)>0;m=48+(n<<4)+1|0;p=48+(n<<4)+2|0;F=48+(n<<4)+3|0;y=48+(n<<4)+4|0;O=48+(n<<4)+5|0;A=48+(n<<4)+6|0;E=48+(n<<4)+7|0;c=I+384|0;v=0;while(1){if(_){n=Wi[S>>0]|0;r=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[y>>0]|0;w=Wi[O>>0]|0;k=Wi[A>>0]|0;b=Wi[E>>0]|0;d=0;do{Y=Zi(Gi[c+(d+-192<<1)>>1]|0,n)|0;Y=(Zi(Gi[c+(d+-128<<1)>>1]|0,r)|0)+Y|0;Y=Y+(Zi(Gi[c+(d+-64<<1)>>1]|0,s)|0)|0;Y=Y+(Zi(Gi[c+(d<<1)>>1]|0,u)|0)|0;Y=Y+(Zi(Gi[c+(d+64<<1)>>1]|0,h)|0)|0;Y=Y+(Zi(Gi[c+(d+128<<1)>>1]|0,w)|0)|0;Y=Y+(Zi(Gi[c+(d+192<<1)>>1]|0,k)|0)|0;Y=Y+(Zi(Gi[c+(d+256<<1)>>1]|0,b)|0)>>6;Y=(Gi[l+(d<<1)>>1]|0)+64+Y>>7;Wi[e+d>>0]=Y>>>0>255?0-Y>>31:Y;d=d+1|0}while((d|0)!=(o|0))}v=v+1|0;if((v|0)==(a|0))break;else{l=l+128|0;e=e+i|0;c=c+128|0}}}}Ue=H;return}function qp(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0;c=n+7|0;if((a|0)>0){d=(k|0)>0;b=o<<6;n=s+1+u<<n+6;h=r;o=0;while(1){if(d){w=0;do{r=Zi(b,qi[h+w>>0]|0)|0;r=(Zi(Gi[l+(w<<1)>>1]|0,t)|0)+n+r>>c;Wi[e+w>>0]=r>>>0>255?0-r>>31:r;w=w+1|0}while((w|0)!=(k|0))}o=o+1|0;if((o|0)==(a|0))break;else{l=l+128|0;e=e+i|0;h=h+f|0}}}return}function Jp(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;h=h+-1|0;m=48+(h<<4)|0;y=n+7|0;if((a|0)>0){O=(k|0)>0;A=48+(h<<4)+1|0;g=48+(h<<4)+2|0;M=48+(h<<4)+3|0;R=48+(h<<4)+4|0;p=48+(h<<4)+5|0;F=48+(h<<4)+6|0;_=48+(h<<4)+7|0;S=s+1+u<<n+6;E=0;while(1){if(O){h=Wi[m>>0]|0;w=Wi[A>>0]|0;n=Wi[g>>0]|0;s=Wi[M>>0]|0;u=Wi[R>>0]|0;b=Wi[p>>0]|0;c=Wi[F>>0]|0;d=Wi[_>>0]|0;v=0;do{N=Zi(qi[r+(v+-3)>>0]|0,h)|0;N=(Zi(qi[r+(v+-2)>>0]|0,w)|0)+N|0;N=N+(Zi(qi[r+(v+-1)>>0]|0,n)|0)|0;N=N+(Zi(qi[r+v>>0]|0,s)|0)|0;T=v;v=v+1|0;N=N+(Zi(qi[r+v>>0]|0,u)|0)|0;N=N+(Zi(qi[r+(T+2)>>0]|0,b)|0)|0;N=N+(Zi(qi[r+(T+3)>>0]|0,c)|0)|0;N=Zi(N+(Zi(qi[r+(T+4)>>0]|0,d)|0)|0,o)|0;N=(Zi(Gi[l+(T<<1)>>1]|0,t)|0)+S+N>>y;Wi[e+T>>0]=N>>>0>255?0-N>>31:N}while((v|0)!=(k|0))}E=E+1|0;if((E|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function Zp(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;h=w+-1|0;p=48+(h<<4)|0;g=n+7|0;if((a|0)>0){M=(k|0)>0;R=f*3|0;T=48+(h<<4)+1|0;N=f<<1;D=48+(h<<4)+2|0;F=48+(h<<4)+3|0;y=48+(h<<4)+4|0;O=48+(h<<4)+5|0;A=48+(h<<4)+6|0;_=48+(h<<4)+7|0;m=f<<2;S=s+1+u<<n+6;E=0;while(1){if(M){h=Wi[p>>0]|0;w=Wi[T>>0]|0;n=Wi[D>>0]|0;s=Wi[F>>0]|0;u=Wi[y>>0]|0;b=Wi[O>>0]|0;c=Wi[A>>0]|0;d=Wi[_>>0]|0;v=0;do{C=Zi(qi[r+(v-R)>>0]|0,h)|0;C=(Zi(qi[r+(v-N)>>0]|0,w)|0)+C|0;C=C+(Zi(qi[r+(v-f)>>0]|0,n)|0)|0;C=C+(Zi(qi[r+v>>0]|0,s)|0)|0;C=C+(Zi(qi[r+(v+f)>>0]|0,u)|0)|0;C=C+(Zi(qi[r+(v+N)>>0]|0,b)|0)|0;C=C+(Zi(qi[r+(v+R)>>0]|0,c)|0)|0;C=Zi(C+(Zi(qi[r+(v+m)>>0]|0,d)|0)|0,o)|0;C=(Zi(Gi[l+(v<<1)>>1]|0,t)|0)+S+C>>g;Wi[e+v>>0]=C>>>0>255?0-C>>31:C;v=v+1|0}while((v|0)!=(k|0))}E=E+1|0;if((E|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function Qp(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0;Y=Ue;Ue=Ue+9088|0;z=Y;V=n+7|0;x=n+6|0;n=h+-1|0;I=48+(n<<4)|0;if((a|0)>-7){H=(k|0)>0;B=48+(n<<4)+1|0;U=48+(n<<4)+2|0;D=48+(n<<4)+3|0;C=48+(n<<4)+4|0;P=48+(n<<4)+5|0;L=48+(n<<4)+6|0;T=48+(n<<4)+7|0;N=a+6|0;A=r+(Zi(f,-3)|0)|0;g=z;R=0;while(1){if(H){h=Wi[I>>0]|0;r=Wi[B>>0]|0;b=Wi[U>>0]|0;c=Wi[D>>0]|0;d=Wi[C>>0]|0;v=Wi[P>>0]|0;E=Wi[L>>0]|0;S=Wi[T>>0]|0;n=Wi[A+-3>>0]|0;_=Wi[A+-2>>0]|0;m=Wi[A+-1>>0]|0;p=Wi[A>>0]|0;F=Wi[A+1>>0]|0;y=Wi[A+2>>0]|0;O=Wi[A+3>>0]|0;M=0;while(1){j=(Zi(_&255,r)|0)+(Zi(n&255,h)|0)+(Zi(m&255,b)|0)+(Zi(p&255,c)|0)+(Zi(F&255,d)|0)+(Zi(y&255,v)|0)+(Zi(O&255,E)|0)|0;n=Wi[A+(M+4)>>0]|0;Gi[g+(M<<1)>>1]=j+(Zi(n&255,S)|0);M=M+1|0;if((M|0)==(k|0))break;else{q=O;X=y;G=F;W=p;K=m;j=_;O=n;y=q;F=X;p=G;m=W;_=K;n=j}}}if((R|0)<(N|0)){A=A+f|0;g=g+128|0;R=R+1|0}else break}n=w+-1|0;y=48+(n<<4)|0;if((a|0)>0){O=(k|0)>0;A=48+(n<<4)+1|0;g=48+(n<<4)+2|0;M=48+(n<<4)+3|0;R=48+(n<<4)+4|0;T=48+(n<<4)+5|0;N=48+(n<<4)+6|0;F=48+(n<<4)+7|0;p=s+1+u<<x;S=z+384|0;m=0;while(1){if(O){r=Wi[y>>0]|0;b=Wi[A>>0]|0;c=Wi[g>>0]|0;d=Wi[M>>0]|0;v=Wi[R>>0]|0;E=Wi[T>>0]|0;n=Wi[N>>0]|0;h=Wi[F>>0]|0;_=0;do{q=Zi(Gi[S+(_+-192<<1)>>1]|0,r)|0;q=(Zi(Gi[S+(_+-128<<1)>>1]|0,b)|0)+q|0;q=q+(Zi(Gi[S+(_+-64<<1)>>1]|0,c)|0)|0;q=q+(Zi(Gi[S+(_<<1)>>1]|0,d)|0)|0;q=q+(Zi(Gi[S+(_+64<<1)>>1]|0,v)|0)|0;q=q+(Zi(Gi[S+(_+128<<1)>>1]|0,E)|0)|0;q=q+(Zi(Gi[S+(_+192<<1)>>1]|0,n)|0)|0;q=Zi(q+(Zi(Gi[S+(_+256<<1)>>1]|0,h)|0)>>6,o)|0;q=(Zi(Gi[l+(_<<1)>>1]|0,t)|0)+p+q>>V;Wi[e+_>>0]=q>>>0>255?0-q>>31:q;_=_+1|0}while((_|0)!=(k|0))}m=m+1|0;if((m|0)==(a|0))break;else{l=l+128|0;e=e+i|0;S=S+128|0}}}}Ue=Y;return}function $p(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;l=l+-1|0;w=16+(l<<2)|0;if((f|0)>0){k=(n|0)>0;b=16+(l<<2)+1|0;c=16+(l<<2)+2|0;h=16+(l<<2)+3|0;u=0;while(1){if(k){o=Wi[w>>0]|0;l=Wi[b>>0]|0;a=Wi[c>>0]|0;t=Wi[h>>0]|0;s=0;do{v=Zi(qi[i+(s+-1)>>0]|0,o)|0;v=(Zi(qi[i+s>>0]|0,l)|0)+v|0;d=s;s=s+1|0;v=v+(Zi(qi[i+s>>0]|0,a)|0)|0;Gi[e+(d<<1)>>1]=v+(Zi(qi[i+(d+2)>>0]|0,t)|0)}while((s|0)!=(n|0))}u=u+1|0;if((u|0)==(f|0))break;else{e=e+128|0;i=i+r|0}}}return}function eF(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;l=a+-1|0;k=16+(l<<2)|0;if((f|0)>0){b=(n|0)>0;c=16+(l<<2)+1|0;d=16+(l<<2)+2|0;h=16+(l<<2)+3|0;w=r<<1;u=0;while(1){if(b){o=Wi[k>>0]|0;l=Wi[c>>0]|0;a=Wi[d>>0]|0;t=Wi[h>>0]|0;s=0;do{v=Zi(qi[i+(s-r)>>0]|0,o)|0;v=(Zi(qi[i+s>>0]|0,l)|0)+v|0;v=v+(Zi(qi[i+(s+r)>>0]|0,a)|0)|0;Gi[e+(s<<1)>>1]=v+(Zi(qi[i+(s+w)>>0]|0,t)|0);s=s+1|0}while((s|0)!=(n|0))}u=u+1|0;if((u|0)==(f|0))break;else{e=e+128|0;i=i+r|0}}}return}function iF(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;F=Ue;Ue=Ue+8576|0;p=F;l=l+-1|0;E=16+(l<<2)|0;if((f|0)>-3){S=(n|0)>0;_=16+(l<<2)+1|0;m=16+(l<<2)+2|0;d=16+(l<<2)+3|0;v=f+2|0;w=i+(0-r)|0;k=p;c=0;while(1){if(S){i=Wi[E>>0]|0;t=Wi[_>>0]|0;o=Wi[m>>0]|0;s=Wi[d>>0]|0;l=Wi[w+-1>>0]|0;u=Wi[w>>0]|0;h=Wi[w+1>>0]|0;b=0;while(1){y=(Zi(u&255,t)|0)+(Zi(l&255,i)|0)+(Zi(h&255,o)|0)|0;l=Wi[w+(b+2)>>0]|0;Gi[k+(b<<1)>>1]=y+(Zi(l&255,s)|0);b=b+1|0;if((b|0)==(n|0))break;else{O=h;y=u;h=l;u=O;l=y}}}if((c|0)<(v|0)){w=w+r|0;k=k+128|0;c=c+1|0}else break}l=a+-1|0;k=16+(l<<2)|0;if((f|0)>0){b=(n|0)>0;c=16+(l<<2)+1|0;d=16+(l<<2)+2|0;w=16+(l<<2)+3|0;s=p+128|0;h=0;while(1){if(b){l=Wi[k>>0]|0;i=Wi[c>>0]|0;t=Wi[d>>0]|0;o=Wi[w>>0]|0;u=0;do{O=Zi(Gi[s+(u+-64<<1)>>1]|0,l)|0;O=(Zi(Gi[s+(u<<1)>>1]|0,i)|0)+O|0;O=O+(Zi(Gi[s+(u+64<<1)>>1]|0,t)|0)|0;Gi[e+(u<<1)>>1]=(O+(Zi(Gi[s+(u+128<<1)>>1]|0,o)|0)|0)>>>6;u=u+1|0}while((u|0)!=(n|0))}h=h+1|0;if((h|0)==(f|0))break;else{e=e+128|0;s=s+128|0}}}}Ue=F;return}function rF(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;a=a+-1|0;k=16+(a<<2)|0;if((l|0)>0){b=(t|0)>0;c=16+(a<<2)+1|0;d=16+(a<<2)+2|0;w=16+(a<<2)+3|0;h=0;while(1){if(b){s=Wi[k>>0]|0;a=Wi[c>>0]|0;n=Wi[d>>0]|0;o=Wi[w>>0]|0;u=0;do{_=Zi(qi[r+(u+-1)>>0]|0,s)|0;S=Zi(qi[r+u>>0]|0,a)|0;v=u;u=u+1|0;E=Zi(qi[r+u>>0]|0,n)|0;E=_+32+S+E+(Zi(qi[r+(v+2)>>0]|0,o)|0)>>6;Wi[e+v>>0]=E>>>0>255?0-E>>31:E}while((u|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function fF(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;a=n+-1|0;b=16+(a<<2)|0;if((l|0)>0){c=(t|0)>0;d=16+(a<<2)+1|0;v=16+(a<<2)+2|0;w=16+(a<<2)+3|0;k=f<<1;h=0;while(1){if(c){s=Wi[b>>0]|0;a=Wi[d>>0]|0;n=Wi[v>>0]|0;o=Wi[w>>0]|0;u=0;do{_=Zi(qi[r+(u-f)>>0]|0,s)|0;S=Zi(qi[r+u>>0]|0,a)|0;E=Zi(qi[r+(u+f)>>0]|0,n)|0;E=_+32+S+E+(Zi(qi[r+(u+k)>>0]|0,o)|0)>>6;Wi[e+u>>0]=E>>>0>255?0-E>>31:E;u=u+1|0}while((u|0)!=(t|0))}h=h+1|0;if((h|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function lF(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;y=Ue;Ue=Ue+8576|0;F=y;a=a+-1|0;S=16+(a<<2)|0;if((l|0)>-3){_=(t|0)>0;m=16+(a<<2)+1|0;p=16+(a<<2)+2|0;v=16+(a<<2)+3|0;E=l+2|0;k=r+(0-f)|0;b=F;d=0;while(1){if(_){r=Wi[S>>0]|0;o=Wi[m>>0]|0;s=Wi[p>>0]|0;u=Wi[v>>0]|0;a=Wi[k+-1>>0]|0;h=Wi[k>>0]|0;w=Wi[k+1>>0]|0;c=0;while(1){O=(Zi(h&255,o)|0)+(Zi(a&255,r)|0)+(Zi(w&255,s)|0)|0;a=Wi[k+(c+2)>>0]|0;Gi[b+(c<<1)>>1]=O+(Zi(a&255,u)|0);c=c+1|0;if((c|0)==(t|0))break;else{A=w;O=h;w=a;h=A;a=O}}}if((d|0)<(E|0)){k=k+f|0;b=b+128|0;d=d+1|0}else break}a=n+-1|0;b=16+(a<<2)|0;if((l|0)>0){c=(t|0)>0;d=16+(a<<2)+1|0;v=16+(a<<2)+2|0;k=16+(a<<2)+3|0;u=F+128|0;w=0;while(1){if(c){a=Wi[b>>0]|0;r=Wi[d>>0]|0;o=Wi[v>>0]|0;s=Wi[k>>0]|0;h=0;do{A=Zi(Gi[u+(h+-64<<1)>>1]|0,a)|0;A=(Zi(Gi[u+(h<<1)>>1]|0,r)|0)+A|0;A=A+(Zi(Gi[u+(h+64<<1)>>1]|0,o)|0)|0;A=(A+(Zi(Gi[u+(h+128<<1)>>1]|0,s)|0)>>6)+32>>6;Wi[e+h>>0]=A>>>0>255?0-A>>31:A;h=h+1|0}while((h|0)!=(t|0))}w=w+1|0;if((w|0)==(l|0))break;else{e=e+i|0;u=u+128|0}}}}Ue=y;return}function aF(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;o=o+-1|0;S=16+(o<<2)|0;_=a+6|0;c=1<<a+5;if((l|0)>0){d=(u|0)>0;v=16+(o<<2)+1|0;E=16+(o<<2)+2|0;b=16+(o<<2)+3|0;k=0;while(1){if(d){o=Wi[S>>0]|0;s=Wi[v>>0]|0;a=Wi[E>>0]|0;h=Wi[b>>0]|0;w=0;do{p=Zi(qi[r+(w+-1)>>0]|0,o)|0;p=(Zi(qi[r+w>>0]|0,s)|0)+p|0;m=w;w=w+1|0;p=p+(Zi(qi[r+w>>0]|0,a)|0)|0;p=((Zi(p+(Zi(qi[r+(m+2)>>0]|0,h)|0)|0,n)|0)+c>>_)+t|0;Wi[e+m>>0]=p>>>0>255?0-p>>31:p}while((w|0)!=(u|0))}k=k+1|0;if((k|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function nF(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;o=s+-1|0;_=16+(o<<2)|0;m=a+6|0;d=1<<a+5;if((l|0)>0){v=(u|0)>0;E=16+(o<<2)+1|0;S=16+(o<<2)+2|0;c=16+(o<<2)+3|0;b=f<<1;k=0;while(1){if(v){o=Wi[_>>0]|0;s=Wi[E>>0]|0;a=Wi[S>>0]|0;h=Wi[c>>0]|0;w=0;do{p=Zi(qi[r+(w-f)>>0]|0,o)|0;p=(Zi(qi[r+w>>0]|0,s)|0)+p|0;p=p+(Zi(qi[r+(w+f)>>0]|0,a)|0)|0;p=((Zi(p+(Zi(qi[r+(w+b)>>0]|0,h)|0)|0,n)|0)+d>>m)+t|0;Wi[e+w>>0]=p>>>0>255?0-p>>31:p;w=w+1|0}while((w|0)!=(u|0))}k=k+1|0;if((k|0)==(l|0))break;else{e=e+i|0;r=r+f|0}}}return}function tF(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;M=Ue;Ue=Ue+8576|0;O=M;o=o+-1|0;y=16+(o<<2)|0;g=a+6|0;A=1<<a+5;if((l|0)>-3){p=(u|0)>0;F=16+(o<<2)+1|0;m=16+(o<<2)+2|0;S=16+(o<<2)+3|0;_=l+2|0;c=r+(0-f)|0;d=O;E=0;while(1){if(p){a=Wi[y>>0]|0;r=Wi[F>>0]|0;h=Wi[m>>0]|0;w=Wi[S>>0]|0;o=Wi[c+-1>>0]|0;k=Wi[c>>0]|0;b=Wi[c+1>>0]|0;v=0;while(1){R=(Zi(k&255,r)|0)+(Zi(o&255,a)|0)+(Zi(b&255,h)|0)|0;o=Wi[c+(v+2)>>0]|0;Gi[d+(v<<1)>>1]=R+(Zi(o&255,w)|0);v=v+1|0;if((v|0)==(u|0))break;else{T=b;R=k;b=o;k=T;o=R}}}if((E|0)<(_|0)){c=c+f|0;d=d+128|0;E=E+1|0}else break}o=s+-1|0;d=16+(o<<2)|0;if((l|0)>0){v=(u|0)>0;E=16+(o<<2)+1|0;S=16+(o<<2)+2|0;c=16+(o<<2)+3|0;w=O+128|0;b=0;while(1){if(v){o=Wi[d>>0]|0;a=Wi[E>>0]|0;r=Wi[S>>0]|0;h=Wi[c>>0]|0;k=0;do{T=Zi(Gi[w+(k+-64<<1)>>1]|0,o)|0;T=(Zi(Gi[w+(k<<1)>>1]|0,a)|0)+T|0;T=T+(Zi(Gi[w+(k+64<<1)>>1]|0,r)|0)|0;T=((Zi(T+(Zi(Gi[w+(k+128<<1)>>1]|0,h)|0)>>6,n)|0)+A>>g)+t|0;Wi[e+k>>0]=T>>>0>255?0-T>>31:T;k=k+1|0}while((k|0)!=(u|0))}b=b+1|0;if((b|0)==(l|0))break;else{e=e+i|0;w=w+128|0}}}}Ue=M;return}function oF(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;n=n+-1|0;b=16+(n<<2)|0;if((a|0)>0){c=(o|0)>0;d=16+(n<<2)+1|0;v=16+(n<<2)+2|0;k=16+(n<<2)+3|0;w=0;while(1){if(c){u=Wi[b>>0]|0;n=Wi[d>>0]|0;t=Wi[v>>0]|0;s=Wi[k>>0]|0;h=0;do{p=Zi(qi[r+(h+-1)>>0]|0,u)|0;m=Zi(qi[r+h>>0]|0,n)|0;E=h;h=h+1|0;_=Zi(qi[r+h>>0]|0,t)|0;S=Zi(qi[r+(E+2)>>0]|0,s)|0;S=p+64+m+_+S+(Gi[l+(E<<1)>>1]|0)>>7;Wi[e+E>>0]=S>>>0>255?0-S>>31:S}while((h|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function sF(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;n=t+-1|0;c=16+(n<<2)|0;if((a|0)>0){d=(o|0)>0;v=16+(n<<2)+1|0;E=16+(n<<2)+2|0;k=16+(n<<2)+3|0;b=f<<1;w=0;while(1){if(d){u=Wi[c>>0]|0;n=Wi[v>>0]|0;t=Wi[E>>0]|0;s=Wi[k>>0]|0;h=0;do{p=Zi(qi[r+(h-f)>>0]|0,u)|0;m=Zi(qi[r+h>>0]|0,n)|0;_=Zi(qi[r+(h+f)>>0]|0,t)|0;S=Zi(qi[r+(h+b)>>0]|0,s)|0;S=p+64+m+_+S+(Gi[l+(h<<1)>>1]|0)>>7;Wi[e+h>>0]=S>>>0>255?0-S>>31:S;h=h+1|0}while((h|0)!=(o|0))}w=w+1|0;if((w|0)==(a|0))break;else{l=l+128|0;e=e+i|0;r=r+f|0}}}return}function uF(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;O=Ue;Ue=Ue+8576|0;y=O;n=n+-1|0;_=16+(n<<2)|0;if((a|0)>-3){m=(o|0)>0;p=16+(n<<2)+1|0;F=16+(n<<2)+2|0;E=16+(n<<2)+3|0;S=a+2|0;b=r+(0-f)|0;c=y;v=0;while(1){if(m){r=Wi[_>>0]|0;s=Wi[p>>0]|0;u=Wi[F>>0]|0;h=Wi[E>>0]|0;n=Wi[b+-1>>0]|0;w=Wi[b>>0]|0;k=Wi[b+1>>0]|0;d=0;while(1){A=(Zi(w&255,s)|0)+(Zi(n&255,r)|0)+(Zi(k&255,u)|0)|0;n=Wi[b+(d+2)>>0]|0;Gi[c+(d<<1)>>1]=A+(Zi(n&255,h)|0);d=d+1|0;if((d|0)==(o|0))break;else{g=k;A=w;k=n;w=g;n=A}}}if((v|0)<(S|0)){b=b+f|0;c=c+128|0;v=v+1|0}else break}n=t+-1|0;c=16+(n<<2)|0;if((a|0)>0){d=(o|0)>0;v=16+(n<<2)+1|0;E=16+(n<<2)+2|0;b=16+(n<<2)+3|0;h=y+128|0;k=0;while(1){if(d){n=Wi[c>>0]|0;r=Wi[v>>0]|0;s=Wi[E>>0]|0;u=Wi[b>>0]|0;w=0;do{g=Zi(Gi[h+(w+-64<<1)>>1]|0,n)|0;g=(Zi(Gi[h+(w<<1)>>1]|0,r)|0)+g|0;g=g+(Zi(Gi[h+(w+64<<1)>>1]|0,s)|0)|0;g=g+(Zi(Gi[h+(w+128<<1)>>1]|0,u)|0)>>6;g=(Gi[l+(w<<1)>>1]|0)+64+g>>7;Wi[e+w>>0]=g>>>0>255?0-g>>31:g;w=w+1|0}while((w|0)!=(o|0))}k=k+1|0;if((k|0)==(a|0))break;else{l=l+128|0;e=e+i|0;h=h+128|0}}}}Ue=O;return}function hF(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;h=h+-1|0;v=16+(h<<2)|0;E=n+7|0;if((a|0)>0){S=(k|0)>0;_=16+(h<<2)+1|0;m=16+(h<<2)+2|0;d=16+(h<<2)+3|0;c=s+1+u<<n+6;b=e;u=r;r=0;while(1){if(S){h=Wi[v>>0]|0;w=Wi[_>>0]|0;n=Wi[m>>0]|0;s=Wi[d>>0]|0;e=0;do{F=Zi(qi[u+(e+-1)>>0]|0,h)|0;F=(Zi(qi[u+e>>0]|0,w)|0)+F|0;p=e;e=e+1|0;F=F+(Zi(qi[u+e>>0]|0,n)|0)|0;F=Zi(F+(Zi(qi[u+(p+2)>>0]|0,s)|0)|0,o)|0;F=(Zi(Gi[l+(p<<1)>>1]|0,t)|0)+c+F>>E;Wi[b+p>>0]=F>>>0>255?0-F>>31:F}while((e|0)!=(k|0))}r=r+1|0;if((r|0)==(a|0))break;else{l=l+128|0;b=b+i|0;u=u+f|0}}}return}function wF(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;h=w+-1|0;E=16+(h<<2)|0;S=n+7|0;if((a|0)>0){_=(k|0)>0;m=16+(h<<2)+1|0;p=16+(h<<2)+2|0;d=16+(h<<2)+3|0;v=f<<1;c=s+1+u<<n+6;b=e;u=r;r=0;while(1){if(_){h=Wi[E>>0]|0;w=Wi[m>>0]|0;n=Wi[p>>0]|0;s=Wi[d>>0]|0;e=0;do{F=Zi(qi[u+(e-f)>>0]|0,h)|0;F=(Zi(qi[u+e>>0]|0,w)|0)+F|0;F=F+(Zi(qi[u+(e+f)>>0]|0,n)|0)|0;F=Zi(F+(Zi(qi[u+(e+v)>>0]|0,s)|0)|0,o)|0;F=(Zi(Gi[l+(e<<1)>>1]|0,t)|0)+c+F>>S;Wi[b+e>>0]=F>>>0>255?0-F>>31:F;e=e+1|0}while((e|0)!=(k|0))}r=r+1|0;if((r|0)==(a|0))break;else{l=l+128|0;b=b+i|0;u=u+f|0}}}return}function kF(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;var b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;N=Ue;Ue=Ue+8576|0;R=N;h=h+-1|0;g=16+(h<<2)|0;T=n+7|0;M=n+6|0;if((a|0)>-3){y=(k|0)>0;O=16+(h<<2)+1|0;A=16+(h<<2)+2|0;p=16+(h<<2)+3|0;F=a+2|0;E=r+(0-f)|0;S=R;m=0;while(1){if(y){n=Wi[g>>0]|0;r=Wi[O>>0]|0;b=Wi[A>>0]|0;c=Wi[p>>0]|0;h=Wi[E+-1>>0]|0;d=Wi[E>>0]|0;v=Wi[E+1>>0]|0;_=0;while(1){D=(Zi(d&255,r)|0)+(Zi(h&255,n)|0)+(Zi(v&255,b)|0)|0;h=Wi[E+(_+2)>>0]|0;Gi[S+(_<<1)>>1]=D+(Zi(h&255,c)|0);_=_+1|0;if((_|0)==(k|0))break;else{C=v;D=d;v=h;d=C;h=D}}}if((m|0)<(F|0)){E=E+f|0;S=S+128|0;m=m+1|0}else break}h=w+-1|0;_=16+(h<<2)|0;if((a|0)>0){m=(k|0)>0;p=16+(h<<2)+1|0;F=16+(h<<2)+2|0;S=16+(h<<2)+3|0;E=s+1+u<<M;c=R+128|0;v=0;while(1){if(m){h=Wi[_>>0]|0;n=Wi[p>>0]|0;r=Wi[F>>0]|0;b=Wi[S>>0]|0;d=0;do{C=Zi(Gi[c+(d+-64<<1)>>1]|0,h)|0;C=(Zi(Gi[c+(d<<1)>>1]|0,n)|0)+C|0;C=C+(Zi(Gi[c+(d+64<<1)>>1]|0,r)|0)|0;C=Zi(C+(Zi(Gi[c+(d+128<<1)>>1]|0,b)|0)>>6,o)|0;C=(Zi(Gi[l+(d<<1)>>1]|0,t)|0)+E+C>>T;Wi[e+d>>0]=C>>>0>255?0-C>>31:C;d=d+1|0}while((d|0)!=(k|0))}v=v+1|0;if((v|0)==(a|0))break;else{l=l+128|0;e=e+i|0;c=c+128|0}}}}Ue=N;return}function bF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;cF(e,i,1,r,f,l,a);return}function cF(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0;K=Zi(i,-3)|0;W=Zi(i,-2)|0;ie=0-i|0;fe=i<<1;le=r*3|0;ae=le+K|0;ne=le+W|0;te=le-i|0;oe=le+fe|0;se=le+i|0;G=f>>3;X=f>>2;q=Zi(i,-4)|0;J=i*3|0;Z=le+q|0;Q=le+J|0;$=(f>>1)+f>>3;ee=r<<2;re=r<<2;V=K+r|0;Y=W+r|0;j=r-i|0;L=r+i|0;I=fe+r|0;H=J+r|0;P=K+r|0;B=W+r|0;U=r-i|0;x=r+i|0;z=fe+r|0;ue=0;do{s=Wi[e+K>>0]|0;u=Wi[e+W>>0]|0;b=Wi[e+ie>>0]|0;t=b&255;p=(s&255)-((u&255)<<1)+t|0;p=(p|0)>-1?p:0-p|0;v=Wi[e+fe>>0]|0;d=Wi[e+i>>0]|0;c=Wi[e>>0]|0;o=c&255;y=(v&255)-((d&255)<<1)+o|0;y=(y|0)>-1?y:0-y|0;h=qi[e+te>>0]|0;F=(qi[e+ae>>0]|0)-((qi[e+ne>>0]|0)<<1)+h|0;F=(F|0)>-1?F:0-F|0;w=qi[e+le>>0]|0;O=(qi[e+oe>>0]|0)-((qi[e+se>>0]|0)<<1)+w|0;O=(O|0)>-1?O:0-O|0;k=y+p|0;S=O+F|0;C=Xi[l+(ue<<2)>>2]|0;m=Wi[a+ue>>0]|0;A=Wi[n+ue>>0]|0;do{if((S+k|0)<(f|0)){_=(C*5|0)+1>>1;D=(qi[e+q>>0]|0)-t|0;E=Wi[e+J>>0]|0;N=(E&255)-o|0;if((((((N|0)>-1?N:0-N|0)+((D|0)>-1?D:0-D|0)|0)<(G|0)?(D=t-o|0,(((D|0)>-1?D:0-D|0)|0)<(_|0)):0)?(D=(qi[e+Z>>0]|0)-h|0,N=(qi[e+Q>>0]|0)-w|0,(((N|0)>-1?N:0-N|0)+((D|0)>-1?D:0-D|0)|0)<(G|0)):0)?(D=h-w|0,((k<<1|0)<(X|0)?(((D|0)>-1?D:0-D|0)|0)<(_|0):0)&(S<<1|0)<(X|0)):0){F=C<<1;m=m<<24>>24==0;p=0-F|0;_=A<<24>>24==0;k=0;S=e;while(1){w=s&255;h=u&255;u=b&255;s=c&255;o=d&255;t=v&255;if(m){C=qi[S+q>>0]|0;D=((w+4+o+(u+h+s<<1)|0)>>>3)-u|0;Wi[S+ie>>0]=((D|0)<(p|0)?p:(D|0)>(F|0)?F:D)+u;D=((w+2+h+u+s|0)>>>2)-h|0;Wi[S+W>>0]=((D|0)<(p|0)?p:(D|0)>(F|0)?F:D)+h;C=((w*3|0)+4+h+u+s+(C<<1)>>3)-w|0;Wi[S+K>>0]=((C|0)<(p|0)?p:(C|0)>(F|0)?F:C)+w}if(_){C=((h+4+t+(s+u+o<<1)|0)>>>3)-s|0;Wi[S>>0]=((C|0)<(p|0)?p:(C|0)>(F|0)?F:C)+s;C=((u+2+s+o+t|0)>>>2)-o|0;Wi[S+i>>0]=((C|0)<(p|0)?p:(C|0)>(F|0)?F:C)+o;C=((u+4+s+o+(t*3|0)+((E&255)<<1)|0)>>>3)-t|0;Wi[S+fe>>0]=((C|0)<(p|0)?p:(C|0)>(F|0)?F:C)+t}o=S+r|0;t=k+1|0;if((t|0)==4)break;s=Wi[S+V>>0]|0;u=Wi[S+Y>>0]|0;b=Wi[S+j>>0]|0;c=Wi[o>>0]|0;d=Wi[S+L>>0]|0;v=Wi[S+I>>0]|0;E=Wi[S+H>>0]|0;k=t;S=o}e=e+re|0;break}T=C>>1;N=C*10|0;D=0-C|0;R=m<<24>>24==0;M=A<<24>>24==0;g=R&(F+p|0)<($|0);A=0-T|0;F=M&(O+y|0)<($|0);t=0;p=e;while(1){_=s&255;m=p+W|0;E=u&255;S=p+ie|0;k=b&255;h=c&255;w=p+i|0;u=d&255;s=v&255;o=((h-k|0)*9|0)+8+(Zi(u-E|0,-3)|0)>>4;if((((o|0)>-1?o:0-o|0)|0)<(N|0)){o=(o|0)<(D|0)?D:(o|0)>(C|0)?C:o;if(R){O=o+k|0;Wi[S>>0]=O>>>0>255?0-O>>31:O}if(M){O=h-o|0;Wi[p>>0]=O>>>0>255?0-O>>31:O}if(g){O=((_+1+k|0)>>>1)-E+o>>1;O=((O|0)<(A|0)?A:(O|0)>(T|0)?T:O)+E|0;Wi[m>>0]=O>>>0>255?0-O>>31:O}if(F){O=((h+1+s|0)>>>1)-u-o>>1;O=((O|0)<(A|0)?A:(O|0)>(T|0)?T:O)+u|0;Wi[w>>0]=O>>>0>255?0-O>>31:O}}o=p+r|0;t=t+1|0;if((t|0)==4)break;s=Wi[p+P>>0]|0;u=Wi[p+B>>0]|0;b=Wi[p+U>>0]|0;c=Wi[o>>0]|0;d=Wi[p+x>>0]|0;v=Wi[p+z>>0]|0;p=o}e=e+re|0}else e=e+ee|0}while(0);ue=ue+1|0}while((ue|0)!=2);return}function dF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;cF(e,1,i,r,f,l,a);return}function vF(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;EF(e,i,1,r,f,l);return}function EF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;v=Zi(i,-2)|0;E=0-i|0;d=r<<2;S=0;while(1){w=Xi[f+(S<<2)>>2]|0;if((w|0)>=1){k=0-w|0;t=(Wi[l+S>>0]|0)==0;o=(Wi[a+S>>0]|0)==0;b=0;c=e;while(1){s=c+E|0;u=qi[s>>0]|0;h=qi[c>>0]|0;n=(qi[c+v>>0]|0)+4-(qi[c+i>>0]|0)+(h-u<<2)>>3;n=(n|0)<(k|0)?k:(n|0)>(w|0)?w:n;if(t){u=n+u|0;Wi[s>>0]=u>>>0>255?0-u>>31:u}if(o){h=h-n|0;Wi[c>>0]=h>>>0>255?0-h>>31:h}b=b+1|0;if((b|0)==4)break;else c=c+r|0}}S=S+1|0;if((S|0)==2)break;else e=e+d|0}return}function SF(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;EF(e,1,i,r,f,l);return}function _F(e,i){e=e|0;i=i|0;switch(i|0){case 9:{Xi[e>>2]=132;Xi[e+4>>2]=133;Xi[e+8>>2]=134;Xi[e+12>>2]=135;Xi[e+16>>2]=136;Xi[e+20>>2]=137;Xi[e+24>>2]=138;Xi[e+28>>2]=139;Xi[e+32>>2]=49;Xi[e+36>>2]=50;Xi[e+40>>2]=51;Xi[e+44>>2]=52;Xi[e+48>>2]=53;break}case 10:{Xi[e>>2]=140;Xi[e+4>>2]=141;Xi[e+8>>2]=142;Xi[e+12>>2]=143;Xi[e+16>>2]=144;Xi[e+20>>2]=145;Xi[e+24>>2]=146;Xi[e+28>>2]=147;Xi[e+32>>2]=54;Xi[e+36>>2]=55;Xi[e+40>>2]=56;Xi[e+44>>2]=57;Xi[e+48>>2]=58;break}case 12:{Xi[e>>2]=148;Xi[e+4>>2]=149;Xi[e+8>>2]=150;Xi[e+12>>2]=151;Xi[e+16>>2]=152;Xi[e+20>>2]=153;Xi[e+24>>2]=154;Xi[e+28>>2]=155;Xi[e+32>>2]=59;Xi[e+36>>2]=60;Xi[e+40>>2]=61;Xi[e+44>>2]=62;Xi[e+48>>2]=63;break}default:{Xi[e>>2]=156;Xi[e+4>>2]=157;Xi[e+8>>2]=158;Xi[e+12>>2]=159;Xi[e+16>>2]=160;Xi[e+20>>2]=161;Xi[e+24>>2]=162;Xi[e+28>>2]=163;Xi[e+32>>2]=64;Xi[e+36>>2]=65;Xi[e+40>>2]=66;Xi[e+44>>2]=67;Xi[e+48>>2]=68}}return}function mF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;Z=Ue;Ue=Ue+272|0;X=Z+130|0;q=Z;l=Xi[e+136>>2]|0;U=Xi[e+1412>>2]|0;G=Xi[U+13424+(f<<2)>>2]|0;x=Xi[U+13436+(f<<2)>>2]|0;b=4<<G;a=Xi[U+13328>>2]|0;k=4<<x;n=Xi[U+13420>>2]|0;t=i>>a&n;o=r>>a&n;s=n+2|0;h=(Zi(o,s)|0)+t|0;w=Xi[e+1416>>2]|0;u=Xi[w+1684>>2]|0;h=Xi[u+(h<<2)>>2]|0;D=Xi[e+160>>2]|0;z=(Xi[D+32+(f<<2)>>2]|0)>>>1;D=Xi[D+(f<<2)>>2]|0;g=(Zi(z,r>>x)|0)+(i>>G)|0;V=D+(g<<1)|0;Y=Xi[U+13412>>2]|0;j=Xi[((f|0)==0?l+288|0:l+292|0)>>2]|0;K=X+2|0;W=q+2|0;if(!(Xi[l+31284>>2]|0))d=0;else d=(h|0)>(Xi[u+(t+-1+(Zi(o+(k>>a)&n,s)|0)<<2)>>2]|0);c=d&1;v=Xi[l+31288>>2]|0;_=Xi[l+31296>>2]|0;m=Xi[l+31292>>2]|0;if(!(Xi[l+31300>>2]|0))E=0;else E=(h|0)>(Xi[u+((Zi(o+-1|0,s)|0)+(t+(b>>a)&n)<<2)>>2]|0);n=E&1;C=(k<<1)+r|0;M=U+13380|0;p=Xi[M>>2]|0;N=k+r|0;C=((C|0)>(p|0)?p:C)-N>>x;p=(b<<1)+i|0;R=U+13376|0;A=Xi[R>>2]|0;T=b+i|0;p=((p|0)>(A|0)?A:p)-T>>G;A=w+20|0;if((Wi[A>>0]|0)==1){S=Xi[U+13340>>2]|0;w=k>>S;b=b>>S;k=(1<<S)+-1|0;h=(k&i|0)==0;k=(k&r|0)==0;b=((b|0)==0&1)+b|0;if(d&h){t=i+-1>>S;o=N>>S;a=(Xi[U+13416>>2]|0)-o|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;u=0;do{l=(Wi[s+(((Zi(u+o|0,Y)|0)+t|0)*12|0)+10>>0]|0)==0|l;u=u+2|0}while((u|0)<(a|0));c=l}else c=0}if((v|0)==1&h){s=i+-1>>S;u=r>>S;a=(Xi[U+13416>>2]|0)-u|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+(((Zi(o+u|0,Y)|0)+s|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(a|0));u=l}else u=0}else u=v;if((_|0)==1){h=(Zi(r+-1>>S,Y)|0)+(i+-1>>S)|0;h=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(h*12|0)+10>>0]|0)==0&1}else h=_;if((m|0)==1&k){l=i>>S;s=Y-l|0;s=(b|0)>(s|0)?s:b;if((s|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+((a+o|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(s|0));s=l}else s=0}else s=m;if(E&k){l=T>>S;o=Y-l|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;n=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;t=0;do{l=(Wi[n+((a+t|0)*12|0)+10>>0]|0)==0|l;t=t+2|0}while((t|0)<(o|0));n=l}else n=0}l=K;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));l=W;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));Gi[q>>1]=128;v=u;m=s;_=h;s=n}else s=n;L=(_|0)!=0;if(L){H=Gi[D+(g+~z<<1)>>1]|0;Gi[X>>1]=H;Gi[q>>1]=H}I=(m|0)!=0;if(I){S=D+(g-z<<1)|0;d=S;d=Ji[d>>1]|Ji[d+2>>1]<<16;S=S+4|0;S=Ji[S>>1]|Ji[S+2>>1]<<16;H=W;E=H;Gi[E>>1]=d;Gi[E+2>>1]=d>>>16;H=H+4|0;Gi[H>>1]=S;Gi[H+2>>1]=S>>>16}H=(s|0)!=0;if(H?(y=D+(4-z+g<<1)|0,S=y,S=Ji[S>>1]|Ji[S+2>>1]<<16,y=y+4|0,y=Ji[y>>1]|Ji[y+2>>1]<<16,F=q+10|0,O=F,Gi[O>>1]=S,Gi[O+2>>1]=S>>>16,F=F+4|0,Gi[F>>1]=y,Gi[F+2>>1]=y>>>16,F=rN(Ji[D+(3-z+g+p<<1)>>1]|0,0,65537,65537)|0,y=Ie,O=4-p|0,(O|0)>0):0){l=p+5|0;a=0;do{p=q+(l+a<<1)|0;S=p;Gi[S>>1]=F;Gi[S+2>>1]=F>>>16;p=p+4|0;Gi[p>>1]=y;Gi[p+2>>1]=y>>>16;a=a+4|0}while((a|0)<(O|0))}S=(v|0)!=0;if(S){O=g+-1|0;Gi[K>>1]=Gi[D+(O<<1)>>1]|0;Gi[X+4>>1]=Gi[D+(O+z<<1)>>1]|0;Gi[X+6>>1]=Gi[D+(O+(z<<1)<<1)>>1]|0;Gi[X+8>>1]=Gi[D+(O+(z*3|0)<<1)>>1]|0}p=(c|0)!=0;if(p){l=g+-1|0;if((C|0)>0){a=C+3|0;n=4;do{g=n;n=n+1|0;Gi[X+(n<<1)>>1]=Gi[D+((Zi(g,z)|0)+l<<1)>>1]|0}while((g|0)<(a|0))}a=rN(Ji[D+((Zi(C+3|0,z)|0)+l<<1)>>1]|0,0,65537,65537)|0;n=Ie;t=4-C|0;if((t|0)>0){l=C+5|0;o=0;do{D=X+(l+o<<1)|0;g=D;Gi[g>>1]=a;Gi[g+2>>1]=a>>>16;D=D+4|0;Gi[D>>1]=n;Gi[D+2>>1]=n>>>16;o=o+4|0}while((o|0)<(t|0))}}if((Wi[A>>0]|0)==1?(P=c|v,B=(P|0)!=0,P=P|_,m|s|P|0):0){R=Xi[R>>2]|0;E=R-i>>G;D=Xi[M>>2]|0;d=D-r>>x;E=H?((8<<G)+i|0)<(R|0)?8:E:(T|0)<(R|0)?4:E;d=p?((8<<x)+r|0)<(D|0)?8:d:(N|0)<(D|0)?4:d;do{if(!P){e:do{if((E|0)>0){n=Xi[U+13340>>2]|0;t=Zi((-1<<x)+r>>n,Y)|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;do{if(!(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>0){if((i|0)>0)while(1){a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break e}do{a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0}while((a|0)>1);Gi[q>>1]=Gi[W>>1]|0}}}while(0);l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}else{t=e+3516|0;s=Xi[U+13340>>2]|0;o=(-1<<G)+i>>s;l=p?C+4|0:4;while(1){P=l;l=l+-1|0;if((P|0)<=0){J=49;break}a=(l<<x)+r|0;P=(Zi(a>>s,Y)|0)+o|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0;if(!(Wi[n+(P*12|0)+10>>0]|0)){l=a;break}}if((J|0)==49){l=(l<<x)+r|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0}if(!(Wi[n+(((Zi(l>>s,Y)|0)+o|0)*12|0)+10>>0]|0)){c=q;b=X;l=Gi[q>>1]|0;break}t=Zi((-1<<x)+r>>s,Y)|0;if((E|0)>0){l=0;do{if(!(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>-1)J=57}else{l=0;J=57}if((J|0)==57)while(1){J=0;a=l;l=l+-1|0;if(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break;else J=57}l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}}while(0);Gi[b>>1]=l;u=(d|0)>0;if(B&u){l=rN(l&65535|0,0,65537,65537)|0;n=(-1<<G)+i|0;t=U+13340|0;o=(Xi[e+3516>>2]|0)+16|0;a=Ie;s=0;do{B=Xi[t>>2]|0;B=(Zi((s<<x)+r>>B,Y)|0)+(n>>B)|0;if(!(Wi[(Xi[o>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[X+((s|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{B=X+((s|1)<<1)|0;P=B;Gi[P>>1]=l;Gi[P+2>>1]=l>>>16;B=B+4|0;Gi[B>>1]=a;Gi[B+2>>1]=a>>>16}s=s+4|0}while((s|0)<(d|0))}if(!S){D=rN(Ji[b>>1]|0,0,65537,65537)|0;P=Ie;B=K;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}if(!p){D=rN(Ji[X+8>>1]|0,0,65537,65537)|0;P=Ie;B=X+10|0;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}k=(r|0)!=0;do{if((i|0)!=0&k){h=(-1<<G)+i|0;w=U+13340|0;n=Xi[w>>2]|0;a=h>>n;if(u){t=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;l=Xi[e+3516>>2]|0;u=l+16|0;o=Ie;s=d+-1|0;do{B=(Zi((s+-3<<x)+r>>n,Y)|0)+a|0;a=X+(s+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){t=rN(Ji[a>>1]|0,0,65537,65537)|0;o=Ie}else{n=a;B=n;Gi[B>>1]=t;Gi[B+2>>1]=t>>>16;n=n+4|0;Gi[n>>1]=o;Gi[n+2>>1]=o>>>16;n=Xi[w>>2]|0}s=s+-4|0;a=h>>n}while((s|0)>-1)}else l=Xi[e+3516>>2]|0;B=(Zi((-1<<x)+r>>n,Y)|0)+a|0;if(Wi[(Xi[l+16>>2]|0)+(B*12|0)+10>>0]|0)Gi[b>>1]=Gi[K>>1]|0}else{if(!i){if(!u)break;jT(K|0,0,((d+2147483647|0)>>>2<<3)+8|0)|0;break}if(u){n=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;o=(-1<<G)+i|0;s=U+13340|0;u=(Xi[e+3516>>2]|0)+16|0;a=Ie;t=d+-1|0;while(1){B=Xi[s>>2]|0;B=(Zi((t+-3<<x)+r>>B,Y)|0)+(o>>B)|0;l=X+(t+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[l>>1]|0,0,65537,65537)|0;a=Ie}else{B=l;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;l=l+4|0;Gi[l>>1]=a;Gi[l+2>>1]=a>>>16;l=n}t=t+-4|0;if((t|0)<=-1)break;else n=l}}}}while(0);l=Gi[b>>1]|0;Gi[c>>1]=l;if(k&(E|0)>0){l=rN(l&65535|0,0,65537,65537)|0;s=U+13340|0;n=(-1<<x)+r|0;t=(Xi[e+3516>>2]|0)+16|0;a=Ie;o=0;do{r=Xi[s>>2]|0;r=(Zi(n>>r,Y)|0)+((o<<G)+i>>r)|0;if(!(Wi[(Xi[t>>2]|0)+(r*12|0)+10>>0]|0)){l=rN(Ji[q+((o|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{r=q+((o|1)<<1)|0;x=r;Gi[x>>1]=l;Gi[x+2>>1]=l>>>16;r=r+4|0;Gi[r>>1]=a;Gi[r+2>>1]=a>>>16}o=o+4|0}while((o|0)<(E|0))}}do{if(p)if(!v)J=119;else J=120;else{if(S){Y=rN(Ji[X+8>>1]|0,0,65537,65537)|0;i=Ie;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=120;break}if(L){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=122;break}if(I){Y=Gi[W>>1]|0;Gi[X>>1]=Y;Y=rN(Y&65535|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124;break}if(H){i=Gi[q+10>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;G=Ie;Y=W;x=Y;Gi[x>>1]=r;Gi[x+2>>1]=r>>>16;Y=Y+4|0;Gi[Y>>1]=G;Gi[Y+2>>1]=G>>>16;Gi[X>>1]=i;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;i=X+10|0;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;break}else{Gi[X>>1]=256;J=W;i=J;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;J=J+4|0;Gi[J>>1]=256;Gi[J+2>>1]=16777472>>>16;J=q+10|0;i=J;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;J=J+4|0;Gi[J>>1]=256;Gi[J+2>>1]=16777472>>>16;J=K;i=J;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;J=J+4|0;Gi[J>>1]=256;Gi[J+2>>1]=16777472>>>16;J=X+10|0;i=J;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;J=J+4|0;Gi[J>>1]=256;Gi[J+2>>1]=16777472>>>16;J=119;break}}}while(0);if((J|0)==119){r=rN(Ji[X+10>>1]|0,0,65537,65537)|0;G=Ie;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;J=120}if((J|0)==120)if(!_){Gi[X>>1]=Gi[K>>1]|0;J=122}else J=122;if((J|0)==122)if(!m){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=W;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124}else J=124;if((J|0)==124?!H:0){Y=rN(Ji[q+8>>1]|0,0,65537,65537)|0;i=Ie;J=q+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16}Gi[q>>1]=Gi[X>>1]|0;switch(j|0){case 0:{nV[Xi[e+6136>>2]&255](V,W,K,z);break}case 1:{Xz[Xi[e+6152>>2]&127](V,W,K,z,2,f);break}default:Xz[Xi[e+6156>>2]&127](V,W,K,z,f,j)}Ue=Z;return}function pF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;Z=re+130|0;J=re;n=Xi[e+136>>2]|0;j=Xi[e+1412>>2]|0;Y=Xi[j+13424+(f<<2)>>2]|0;z=Xi[j+13436+(f<<2)>>2]|0;d=8<<Y;t=Xi[j+13328>>2]|0;c=8<<z;o=Xi[j+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;P=Xi[e+160>>2]|0;ee=(Xi[P+32+(f<<2)>>2]|0)>>>1;P=Xi[P+(f<<2)>>2]|0;R=(Zi(ee,r>>z)|0)+(i>>Y)|0;ie=P+(R<<1)|0;V=Xi[j+13412>>2]|0;K=(f|0)==0;$=Xi[(K?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=Z+2|0;q=G+2|0;Q=J+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);o=_&1;L=(c<<1)+r|0;T=j+13380|0;y=Xi[T>>2]|0;C=c+r|0;L=((L|0)>(y|0)?y:L)-C>>z;y=(d<<1)+i|0;N=j+13376|0;M=Xi[N>>2]|0;D=d+i|0;y=((y|0)>(M|0)?M:y)-D>>Y;M=b+20|0;if((Wi[M>>0]|0)==1){m=Xi[j+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=C>>m;t=(Xi[j+13416>>2]|0)-u|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;w=0;do{n=(Wi[h+(((Zi(w+u|0,V)|0)+s|0)*12|0)+10>>0]|0)==0|n;w=w+2|0}while((w|0)<(t|0));v=n}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;t=(Xi[j+13416>>2]|0)-w|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+(((Zi(u+w|0,V)|0)+h|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(t|0));w=n}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,V)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){n=i>>m;h=V-n|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+((t+u|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(h|0));h=n}else h=0}else h=F;if(_&c){n=D>>m;u=V-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0));o=n}else o=0}n=a;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));n=l;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));Gi[Z>>1]=128;S=w;F=h;p=k;h=o}else h=o;H=(p|0)!=0;if(H){U=Gi[P+(R+~ee<<1)>>1]|0;Gi[X>>1]=U;Gi[Z>>1]=U}B=(F|0)!=0;if(B){U=P+(R-ee<<1)|0;Gi[l>>1]=Gi[U>>1]|0;Gi[l+2>>1]=Gi[U+2>>1]|0;Gi[l+4>>1]=Gi[U+4>>1]|0;Gi[l+6>>1]=Gi[U+6>>1]|0;Gi[l+8>>1]=Gi[U+8>>1]|0;Gi[l+10>>1]=Gi[U+10>>1]|0;Gi[l+12>>1]=Gi[U+12>>1]|0;Gi[l+14>>1]=Gi[U+14>>1]|0}U=(h|0)!=0;if(U?(O=Z+18|0,A=P+(8-ee+R<<1)|0,Gi[O>>1]=Gi[A>>1]|0,Gi[O+2>>1]=Gi[A+2>>1]|0,Gi[O+4>>1]=Gi[A+4>>1]|0,Gi[O+6>>1]=Gi[A+6>>1]|0,Gi[O+8>>1]=Gi[A+8>>1]|0,Gi[O+10>>1]=Gi[A+10>>1]|0,Gi[O+12>>1]=Gi[A+12>>1]|0,Gi[O+14>>1]=Gi[A+14>>1]|0,O=rN(Ji[P+(7-ee+R+y<<1)>>1]|0,0,65537,65537)|0,A=Ie,g=8-y|0,(g|0)>0):0){n=y+9|0;t=0;do{y=Z+(n+t<<1)|0;m=y;Gi[m>>1]=O;Gi[m+2>>1]=O>>>16;y=y+4|0;Gi[y>>1]=A;Gi[y+2>>1]=A>>>16;t=t+4|0}while((t|0)<(g|0))}y=(S|0)!=0;if(y){n=R+-1|0;t=0;do{g=t;t=t+1|0;Gi[X+(t<<1)>>1]=Gi[P+(n+(Zi(g,ee)|0)<<1)>>1]|0}while((t|0)!=8)}m=(v|0)!=0;if(m){n=R+-1|0;if((L|0)>0){t=L+7|0;o=8;do{R=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[P+((Zi(R,ee)|0)+n<<1)>>1]|0}while((R|0)<(t|0))}t=rN(Ji[P+((Zi(L+7|0,ee)|0)+n<<1)>>1]|0,0,65537,65537)|0;o=Ie;s=8-L|0;if((s|0)>0){n=L+9|0;u=0;do{P=X+(n+u<<1)|0;R=P;Gi[R>>1]=t;Gi[R+2>>1]=t>>>16;P=P+4|0;Gi[P>>1]=o;Gi[P+2>>1]=o>>>16;u=u+4|0}while((u|0)<(s|0))}}if((Wi[M>>0]|0)==1?(I=v|S,x=(I|0)!=0,I=I|p,F|h|I|0):0){N=Xi[N>>2]|0;_=N-i>>Y;P=Xi[T>>2]|0;E=P-r>>z;_=U?((16<<Y)+i|0)<(N|0)?16:_:(D|0)<(N|0)?8:_;E=m?((16<<z)+r|0)<(P|0)?16:E:(C|0)<(P|0)?8:E;do{if(!I){e:do{if((_|0)>0){o=Xi[j+13340>>2]|0;s=Zi((-1<<z)+r>>o,V)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0}while((t|0)>1);Gi[Z>>1]=Gi[l>>1]|0}}}while(0);n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}else{s=e+3516|0;h=Xi[j+13340>>2]|0;u=(-1<<Y)+i>>h;n=m?L+8|0:8;while(1){I=n;n=n+-1|0;if((I|0)<=0){W=50;break}t=(n<<z)+r|0;I=(Zi(t>>h,V)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(I*12|0)+10>>0]|0)){n=t;break}}if((W|0)==50){n=(n<<z)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,V)|0)+u|0)*12|0)+10>>0]|0)){v=Z;d=X;n=Gi[Z>>1]|0;break}s=Zi((-1<<z)+r>>h,V)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)W=58}else{n=0;W=58}if((W|0)==58)while(1){W=0;t=n;n=n+-1|0;if(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break;else W=58}n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(x&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<Y)+i|0;s=j+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{x=Xi[s>>2]|0;x=(Zi((h<<z)+r>>x,V)|0)+(o>>x)|0;if(!(Wi[(Xi[u>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{x=X+((h|1)<<1)|0;I=x;Gi[I>>1]=n;Gi[I+2>>1]=n>>>16;x=x+4|0;Gi[x>>1]=t;Gi[x+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){P=rN(Ji[d>>1]|0,0,65537,65537)|0;I=Ie;x=a;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+10|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}if(!m){P=rN(Ji[X+16>>1]|0,0,65537,65537)|0;I=Ie;x=X+18|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+26|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<Y)+i|0;b=j+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{x=(Zi((h+-3<<z)+r>>o,V)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;x=o;Gi[x>>1]=s;Gi[x+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;x=(Zi((-1<<z)+r>>o,V)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(x*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){o=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<Y)+i|0;h=j+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;while(1){x=Xi[h>>2]|0;x=(Zi((s+-3<<z)+r>>x,V)|0)+(u>>x)|0;n=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[n>>1]|0,0,65537,65537)|0;t=Ie}else{x=n;Gi[x>>1]=o;Gi[x+2>>1]=o>>>16;n=n+4|0;Gi[n>>1]=t;Gi[n+2>>1]=t>>>16;n=o}s=s+-4|0;if((s|0)<=-1)break;else o=n}}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=j+13340|0;o=(-1<<z)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,V)|0)+((u<<Y)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[Z+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=Z+((u|1)<<1)|0;z=r;Gi[z>>1]=n;Gi[z+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)W=120;else W=121;else{if(y){V=rN(Ji[X+16>>1]|0,0,65537,65537)|0;i=Ie;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=121;break}if(H){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=123;break}if(B){V=Gi[l>>1]|0;Gi[X>>1]=V;V=rN(V&65535|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125;break}if(U){i=Gi[Z+18>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;Y=Ie;V=l;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;V=Z+10|0;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;Gi[X>>1]=i;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+18|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+26|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;break}else{Gi[X>>1]=256;W=l;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=Z+10|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=Z+18|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=Z+26|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=a;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=X+10|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=X+18|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=X+26|0;i=W;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;W=W+4|0;Gi[W>>1]=256;Gi[W+2>>1]=16777472>>>16;W=120;break}}}while(0);if((W|0)==120){r=rN(Ji[X+18>>1]|0,0,65537,65537)|0;Y=Ie;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;W=121}if((W|0)==121)if(!p){Gi[X>>1]=Gi[a>>1]|0;W=123}else W=123;if((W|0)==123)if(!F){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=l;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125}else W=125;if((W|0)==125?!U:0){V=rN(Ji[Z+16>>1]|0,0,65537,65537)|0;i=Ie;W=Z+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[Z>>1]=h;do{if(!(Xi[j+13368>>2]|0)){if(!K?(Xi[j+4>>2]|0)!=3:0){W=136;break}if(($|0)!=1){W=$+-26|0;W=(W|0)>-1?W:26-$|0;K=$+-10|0;K=(K|0)>-1?K:10-$|0;if((((W|0)>(K|0)?K:W)|0)>7){t=Gi[X+32>>1]|0;Gi[G+32>>1]=t;n=Gi[Z+32>>1]|0;Gi[J+32>>1]=n;o=Gi[X+30>>1]|0;u=14;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[J>>1]=l;l=n;a=Gi[Z+30>>1]|0;t=14;while(1){n=Gi[Z+(t<<1)>>1]|0;Gi[J+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;W=136;break}}}else W=136}else W=138}else W=136}while(0);e:do{if((W|0)==136)switch($|0){case 1:{W=138;break e}case 0:{nV[Xi[e+6140>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6160>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((W|0)==138)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,3,f);Ue=re;return}function FF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0;$=Ue;Ue=Ue+528|0;K=$+390|0;j=$+260|0;X=$+130|0;G=$;n=Xi[e+136>>2]|0;z=Xi[e+1412>>2]|0;x=Xi[z+13424+(f<<2)>>2]|0;B=Xi[z+13436+(f<<2)>>2]|0;d=16<<x;t=Xi[z+13328>>2]|0;c=16<<B;o=Xi[z+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;Z=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(Z,r>>B)|0)+(i>>x)|0;Q=N+(A<<1)|0;U=Xi[z+13412>>2]|0;V=(f|0)==0;J=Xi[(V?n+288|0:n+292|0)>>2]|0;a=K+2|0;l=X+2|0;W=j+2|0;q=G+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=z+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=z+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[z+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[z+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[z+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[X>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){I=Gi[N+(A+~Z<<1)>>1]|0;Gi[K>>1]=I;Gi[X>>1]=I}L=(F|0)!=0;if(L){o=l;t=N+(A-Z<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}I=(n|0)!=0;if(I){o=X+34|0;t=N+(16-Z+A<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(15-Z+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=16-y|0;if((h|0)>0){t=y+17|0;o=0;do{y=X+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[K+(o<<1)>>1]=Gi[N+(t+(Zi(m,Z)|0)<<1)>>1]|0}while((o|0)!=16)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+15|0;s=16;do{A=s;s=s+1|0;Gi[K+(s<<1)>>1]=Gi[N+((Zi(A,Z)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+15|0,Z)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=16-D|0;if((u|0)>0){t=D+17|0;h=0;do{N=K+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,H=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=I?((32<<x)+i|0)<(M|0)?32:_:(R|0)<(M|0)?16:_;E=m?((32<<B)+r|0)<(N|0)?32:E:(T|0)<(N|0)?16:E;do{if(!C){e:do{if((_|0)>0){o=Xi[z+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0}while((t|0)>1);Gi[X>>1]=Gi[l>>1]|0}}}while(0);n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}else{s=e+3516|0;h=Xi[z+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+16|0:16;while(1){C=n;n=n+-1|0;if((C|0)<=0){Y=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((Y|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=X;d=K;n=Gi[X>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)Y=58}else{n=0;Y=58}if((Y|0)==58)while(1){Y=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break;else Y=58}n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(H&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=z+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{H=Xi[s>>2]|0;H=(Zi((h<<B)+r>>H,U)|0)+(o>>H)|0;if(!(Wi[(Xi[u>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[K+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{H=K+((h|1)<<1)|0;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;H=a;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+10|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+18|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+26|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}if(!m){N=rN(Ji[K+32>>1]|0,0,65537,65537)|0;C=Ie;H=K+34|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+42|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+50|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+58|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=z+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{H=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=K+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;H=o;Gi[H>>1]=s;Gi[H+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;H=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(H*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=z+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{H=Xi[h>>2]|0;H=(Zi((s+-3<<B)+r>>H,U)|0)+(u>>H)|0;o=K+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{H=o;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=z+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[X+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=X+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)Y=120;else Y=121;else{if(y){U=rN(Ji[K+32>>1]|0,0,65537,65537)|0;i=Ie;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=121;break}if(P){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=123;break}if(L){U=Gi[l>>1]|0;Gi[K>>1]=U;U=rN(U&65535|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125;break}if(I){i=Gi[X+34>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;x=Ie;U=l;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+10|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+18|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+26|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;Gi[K>>1]=i;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+34|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+42|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+50|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+58|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;break}else{Gi[K>>1]=256;Y=l;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+10|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+18|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+26|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+34|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+42|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+50|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=X+58|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=a;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+10|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+18|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+26|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+34|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+42|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+50|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=K+58|0;i=Y;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;Y=Y+4|0;Gi[Y>>1]=256;Gi[Y+2>>1]=16777472>>>16;Y=120;break}}}while(0);if((Y|0)==120){r=rN(Ji[K+34>>1]|0,0,65537,65537)|0;x=Ie;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;Y=121}if((Y|0)==121)if(!p){Gi[K>>1]=Gi[a>>1]|0;Y=123}else Y=123;if((Y|0)==123)if(!F){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=l;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125}else Y=125;if((Y|0)==125?!I:0){U=rN(Ji[X+32>>1]|0,0,65537,65537)|0;i=Ie;Y=X+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16}h=Gi[K>>1]|0;Gi[X>>1]=h;do{if(!(Xi[z+13368>>2]|0)){if(!V?(Xi[z+4>>2]|0)!=3:0){Y=136;break}if((J|0)!=1){Y=J+-26|0;Y=(Y|0)>-1?Y:26-J|0;V=J+-10|0;V=(V|0)>-1?V:10-J|0;if((((Y|0)>(V|0)?V:Y)|0)>1){n=Gi[K+64>>1]|0;Gi[j+64>>1]=n;u=Gi[X+64>>1]|0;Gi[G+64>>1]=u;t=Gi[K+62>>1]|0;s=30;while(1){o=Gi[K+(s<<1)>>1]|0;Gi[j+(s+1<<1)>>1]=((n&65535)+2+((t&65535)<<1)+(o&65535)|0)>>>2;if((s|0)>0){n=t;t=o;s=s+-1|0}else break}t=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[j>>1]=t;Gi[G>>1]=t;t=Gi[X+62>>1]|0;a=u;n=30;while(1){l=Gi[X+(n<<1)>>1]|0;Gi[G+(n+1<<1)>>1]=((a&65535)+2+((t&65535)<<1)+(l&65535)|0)>>>2;if((n|0)>0){a=t;t=l;n=n+-1|0}else{a=W;l=q;Y=136;break}}}else Y=136}else Y=138}else Y=136}while(0);e:do{if((Y|0)==136)switch(J|0){case 1:{Y=138;break e}case 0:{nV[Xi[e+6144>>2]&255](Q,l,a,Z);break e}default:{Xz[Xi[e+6164>>2]&127](Q,l,a,Z,f,J);break e}}}while(0);if((Y|0)==138)Xz[Xi[e+6152>>2]&127](Q,l,a,Z,4,f);Ue=$;return}function yF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;J=re+130|0;Z=re;n=Xi[e+136>>2]|0;V=Xi[e+1412>>2]|0;x=Xi[V+13424+(f<<2)>>2]|0;B=Xi[V+13436+(f<<2)>>2]|0;d=32<<x;t=Xi[V+13328>>2]|0;c=32<<B;o=Xi[V+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;ee=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(ee,r>>B)|0)+(i>>x)|0;ie=N+(A<<1)|0;U=Xi[V+13412>>2]|0;Y=(f|0)==0;$=Xi[(Y?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=J+2|0;q=G+2|0;Q=Z+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=V+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=V+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[V+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[V+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[V+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[J>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){H=Gi[N+(A+~ee<<1)>>1]|0;Gi[X>>1]=H;Gi[J>>1]=H}L=(F|0)!=0;if(L){o=l;t=N+(A-ee<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}H=(n|0)!=0;if(H){o=J+66|0;t=N+(32-ee+A<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(31-ee+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=32-y|0;if((h|0)>0){t=y+33|0;o=0;do{y=J+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[N+(t+(Zi(m,ee)|0)<<1)>>1]|0}while((o|0)!=32)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+31|0;s=32;do{A=s;s=s+1|0;Gi[X+(s<<1)>>1]=Gi[N+((Zi(A,ee)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+31|0,ee)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=32-D|0;if((u|0)>0){t=D+33|0;h=0;do{N=X+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,I=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=H?((64<<x)+i|0)<(M|0)?64:_:(R|0)<(M|0)?32:_;E=m?((64<<B)+r|0)<(N|0)?64:E:(T|0)<(N|0)?32:E;do{if(!C){e:do{if((_|0)>0){o=Xi[V+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0}while((t|0)>1);Gi[J>>1]=Gi[l>>1]|0}}}while(0);n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}else{s=e+3516|0;h=Xi[V+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+32|0:32;while(1){C=n;n=n+-1|0;if((C|0)<=0){z=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((z|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=J;d=X;n=Gi[J>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)z=58}else{n=0;z=58}if((z|0)==58)while(1){z=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break;else z=58}n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(I&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=V+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{I=Xi[s>>2]|0;I=(Zi((h<<B)+r>>I,U)|0)+(o>>I)|0;if(!(Wi[(Xi[u>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{I=X+((h|1)<<1)|0;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;I=a;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+10|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+18|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+26|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+34|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+42|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+50|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+58|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}if(!m){N=rN(Ji[X+64>>1]|0,0,65537,65537)|0;C=Ie;I=X+66|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+74|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+82|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+90|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+98|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+106|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+114|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+122|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=V+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{I=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;I=o;Gi[I>>1]=s;Gi[I+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;I=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(I*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=V+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{I=Xi[h>>2]|0;I=(Zi((s+-3<<B)+r>>I,U)|0)+(u>>I)|0;o=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{I=o;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=V+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[J+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=J+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}e:do{if(m)z=124;else{if(y){U=rN(Ji[X+64>>1]|0,0,65537,65537)|0;i=Ie;z=X+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126;break}if(P){n=rN(Ji[X>>1]|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=126;break e}}}if(L){n=Gi[l>>1]|0;Gi[X>>1]=n;n=rN(n&65535|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=128;break e}}}if(H){o=Gi[J+66>>1]|0;n=rN(o&65535|0,0,65537,65537)|0;t=Ie;i=l;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+10|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+18|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+26|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+34|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+42|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+50|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+58|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;Gi[X>>1]=o;o=0;while(1){i=X+((o|1)<<1)|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64)break e}}Gi[X>>1]=256;n=0;do{z=J+((n|1)<<1)|0;i=z;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;z=z+4|0;Gi[z>>1]=256;Gi[z+2>>1]=16777472>>>16;n=n+4|0}while((n|0)<64);n=0;do{z=X+((n|1)<<1)|0;i=z;Gi[i>>1]=256;Gi[i+2>>1]=16777472>>>16;z=z+4|0;Gi[z>>1]=256;Gi[z+2>>1]=16777472>>>16;n=n+4|0}while((n|0)<64);z=124}}while(0);if((z|0)==124)if(!S){U=rN(Ji[X+66>>1]|0,0,65537,65537)|0;i=Ie;z=a;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126}else z=126;if((z|0)==126)if(!p){Gi[X>>1]=Gi[a>>1]|0;z=128}else z=128;if((z|0)==128?(F|0)==0:0){U=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;z=l;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}if(!H){U=rN(Ji[J+64>>1]|0,0,65537,65537)|0;i=Ie;z=J+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[J>>1]=h;e:do{if(!(Xi[V+13368>>2]|0)){if(!Y?(Xi[V+4>>2]|0)!=3:0){z=149;break}if(($|0)!=1){z=$+-26|0;z=(z|0)>-1?z:26-$|0;i=$+-10|0;i=(i|0)>-1?i:10-$|0;if((((z|0)>(i|0)?i:z)|0)>0){if(Y&(Wi[V+13317>>0]|0)!=0){t=h&65535;n=Gi[J+128>>1]|0;o=n&65535;Y=o+t-(Ji[J+64>>1]<<1)|0;if((((Y|0)>-1?Y:0-Y|0)|0)<16?(W=X+128|0,j=Gi[W>>1]|0,K=j&65535,Y=K+t-(Ji[X+64>>1]<<1)|0,(((Y|0)>-1?Y:0-Y|0)|0)<16):0){Gi[Z>>1]=h;Gi[Z+128>>1]=n;l=0;do{J=l;l=l+1|0;Gi[Z+(l<<1)>>1]=((Zi(63-J|0,t)|0)+32+(Zi(l,o)|0)|0)>>>6}while((l|0)!=63);Gi[a>>1]=((t*63|0)+32+K|0)>>>6;Gi[X+4>>1]=(((h&65535)*62|0)+32+((j&65535)<<1)|0)>>>6;l=2;while(1){Z=l;l=l+1|0;Gi[X+(l<<1)>>1]=((Zi(63-Z|0,Ji[X>>1]|0)|0)+32+(Zi(l,Ji[W>>1]|0)|0)|0)>>>6;if((l|0)==63){l=Q;z=149;break e}}}}else n=Gi[J+128>>1]|0;t=Gi[X+128>>1]|0;Gi[G+128>>1]=t;Gi[Z+128>>1]=n;o=Gi[X+126>>1]|0;u=62;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[Z>>1]=l;l=n;a=Gi[J+126>>1]|0;t=62;while(1){n=Gi[J+(t<<1)>>1]|0;Gi[Z+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;z=149;break}}}else z=149}else z=151}else z=149}while(0);e:do{if((z|0)==149)switch($|0){case 1:{z=151;break e}case 0:{nV[Xi[e+6148>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6168>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((z|0)==151)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,5,f);Ue=re;return}function OF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+8|0;a=r+8|0;u=0;do{n=r+(u<<1)|0;t=3-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,3-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+4+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>3}while((s|0)!=4)}while((u|0)!=4);return}function AF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+16|0;a=r+16|0;u=0;do{n=r+(u<<1)|0;t=7-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,7-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+8+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>4}while((s|0)!=8)}while((u|0)!=8);return}function gF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+32|0;a=r+32|0;u=0;do{n=r+(u<<1)|0;t=15-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,15-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+16+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>5}while((s|0)!=16)}while((u|0)!=16);return}function MF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+64|0;a=r+64|0;u=0;do{n=r+(u<<1)|0;t=31-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,31-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+32+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>6}while((s|0)!=32)}while((u|0)!=32);return}function RF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=1<<l;o=(l|0)==31;if(!o){n=w;t=0;do{n=(Ji[r+(t<<1)>>1]|0)+n+(Ji[i+(t<<1)>>1]|0)|0;t=t+1|0}while((t|0)<(w|0));l=n>>l+1;s=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;if(!o){t=0;do{n=Zi(t,f)|0;o=0;do{k=e+(o+n<<1)|0;b=k;Wi[b>>0]=s;Wi[b+1>>0]=s>>8;Wi[b+2>>0]=s>>16;Wi[b+3>>0]=s>>24;k=k+4|0;Wi[k>>0]=u;Wi[k+1>>0]=u>>8;Wi[k+2>>0]=u>>16;Wi[k+3>>0]=u>>24;o=o+4|0}while((o|0)<(w|0));t=t+1|0}while((t|0)<(w|0))}}else l=w>>l+1;if((a|0)==0&(w|0)<32?(Gi[e>>1]=((l<<1)+2+(Ji[r>>1]|0)+(Ji[i>>1]|0)|0)>>>2,h=(w|0)>1,h):0){n=(l*3|0)+2|0;t=1;do{Gi[e+(t<<1)>>1]=(n+(Ji[i+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0));if(h){n=(l*3|0)+2|0;t=1;do{Gi[e+((Zi(t,f)|0)<<1)>>1]=(n+(Ji[r+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0))}}return}function TF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+208|0;w=d;c=Xi[88888+(a+-2<<2)>>2]|0;o=w+8|0;n=c>>3;if((a|0)>17){t=i+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;s=0;do{u=s;s=s+1|0;n=Zi(s,c)|0;t=n>>5;n=n&31;if(!n){b=Zi(u,f)|0;k=o+(t+1<<1)|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b<<1)|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24}else{k=32-n|0;b=Zi(u,f)|0;w=Zi(Ji[o+(t+1<<1)>>1]|0,k)|0;Gi[e+(b<<1)>>1]=(w+16+(Zi(Ji[o+(t+2<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+2<<1)>>1]|0,k)|0;Gi[e+(b+1<<1)>>1]=(w+16+(Zi(Ji[o+(t+3<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+3<<1)>>1]|0,k)|0;Gi[e+(b+2<<1)>>1]=(w+16+(Zi(Ji[o+(t+4<<1)>>1]|0,n)|0)|0)>>>5;k=Zi(Ji[o+(t+4<<1)>>1]|0,k)|0;Gi[e+(b+3<<1)>>1]=(k+16+(Zi(Ji[o+(t+5<<1)>>1]|0,n)|0)|0)>>>5}}while((s|0)!=4);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=4)}}else{t=r+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;n=f<<1;t=f*3|0;w=0;do{k=w;w=w+1|0;u=Zi(w,c)|0;s=u>>5;u=u&31;if(!u){Gi[e+(k<<1)>>1]=Gi[o+(s+1<<1)>>1]|0;Gi[e+(k+f<<1)>>1]=Gi[o+(s+2<<1)>>1]|0;Gi[e+(n+k<<1)>>1]=Gi[o+(s+3<<1)>>1]|0;Gi[e+(t+k<<1)>>1]=Gi[o+(s+4<<1)>>1]|0}else{h=32-u|0;b=0;do{v=b+s|0;E=Zi(Ji[o+(v+1<<1)>>1]|0,h)|0;Gi[e+((Zi(b,f)|0)+k<<1)>>1]=(E+16+(Zi(Ji[o+(v+2<<1)>>1]|0,u)|0)|0)>>>5;b=b+1|0}while((b|0)!=4)}}while((w|0)!=4);if((l|0)==0&(a|0)==10){t=i+-2|0;n=((Ji[i>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e>>1]=n;n=((Ji[i+2>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+2>>1]=n;n=((Ji[i+4>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+4>>1]=n;n=((Ji[i+6>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+6>>1]=n}}Ue=d;return}function NF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+16|0;n=k>>2;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;o=t+(s+1<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+5<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+4<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<8)}}while((w|0)!=8);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=8)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=8)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=8)}}while((h|0)!=8);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<8)}}Ue=b;return}function DF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+32|0;n=k>>1;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;n=t+(s+1<<1)|0;u=n;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=e+(h<<1)|0;o=c;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;c=c+4|0;Wi[c>>0]=n;Wi[c+1>>0]=n>>8;Wi[c+2>>0]=n>>16;Wi[c+3>>0]=n>>24;c=t+(s+5<<1)|0;n=c;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=e+(h+4<<1)|0;u=o;Wi[u>>0]=n;Wi[u+1>>0]=n>>8;Wi[u+2>>0]=n>>16;Wi[u+3>>0]=n>>24;o=o+4|0;Wi[o>>0]=c;Wi[o+1>>0]=c>>8;Wi[o+2>>0]=c>>16;Wi[o+3>>0]=c>>24;o=t+(s+9<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h+8<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+13<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+12<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<16)}}while((w|0)!=16);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=16)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=16)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=16)}}while((h|0)!=16);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=512)n=0-n>>31&511;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<16)}}Ue=b;return}function CF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;h=Ue;Ue=Ue+208|0;s=h;u=Xi[88888+(a+-2<<2)>>2]|0;o=s+64|0;if((a|0)>17){l=i+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[r+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else{r=o;break}}}else r=l;i=0;do{l=i;i=i+1|0;t=Zi(i,u)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;l=Zi(l,f)|0;a=0;do{o=r+(n+a<<1)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=e+(a+l<<1)|0;t=s;Wi[t>>0]=w;Wi[t+1>>0]=w>>8;Wi[t+2>>0]=w>>16;Wi[t+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;a=a+4|0}while((a|0)<32)}else{o=32-t|0;l=Zi(l,f)|0;a=0;do{w=a+n|0;s=Zi(Ji[r+(w+1<<1)>>1]|0,o)|0;Gi[e+(a+l<<1)>>1]=(s+16+(Zi(Ji[r+(w+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|1;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|2;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|3;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;a=a+4|0}while((a|0)<32)}}while((i|0)!=32)}else{l=r+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[i+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else break}}else o=l;r=0;do{i=r;r=r+1|0;a=Zi(r,u)|0;l=a>>5;a=a&31;if(!a){l=l+1|0;a=0;do{Gi[e+((Zi(a,f)|0)+i<<1)>>1]=Gi[o+(l+a<<1)>>1]|0;a=a+1|0}while((a|0)!=32)}else{n=32-a|0;t=0;do{k=t+l|0;w=Zi(Ji[o+(k+1<<1)>>1]|0,n)|0;Gi[e+((Zi(t,f)|0)+i<<1)>>1]=(w+16+(Zi(Ji[o+(k+2<<1)>>1]|0,a)|0)|0)>>>5;t=t+1|0}while((t|0)!=32)}}while((r|0)!=32)}Ue=h;return}function PF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;Z=Ue;Ue=Ue+272|0;X=Z+130|0;q=Z;l=Xi[e+136>>2]|0;U=Xi[e+1412>>2]|0;G=Xi[U+13424+(f<<2)>>2]|0;x=Xi[U+13436+(f<<2)>>2]|0;b=4<<G;a=Xi[U+13328>>2]|0;k=4<<x;n=Xi[U+13420>>2]|0;t=i>>a&n;o=r>>a&n;s=n+2|0;h=(Zi(o,s)|0)+t|0;w=Xi[e+1416>>2]|0;u=Xi[w+1684>>2]|0;h=Xi[u+(h<<2)>>2]|0;D=Xi[e+160>>2]|0;z=(Xi[D+32+(f<<2)>>2]|0)>>>1;D=Xi[D+(f<<2)>>2]|0;g=(Zi(z,r>>x)|0)+(i>>G)|0;V=D+(g<<1)|0;Y=Xi[U+13412>>2]|0;j=Xi[((f|0)==0?l+288|0:l+292|0)>>2]|0;K=X+2|0;W=q+2|0;if(!(Xi[l+31284>>2]|0))d=0;else d=(h|0)>(Xi[u+(t+-1+(Zi(o+(k>>a)&n,s)|0)<<2)>>2]|0);c=d&1;v=Xi[l+31288>>2]|0;_=Xi[l+31296>>2]|0;m=Xi[l+31292>>2]|0;if(!(Xi[l+31300>>2]|0))E=0;else E=(h|0)>(Xi[u+((Zi(o+-1|0,s)|0)+(t+(b>>a)&n)<<2)>>2]|0);n=E&1;C=(k<<1)+r|0;M=U+13380|0;p=Xi[M>>2]|0;N=k+r|0;C=((C|0)>(p|0)?p:C)-N>>x;p=(b<<1)+i|0;R=U+13376|0;A=Xi[R>>2]|0;T=b+i|0;p=((p|0)>(A|0)?A:p)-T>>G;A=w+20|0;if((Wi[A>>0]|0)==1){S=Xi[U+13340>>2]|0;w=k>>S;b=b>>S;k=(1<<S)+-1|0;h=(k&i|0)==0;k=(k&r|0)==0;b=((b|0)==0&1)+b|0;if(d&h){t=i+-1>>S;o=N>>S;a=(Xi[U+13416>>2]|0)-o|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;u=0;do{l=(Wi[s+(((Zi(u+o|0,Y)|0)+t|0)*12|0)+10>>0]|0)==0|l;u=u+2|0}while((u|0)<(a|0));c=l}else c=0}if((v|0)==1&h){s=i+-1>>S;u=r>>S;a=(Xi[U+13416>>2]|0)-u|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+(((Zi(o+u|0,Y)|0)+s|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(a|0));u=l}else u=0}else u=v;if((_|0)==1){h=(Zi(r+-1>>S,Y)|0)+(i+-1>>S)|0;h=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(h*12|0)+10>>0]|0)==0&1}else h=_;if((m|0)==1&k){l=i>>S;s=Y-l|0;s=(b|0)>(s|0)?s:b;if((s|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+((a+o|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(s|0));s=l}else s=0}else s=m;if(E&k){l=T>>S;o=Y-l|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;n=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;t=0;do{l=(Wi[n+((a+t|0)*12|0)+10>>0]|0)==0|l;t=t+2|0}while((t|0)<(o|0));n=l}else n=0}l=K;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));l=W;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));Gi[q>>1]=128;v=u;m=s;_=h;s=n}else s=n;L=(_|0)!=0;if(L){H=Gi[D+(g+~z<<1)>>1]|0;Gi[X>>1]=H;Gi[q>>1]=H}I=(m|0)!=0;if(I){S=D+(g-z<<1)|0;d=S;d=Ji[d>>1]|Ji[d+2>>1]<<16;S=S+4|0;S=Ji[S>>1]|Ji[S+2>>1]<<16;H=W;E=H;Gi[E>>1]=d;Gi[E+2>>1]=d>>>16;H=H+4|0;Gi[H>>1]=S;Gi[H+2>>1]=S>>>16}H=(s|0)!=0;if(H?(y=D+(4-z+g<<1)|0,S=y,S=Ji[S>>1]|Ji[S+2>>1]<<16,y=y+4|0,y=Ji[y>>1]|Ji[y+2>>1]<<16,F=q+10|0,O=F,Gi[O>>1]=S,Gi[O+2>>1]=S>>>16,F=F+4|0,Gi[F>>1]=y,Gi[F+2>>1]=y>>>16,F=rN(Ji[D+(3-z+g+p<<1)>>1]|0,0,65537,65537)|0,y=Ie,O=4-p|0,(O|0)>0):0){l=p+5|0;a=0;do{p=q+(l+a<<1)|0;S=p;Gi[S>>1]=F;Gi[S+2>>1]=F>>>16;p=p+4|0;Gi[p>>1]=y;Gi[p+2>>1]=y>>>16;a=a+4|0}while((a|0)<(O|0))}S=(v|0)!=0;if(S){O=g+-1|0;Gi[K>>1]=Gi[D+(O<<1)>>1]|0;Gi[X+4>>1]=Gi[D+(O+z<<1)>>1]|0;Gi[X+6>>1]=Gi[D+(O+(z<<1)<<1)>>1]|0;Gi[X+8>>1]=Gi[D+(O+(z*3|0)<<1)>>1]|0}p=(c|0)!=0;if(p){l=g+-1|0;if((C|0)>0){a=C+3|0;n=4;do{g=n;n=n+1|0;Gi[X+(n<<1)>>1]=Gi[D+((Zi(g,z)|0)+l<<1)>>1]|0}while((g|0)<(a|0))}a=rN(Ji[D+((Zi(C+3|0,z)|0)+l<<1)>>1]|0,0,65537,65537)|0;n=Ie;t=4-C|0;if((t|0)>0){l=C+5|0;o=0;do{D=X+(l+o<<1)|0;g=D;Gi[g>>1]=a;Gi[g+2>>1]=a>>>16;D=D+4|0;Gi[D>>1]=n;Gi[D+2>>1]=n>>>16;o=o+4|0}while((o|0)<(t|0))}}if((Wi[A>>0]|0)==1?(P=c|v,B=(P|0)!=0,P=P|_,m|s|P|0):0){R=Xi[R>>2]|0;E=R-i>>G;D=Xi[M>>2]|0;d=D-r>>x;E=H?((8<<G)+i|0)<(R|0)?8:E:(T|0)<(R|0)?4:E;d=p?((8<<x)+r|0)<(D|0)?8:d:(N|0)<(D|0)?4:d;do{if(!P){e:do{if((E|0)>0){n=Xi[U+13340>>2]|0;t=Zi((-1<<x)+r>>n,Y)|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;do{if(!(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>0){if((i|0)>0)while(1){a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break e}do{a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0}while((a|0)>1);Gi[q>>1]=Gi[W>>1]|0}}}while(0);l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}else{t=e+3516|0;s=Xi[U+13340>>2]|0;o=(-1<<G)+i>>s;l=p?C+4|0:4;while(1){P=l;l=l+-1|0;if((P|0)<=0){J=49;break}a=(l<<x)+r|0;P=(Zi(a>>s,Y)|0)+o|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0;if(!(Wi[n+(P*12|0)+10>>0]|0)){l=a;break}}if((J|0)==49){l=(l<<x)+r|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0}if(!(Wi[n+(((Zi(l>>s,Y)|0)+o|0)*12|0)+10>>0]|0)){c=q;b=X;l=Gi[q>>1]|0;break}t=Zi((-1<<x)+r>>s,Y)|0;if((E|0)>0){l=0;do{if(!(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>-1)J=57}else{l=0;J=57}if((J|0)==57)while(1){J=0;a=l;l=l+-1|0;if(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break;else J=57}l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}}while(0);Gi[b>>1]=l;u=(d|0)>0;if(B&u){l=rN(l&65535|0,0,65537,65537)|0;n=(-1<<G)+i|0;t=U+13340|0;o=(Xi[e+3516>>2]|0)+16|0;a=Ie;s=0;do{B=Xi[t>>2]|0;B=(Zi((s<<x)+r>>B,Y)|0)+(n>>B)|0;if(!(Wi[(Xi[o>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[X+((s|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{B=X+((s|1)<<1)|0;P=B;Gi[P>>1]=l;Gi[P+2>>1]=l>>>16;B=B+4|0;Gi[B>>1]=a;Gi[B+2>>1]=a>>>16}s=s+4|0}while((s|0)<(d|0))}if(!S){D=rN(Ji[b>>1]|0,0,65537,65537)|0;P=Ie;B=K;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}if(!p){D=rN(Ji[X+8>>1]|0,0,65537,65537)|0;P=Ie;B=X+10|0;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}k=(r|0)!=0;do{if((i|0)!=0&k){h=(-1<<G)+i|0;w=U+13340|0;n=Xi[w>>2]|0;a=h>>n;if(u){t=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;l=Xi[e+3516>>2]|0;u=l+16|0;o=Ie;s=d+-1|0;do{B=(Zi((s+-3<<x)+r>>n,Y)|0)+a|0;a=X+(s+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){t=rN(Ji[a>>1]|0,0,65537,65537)|0;o=Ie}else{n=a;B=n;Gi[B>>1]=t;Gi[B+2>>1]=t>>>16;n=n+4|0;Gi[n>>1]=o;Gi[n+2>>1]=o>>>16;n=Xi[w>>2]|0}s=s+-4|0;a=h>>n}while((s|0)>-1)}else l=Xi[e+3516>>2]|0;B=(Zi((-1<<x)+r>>n,Y)|0)+a|0;if(Wi[(Xi[l+16>>2]|0)+(B*12|0)+10>>0]|0)Gi[b>>1]=Gi[K>>1]|0}else{if(!i){if(!u)break;jT(K|0,0,((d+2147483647|0)>>>2<<3)+8|0)|0;break}if(u){n=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;o=(-1<<G)+i|0;s=U+13340|0;u=(Xi[e+3516>>2]|0)+16|0;a=Ie;t=d+-1|0;while(1){B=Xi[s>>2]|0;B=(Zi((t+-3<<x)+r>>B,Y)|0)+(o>>B)|0;l=X+(t+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[l>>1]|0,0,65537,65537)|0;a=Ie}else{B=l;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;l=l+4|0;Gi[l>>1]=a;Gi[l+2>>1]=a>>>16;l=n}t=t+-4|0;if((t|0)<=-1)break;else n=l}}}}while(0);l=Gi[b>>1]|0;Gi[c>>1]=l;if(k&(E|0)>0){l=rN(l&65535|0,0,65537,65537)|0;s=U+13340|0;n=(-1<<x)+r|0;t=(Xi[e+3516>>2]|0)+16|0;a=Ie;o=0;do{r=Xi[s>>2]|0;r=(Zi(n>>r,Y)|0)+((o<<G)+i>>r)|0;if(!(Wi[(Xi[t>>2]|0)+(r*12|0)+10>>0]|0)){l=rN(Ji[q+((o|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{r=q+((o|1)<<1)|0;x=r;Gi[x>>1]=l;Gi[x+2>>1]=l>>>16;r=r+4|0;Gi[r>>1]=a;Gi[r+2>>1]=a>>>16}o=o+4|0}while((o|0)<(E|0))}}do{if(p)if(!v)J=119;else J=120;else{if(S){Y=rN(Ji[X+8>>1]|0,0,65537,65537)|0;i=Ie;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=120;break}if(L){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=122;break}if(I){Y=Gi[W>>1]|0;Gi[X>>1]=Y;Y=rN(Y&65535|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124;break}if(H){i=Gi[q+10>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;G=Ie;Y=W;x=Y;Gi[x>>1]=r;Gi[x+2>>1]=r>>>16;Y=Y+4|0;Gi[Y>>1]=G;Gi[Y+2>>1]=G>>>16;Gi[X>>1]=i;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;i=X+10|0;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;break}else{Gi[X>>1]=512;J=W;i=J;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;J=J+4|0;Gi[J>>1]=512;Gi[J+2>>1]=33554944>>>16;J=q+10|0;i=J;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;J=J+4|0;Gi[J>>1]=512;Gi[J+2>>1]=33554944>>>16;J=K;i=J;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;J=J+4|0;Gi[J>>1]=512;Gi[J+2>>1]=33554944>>>16;J=X+10|0;i=J;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;J=J+4|0;Gi[J>>1]=512;Gi[J+2>>1]=33554944>>>16;J=119;break}}}while(0);if((J|0)==119){r=rN(Ji[X+10>>1]|0,0,65537,65537)|0;G=Ie;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;J=120}if((J|0)==120)if(!_){Gi[X>>1]=Gi[K>>1]|0;J=122}else J=122;if((J|0)==122)if(!m){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=W;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124}else J=124;if((J|0)==124?!H:0){Y=rN(Ji[q+8>>1]|0,0,65537,65537)|0;i=Ie;J=q+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16}Gi[q>>1]=Gi[X>>1]|0;switch(j|0){case 0:{nV[Xi[e+6136>>2]&255](V,W,K,z);break}case 1:{Xz[Xi[e+6152>>2]&127](V,W,K,z,2,f);break}default:Xz[Xi[e+6156>>2]&127](V,W,K,z,f,j)}Ue=Z;return}function LF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;Z=re+130|0;J=re;n=Xi[e+136>>2]|0;j=Xi[e+1412>>2]|0;Y=Xi[j+13424+(f<<2)>>2]|0;z=Xi[j+13436+(f<<2)>>2]|0;d=8<<Y;t=Xi[j+13328>>2]|0;c=8<<z;o=Xi[j+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;P=Xi[e+160>>2]|0;ee=(Xi[P+32+(f<<2)>>2]|0)>>>1;P=Xi[P+(f<<2)>>2]|0;R=(Zi(ee,r>>z)|0)+(i>>Y)|0;ie=P+(R<<1)|0;V=Xi[j+13412>>2]|0;K=(f|0)==0;$=Xi[(K?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=Z+2|0;q=G+2|0;Q=J+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);o=_&1;L=(c<<1)+r|0;T=j+13380|0;y=Xi[T>>2]|0;C=c+r|0;L=((L|0)>(y|0)?y:L)-C>>z;y=(d<<1)+i|0;N=j+13376|0;M=Xi[N>>2]|0;D=d+i|0;y=((y|0)>(M|0)?M:y)-D>>Y;M=b+20|0;if((Wi[M>>0]|0)==1){m=Xi[j+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=C>>m;t=(Xi[j+13416>>2]|0)-u|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;w=0;do{n=(Wi[h+(((Zi(w+u|0,V)|0)+s|0)*12|0)+10>>0]|0)==0|n;w=w+2|0}while((w|0)<(t|0));v=n}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;t=(Xi[j+13416>>2]|0)-w|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+(((Zi(u+w|0,V)|0)+h|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(t|0));w=n}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,V)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){n=i>>m;h=V-n|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+((t+u|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(h|0));h=n}else h=0}else h=F;if(_&c){n=D>>m;u=V-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0));o=n}else o=0}n=a;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));n=l;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));Gi[Z>>1]=128;S=w;F=h;p=k;h=o}else h=o;H=(p|0)!=0;if(H){U=Gi[P+(R+~ee<<1)>>1]|0;Gi[X>>1]=U;Gi[Z>>1]=U}B=(F|0)!=0;if(B){U=P+(R-ee<<1)|0;Gi[l>>1]=Gi[U>>1]|0;Gi[l+2>>1]=Gi[U+2>>1]|0;Gi[l+4>>1]=Gi[U+4>>1]|0;Gi[l+6>>1]=Gi[U+6>>1]|0;Gi[l+8>>1]=Gi[U+8>>1]|0;Gi[l+10>>1]=Gi[U+10>>1]|0;Gi[l+12>>1]=Gi[U+12>>1]|0;Gi[l+14>>1]=Gi[U+14>>1]|0}U=(h|0)!=0;if(U?(O=Z+18|0,A=P+(8-ee+R<<1)|0,Gi[O>>1]=Gi[A>>1]|0,Gi[O+2>>1]=Gi[A+2>>1]|0,Gi[O+4>>1]=Gi[A+4>>1]|0,Gi[O+6>>1]=Gi[A+6>>1]|0,Gi[O+8>>1]=Gi[A+8>>1]|0,Gi[O+10>>1]=Gi[A+10>>1]|0,Gi[O+12>>1]=Gi[A+12>>1]|0,Gi[O+14>>1]=Gi[A+14>>1]|0,O=rN(Ji[P+(7-ee+R+y<<1)>>1]|0,0,65537,65537)|0,A=Ie,g=8-y|0,(g|0)>0):0){n=y+9|0;t=0;do{y=Z+(n+t<<1)|0;m=y;Gi[m>>1]=O;Gi[m+2>>1]=O>>>16;y=y+4|0;Gi[y>>1]=A;Gi[y+2>>1]=A>>>16;t=t+4|0}while((t|0)<(g|0))}y=(S|0)!=0;if(y){n=R+-1|0;t=0;do{g=t;t=t+1|0;Gi[X+(t<<1)>>1]=Gi[P+(n+(Zi(g,ee)|0)<<1)>>1]|0}while((t|0)!=8)}m=(v|0)!=0;if(m){n=R+-1|0;if((L|0)>0){t=L+7|0;o=8;do{R=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[P+((Zi(R,ee)|0)+n<<1)>>1]|0}while((R|0)<(t|0))}t=rN(Ji[P+((Zi(L+7|0,ee)|0)+n<<1)>>1]|0,0,65537,65537)|0;o=Ie;s=8-L|0;if((s|0)>0){n=L+9|0;u=0;do{P=X+(n+u<<1)|0;R=P;Gi[R>>1]=t;Gi[R+2>>1]=t>>>16;P=P+4|0;Gi[P>>1]=o;Gi[P+2>>1]=o>>>16;u=u+4|0}while((u|0)<(s|0))}}if((Wi[M>>0]|0)==1?(I=v|S,x=(I|0)!=0,I=I|p,F|h|I|0):0){N=Xi[N>>2]|0;_=N-i>>Y;P=Xi[T>>2]|0;E=P-r>>z;_=U?((16<<Y)+i|0)<(N|0)?16:_:(D|0)<(N|0)?8:_;E=m?((16<<z)+r|0)<(P|0)?16:E:(C|0)<(P|0)?8:E;do{if(!I){e:do{if((_|0)>0){o=Xi[j+13340>>2]|0;s=Zi((-1<<z)+r>>o,V)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0}while((t|0)>1);Gi[Z>>1]=Gi[l>>1]|0}}}while(0);n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}else{s=e+3516|0;h=Xi[j+13340>>2]|0;u=(-1<<Y)+i>>h;n=m?L+8|0:8;while(1){I=n;n=n+-1|0;if((I|0)<=0){W=50;break}t=(n<<z)+r|0;I=(Zi(t>>h,V)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(I*12|0)+10>>0]|0)){n=t;break}}if((W|0)==50){n=(n<<z)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,V)|0)+u|0)*12|0)+10>>0]|0)){v=Z;d=X;n=Gi[Z>>1]|0;break}s=Zi((-1<<z)+r>>h,V)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)W=58}else{n=0;W=58}if((W|0)==58)while(1){W=0;t=n;n=n+-1|0;if(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break;else W=58}n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(x&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<Y)+i|0;s=j+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{x=Xi[s>>2]|0;x=(Zi((h<<z)+r>>x,V)|0)+(o>>x)|0;if(!(Wi[(Xi[u>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{x=X+((h|1)<<1)|0;I=x;Gi[I>>1]=n;Gi[I+2>>1]=n>>>16;x=x+4|0;Gi[x>>1]=t;Gi[x+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){P=rN(Ji[d>>1]|0,0,65537,65537)|0;I=Ie;x=a;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+10|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}if(!m){P=rN(Ji[X+16>>1]|0,0,65537,65537)|0;I=Ie;x=X+18|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+26|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<Y)+i|0;b=j+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{x=(Zi((h+-3<<z)+r>>o,V)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;x=o;Gi[x>>1]=s;Gi[x+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;x=(Zi((-1<<z)+r>>o,V)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(x*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){o=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<Y)+i|0;h=j+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;while(1){x=Xi[h>>2]|0;x=(Zi((s+-3<<z)+r>>x,V)|0)+(u>>x)|0;n=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[n>>1]|0,0,65537,65537)|0;t=Ie}else{x=n;Gi[x>>1]=o;Gi[x+2>>1]=o>>>16;n=n+4|0;Gi[n>>1]=t;Gi[n+2>>1]=t>>>16;n=o}s=s+-4|0;if((s|0)<=-1)break;else o=n}}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=j+13340|0;o=(-1<<z)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,V)|0)+((u<<Y)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[Z+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=Z+((u|1)<<1)|0;z=r;Gi[z>>1]=n;Gi[z+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)W=120;else W=121;else{if(y){V=rN(Ji[X+16>>1]|0,0,65537,65537)|0;i=Ie;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=121;break}if(H){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=123;break}if(B){V=Gi[l>>1]|0;Gi[X>>1]=V;V=rN(V&65535|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125;break}if(U){i=Gi[Z+18>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;Y=Ie;V=l;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;V=Z+10|0;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;Gi[X>>1]=i;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+18|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+26|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;break}else{Gi[X>>1]=512;W=l;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=Z+10|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=Z+18|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=Z+26|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=a;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=X+10|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=X+18|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=X+26|0;i=W;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;W=W+4|0;Gi[W>>1]=512;Gi[W+2>>1]=33554944>>>16;W=120;break}}}while(0);if((W|0)==120){r=rN(Ji[X+18>>1]|0,0,65537,65537)|0;Y=Ie;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;W=121}if((W|0)==121)if(!p){Gi[X>>1]=Gi[a>>1]|0;W=123}else W=123;if((W|0)==123)if(!F){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=l;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125}else W=125;if((W|0)==125?!U:0){V=rN(Ji[Z+16>>1]|0,0,65537,65537)|0;i=Ie;W=Z+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[Z>>1]=h;do{if(!(Xi[j+13368>>2]|0)){if(!K?(Xi[j+4>>2]|0)!=3:0){W=136;break}if(($|0)!=1){W=$+-26|0;W=(W|0)>-1?W:26-$|0;K=$+-10|0;K=(K|0)>-1?K:10-$|0;if((((W|0)>(K|0)?K:W)|0)>7){t=Gi[X+32>>1]|0;Gi[G+32>>1]=t;n=Gi[Z+32>>1]|0;Gi[J+32>>1]=n;o=Gi[X+30>>1]|0;u=14;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[J>>1]=l;l=n;a=Gi[Z+30>>1]|0;t=14;while(1){n=Gi[Z+(t<<1)>>1]|0;Gi[J+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;W=136;break}}}else W=136}else W=138}else W=136}while(0);e:do{if((W|0)==136)switch($|0){case 1:{W=138;break e}case 0:{nV[Xi[e+6140>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6160>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((W|0)==138)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,3,f);Ue=re;return}function IF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0;$=Ue;Ue=Ue+528|0;K=$+390|0;j=$+260|0;X=$+130|0;G=$;n=Xi[e+136>>2]|0;z=Xi[e+1412>>2]|0;x=Xi[z+13424+(f<<2)>>2]|0;B=Xi[z+13436+(f<<2)>>2]|0;d=16<<x;t=Xi[z+13328>>2]|0;c=16<<B;o=Xi[z+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;Z=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(Z,r>>B)|0)+(i>>x)|0;Q=N+(A<<1)|0;U=Xi[z+13412>>2]|0;V=(f|0)==0;J=Xi[(V?n+288|0:n+292|0)>>2]|0;a=K+2|0;l=X+2|0;W=j+2|0;q=G+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=z+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=z+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[z+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[z+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[z+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[X>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){I=Gi[N+(A+~Z<<1)>>1]|0;Gi[K>>1]=I;Gi[X>>1]=I}L=(F|0)!=0;if(L){o=l;t=N+(A-Z<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}I=(n|0)!=0;if(I){o=X+34|0;t=N+(16-Z+A<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(15-Z+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=16-y|0;if((h|0)>0){t=y+17|0;o=0;do{y=X+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[K+(o<<1)>>1]=Gi[N+(t+(Zi(m,Z)|0)<<1)>>1]|0}while((o|0)!=16)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+15|0;s=16;do{A=s;s=s+1|0;Gi[K+(s<<1)>>1]=Gi[N+((Zi(A,Z)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+15|0,Z)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=16-D|0;if((u|0)>0){t=D+17|0;h=0;do{N=K+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,H=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=I?((32<<x)+i|0)<(M|0)?32:_:(R|0)<(M|0)?16:_;E=m?((32<<B)+r|0)<(N|0)?32:E:(T|0)<(N|0)?16:E;do{if(!C){e:do{if((_|0)>0){o=Xi[z+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0}while((t|0)>1);Gi[X>>1]=Gi[l>>1]|0}}}while(0);n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}else{s=e+3516|0;h=Xi[z+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+16|0:16;while(1){C=n;n=n+-1|0;if((C|0)<=0){Y=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((Y|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=X;d=K;n=Gi[X>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)Y=58}else{n=0;Y=58}if((Y|0)==58)while(1){Y=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break;else Y=58}n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(H&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=z+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{H=Xi[s>>2]|0;H=(Zi((h<<B)+r>>H,U)|0)+(o>>H)|0;if(!(Wi[(Xi[u>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[K+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{H=K+((h|1)<<1)|0;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;H=a;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+10|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+18|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+26|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}if(!m){N=rN(Ji[K+32>>1]|0,0,65537,65537)|0;C=Ie;H=K+34|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+42|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+50|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+58|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=z+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{H=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=K+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;H=o;Gi[H>>1]=s;Gi[H+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;H=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(H*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=z+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{H=Xi[h>>2]|0;H=(Zi((s+-3<<B)+r>>H,U)|0)+(u>>H)|0;o=K+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{H=o;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=z+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[X+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=X+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)Y=120;else Y=121;else{if(y){U=rN(Ji[K+32>>1]|0,0,65537,65537)|0;i=Ie;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=121;break}if(P){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=123;break}if(L){U=Gi[l>>1]|0;Gi[K>>1]=U;U=rN(U&65535|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125;break}if(I){i=Gi[X+34>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;x=Ie;U=l;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+10|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+18|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+26|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;Gi[K>>1]=i;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+34|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+42|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+50|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+58|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;break}else{Gi[K>>1]=512;Y=l;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+10|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+18|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+26|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+34|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+42|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+50|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=X+58|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=a;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+10|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+18|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+26|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+34|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+42|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+50|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=K+58|0;i=Y;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;Y=Y+4|0;Gi[Y>>1]=512;Gi[Y+2>>1]=33554944>>>16;Y=120;break}}}while(0);if((Y|0)==120){r=rN(Ji[K+34>>1]|0,0,65537,65537)|0;x=Ie;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;Y=121}if((Y|0)==121)if(!p){Gi[K>>1]=Gi[a>>1]|0;Y=123}else Y=123;if((Y|0)==123)if(!F){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=l;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125}else Y=125;if((Y|0)==125?!I:0){U=rN(Ji[X+32>>1]|0,0,65537,65537)|0;i=Ie;Y=X+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16}h=Gi[K>>1]|0;Gi[X>>1]=h;do{if(!(Xi[z+13368>>2]|0)){if(!V?(Xi[z+4>>2]|0)!=3:0){Y=136;break}if((J|0)!=1){Y=J+-26|0;Y=(Y|0)>-1?Y:26-J|0;V=J+-10|0;V=(V|0)>-1?V:10-J|0;if((((Y|0)>(V|0)?V:Y)|0)>1){n=Gi[K+64>>1]|0;Gi[j+64>>1]=n;u=Gi[X+64>>1]|0;Gi[G+64>>1]=u;t=Gi[K+62>>1]|0;s=30;while(1){o=Gi[K+(s<<1)>>1]|0;Gi[j+(s+1<<1)>>1]=((n&65535)+2+((t&65535)<<1)+(o&65535)|0)>>>2;if((s|0)>0){n=t;t=o;s=s+-1|0}else break}t=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[j>>1]=t;Gi[G>>1]=t;t=Gi[X+62>>1]|0;a=u;n=30;while(1){l=Gi[X+(n<<1)>>1]|0;Gi[G+(n+1<<1)>>1]=((a&65535)+2+((t&65535)<<1)+(l&65535)|0)>>>2;if((n|0)>0){a=t;t=l;n=n+-1|0}else{a=W;l=q;Y=136;break}}}else Y=136}else Y=138}else Y=136}while(0);e:do{if((Y|0)==136)switch(J|0){case 1:{Y=138;break e}case 0:{nV[Xi[e+6144>>2]&255](Q,l,a,Z);break e}default:{Xz[Xi[e+6164>>2]&127](Q,l,a,Z,f,J);break e}}}while(0);if((Y|0)==138)Xz[Xi[e+6152>>2]&127](Q,l,a,Z,4,f);Ue=$;return}function HF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;J=re+130|0;Z=re;n=Xi[e+136>>2]|0;V=Xi[e+1412>>2]|0;x=Xi[V+13424+(f<<2)>>2]|0;B=Xi[V+13436+(f<<2)>>2]|0;d=32<<x;t=Xi[V+13328>>2]|0;c=32<<B;o=Xi[V+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;ee=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(ee,r>>B)|0)+(i>>x)|0;ie=N+(A<<1)|0;U=Xi[V+13412>>2]|0;Y=(f|0)==0;$=Xi[(Y?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=J+2|0;q=G+2|0;Q=Z+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=V+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=V+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[V+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[V+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[V+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[J>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){H=Gi[N+(A+~ee<<1)>>1]|0;Gi[X>>1]=H;Gi[J>>1]=H}L=(F|0)!=0;if(L){o=l;t=N+(A-ee<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}H=(n|0)!=0;if(H){o=J+66|0;t=N+(32-ee+A<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(31-ee+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=32-y|0;if((h|0)>0){t=y+33|0;o=0;do{y=J+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[N+(t+(Zi(m,ee)|0)<<1)>>1]|0}while((o|0)!=32)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+31|0;s=32;do{A=s;s=s+1|0;Gi[X+(s<<1)>>1]=Gi[N+((Zi(A,ee)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+31|0,ee)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=32-D|0;if((u|0)>0){t=D+33|0;h=0;do{N=X+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,I=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=H?((64<<x)+i|0)<(M|0)?64:_:(R|0)<(M|0)?32:_;E=m?((64<<B)+r|0)<(N|0)?64:E:(T|0)<(N|0)?32:E;do{if(!C){e:do{if((_|0)>0){o=Xi[V+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0}while((t|0)>1);Gi[J>>1]=Gi[l>>1]|0}}}while(0);n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}else{s=e+3516|0;h=Xi[V+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+32|0:32;while(1){C=n;n=n+-1|0;if((C|0)<=0){z=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((z|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=J;d=X;n=Gi[J>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)z=58}else{n=0;z=58}if((z|0)==58)while(1){z=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break;else z=58}n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(I&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=V+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{I=Xi[s>>2]|0;I=(Zi((h<<B)+r>>I,U)|0)+(o>>I)|0;if(!(Wi[(Xi[u>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{I=X+((h|1)<<1)|0;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;I=a;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+10|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+18|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+26|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+34|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+42|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+50|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+58|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}if(!m){N=rN(Ji[X+64>>1]|0,0,65537,65537)|0;C=Ie;I=X+66|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+74|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+82|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+90|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+98|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+106|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+114|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+122|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=V+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{I=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;I=o;Gi[I>>1]=s;Gi[I+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;I=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(I*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=V+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{I=Xi[h>>2]|0;I=(Zi((s+-3<<B)+r>>I,U)|0)+(u>>I)|0;o=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{I=o;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=V+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[J+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=J+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}e:do{if(m)z=124;else{if(y){U=rN(Ji[X+64>>1]|0,0,65537,65537)|0;i=Ie;z=X+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126;break}if(P){n=rN(Ji[X>>1]|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=126;break e}}}if(L){n=Gi[l>>1]|0;Gi[X>>1]=n;n=rN(n&65535|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=128;break e}}}if(H){o=Gi[J+66>>1]|0;n=rN(o&65535|0,0,65537,65537)|0;t=Ie;i=l;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+10|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+18|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+26|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+34|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+42|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+50|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+58|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;Gi[X>>1]=o;o=0;while(1){i=X+((o|1)<<1)|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64)break e}}Gi[X>>1]=512;n=0;do{z=J+((n|1)<<1)|0;i=z;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;z=z+4|0;Gi[z>>1]=512;Gi[z+2>>1]=33554944>>>16;n=n+4|0}while((n|0)<64);n=0;do{z=X+((n|1)<<1)|0;i=z;Gi[i>>1]=512;Gi[i+2>>1]=33554944>>>16;z=z+4|0;Gi[z>>1]=512;Gi[z+2>>1]=33554944>>>16;n=n+4|0}while((n|0)<64);z=124}}while(0);if((z|0)==124)if(!S){U=rN(Ji[X+66>>1]|0,0,65537,65537)|0;i=Ie;z=a;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126}else z=126;if((z|0)==126)if(!p){Gi[X>>1]=Gi[a>>1]|0;z=128}else z=128;if((z|0)==128?(F|0)==0:0){U=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;z=l;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}if(!H){U=rN(Ji[J+64>>1]|0,0,65537,65537)|0;i=Ie;z=J+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[J>>1]=h;e:do{if(!(Xi[V+13368>>2]|0)){if(!Y?(Xi[V+4>>2]|0)!=3:0){z=149;break}if(($|0)!=1){z=$+-26|0;z=(z|0)>-1?z:26-$|0;i=$+-10|0;i=(i|0)>-1?i:10-$|0;if((((z|0)>(i|0)?i:z)|0)>0){if(Y&(Wi[V+13317>>0]|0)!=0){t=h&65535;n=Gi[J+128>>1]|0;o=n&65535;Y=o+t-(Ji[J+64>>1]<<1)|0;if((((Y|0)>-1?Y:0-Y|0)|0)<32?(W=X+128|0,j=Gi[W>>1]|0,K=j&65535,Y=K+t-(Ji[X+64>>1]<<1)|0,(((Y|0)>-1?Y:0-Y|0)|0)<32):0){Gi[Z>>1]=h;Gi[Z+128>>1]=n;l=0;do{J=l;l=l+1|0;Gi[Z+(l<<1)>>1]=((Zi(63-J|0,t)|0)+32+(Zi(l,o)|0)|0)>>>6}while((l|0)!=63);Gi[a>>1]=((t*63|0)+32+K|0)>>>6;Gi[X+4>>1]=(((h&65535)*62|0)+32+((j&65535)<<1)|0)>>>6;l=2;while(1){Z=l;l=l+1|0;Gi[X+(l<<1)>>1]=((Zi(63-Z|0,Ji[X>>1]|0)|0)+32+(Zi(l,Ji[W>>1]|0)|0)|0)>>>6;if((l|0)==63){l=Q;z=149;break e}}}}else n=Gi[J+128>>1]|0;t=Gi[X+128>>1]|0;Gi[G+128>>1]=t;Gi[Z+128>>1]=n;o=Gi[X+126>>1]|0;u=62;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[Z>>1]=l;l=n;a=Gi[J+126>>1]|0;t=62;while(1){n=Gi[J+(t<<1)>>1]|0;Gi[Z+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;z=149;break}}}else z=149}else z=151}else z=149}while(0);e:do{if((z|0)==149)switch($|0){case 1:{z=151;break e}case 0:{nV[Xi[e+6148>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6168>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((z|0)==151)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,5,f);Ue=re;return}function BF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+8|0;a=r+8|0;u=0;do{n=r+(u<<1)|0;t=3-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,3-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+4+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>3}while((s|0)!=4)}while((u|0)!=4);return}function UF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+16|0;a=r+16|0;u=0;do{n=r+(u<<1)|0;t=7-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,7-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+8+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>4}while((s|0)!=8)}while((u|0)!=8);return}function xF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+32|0;a=r+32|0;u=0;do{n=r+(u<<1)|0;t=15-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,15-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+16+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>5}while((s|0)!=16)}while((u|0)!=16);return}function zF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+64|0;a=r+64|0;u=0;do{n=r+(u<<1)|0;t=31-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,31-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+32+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>6}while((s|0)!=32)}while((u|0)!=32);return}function VF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=1<<l;o=(l|0)==31;if(!o){n=w;t=0;do{n=(Ji[r+(t<<1)>>1]|0)+n+(Ji[i+(t<<1)>>1]|0)|0;t=t+1|0}while((t|0)<(w|0));l=n>>l+1;s=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;if(!o){t=0;do{n=Zi(t,f)|0;o=0;do{k=e+(o+n<<1)|0;b=k;Wi[b>>0]=s;Wi[b+1>>0]=s>>8;Wi[b+2>>0]=s>>16;Wi[b+3>>0]=s>>24;k=k+4|0;Wi[k>>0]=u;Wi[k+1>>0]=u>>8;Wi[k+2>>0]=u>>16;Wi[k+3>>0]=u>>24;o=o+4|0}while((o|0)<(w|0));t=t+1|0}while((t|0)<(w|0))}}else l=w>>l+1;if((a|0)==0&(w|0)<32?(Gi[e>>1]=((l<<1)+2+(Ji[r>>1]|0)+(Ji[i>>1]|0)|0)>>>2,h=(w|0)>1,h):0){n=(l*3|0)+2|0;t=1;do{Gi[e+(t<<1)>>1]=(n+(Ji[i+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0));if(h){n=(l*3|0)+2|0;t=1;do{Gi[e+((Zi(t,f)|0)<<1)>>1]=(n+(Ji[r+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0))}}return}function YF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+208|0;w=d;c=Xi[88888+(a+-2<<2)>>2]|0;o=w+8|0;n=c>>3;if((a|0)>17){t=i+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;s=0;do{u=s;s=s+1|0;n=Zi(s,c)|0;t=n>>5;n=n&31;if(!n){b=Zi(u,f)|0;k=o+(t+1<<1)|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b<<1)|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24}else{k=32-n|0;b=Zi(u,f)|0;w=Zi(Ji[o+(t+1<<1)>>1]|0,k)|0;Gi[e+(b<<1)>>1]=(w+16+(Zi(Ji[o+(t+2<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+2<<1)>>1]|0,k)|0;Gi[e+(b+1<<1)>>1]=(w+16+(Zi(Ji[o+(t+3<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+3<<1)>>1]|0,k)|0;Gi[e+(b+2<<1)>>1]=(w+16+(Zi(Ji[o+(t+4<<1)>>1]|0,n)|0)|0)>>>5;k=Zi(Ji[o+(t+4<<1)>>1]|0,k)|0;Gi[e+(b+3<<1)>>1]=(k+16+(Zi(Ji[o+(t+5<<1)>>1]|0,n)|0)|0)>>>5}}while((s|0)!=4);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=4)}}else{t=r+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;n=f<<1;t=f*3|0;w=0;do{k=w;w=w+1|0;u=Zi(w,c)|0;s=u>>5;u=u&31;if(!u){Gi[e+(k<<1)>>1]=Gi[o+(s+1<<1)>>1]|0;Gi[e+(k+f<<1)>>1]=Gi[o+(s+2<<1)>>1]|0;Gi[e+(n+k<<1)>>1]=Gi[o+(s+3<<1)>>1]|0;Gi[e+(t+k<<1)>>1]=Gi[o+(s+4<<1)>>1]|0}else{h=32-u|0;b=0;do{v=b+s|0;E=Zi(Ji[o+(v+1<<1)>>1]|0,h)|0;Gi[e+((Zi(b,f)|0)+k<<1)>>1]=(E+16+(Zi(Ji[o+(v+2<<1)>>1]|0,u)|0)|0)>>>5;b=b+1|0}while((b|0)!=4)}}while((w|0)!=4);if((l|0)==0&(a|0)==10){t=i+-2|0;n=((Ji[i>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e>>1]=n;n=((Ji[i+2>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+2>>1]=n;n=((Ji[i+4>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+4>>1]=n;n=((Ji[i+6>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+6>>1]=n}}Ue=d;return}function jF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+16|0;n=k>>2;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;o=t+(s+1<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+5<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+4<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<8)}}while((w|0)!=8);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=8)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=8)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=8)}}while((h|0)!=8);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<8)}}Ue=b;return}function KF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+32|0;n=k>>1;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;n=t+(s+1<<1)|0;u=n;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=e+(h<<1)|0;o=c;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;c=c+4|0;Wi[c>>0]=n;Wi[c+1>>0]=n>>8;Wi[c+2>>0]=n>>16;Wi[c+3>>0]=n>>24;c=t+(s+5<<1)|0;n=c;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=e+(h+4<<1)|0;u=o;Wi[u>>0]=n;Wi[u+1>>0]=n>>8;Wi[u+2>>0]=n>>16;Wi[u+3>>0]=n>>24;o=o+4|0;Wi[o>>0]=c;Wi[o+1>>0]=c>>8;Wi[o+2>>0]=c>>16;Wi[o+3>>0]=c>>24;o=t+(s+9<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h+8<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+13<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+12<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<16)}}while((w|0)!=16);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=16)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=16)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=16)}}while((h|0)!=16);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=1024)n=0-n>>31&1023;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<16)}}Ue=b;return}function WF(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;h=Ue;Ue=Ue+208|0;s=h;u=Xi[88888+(a+-2<<2)>>2]|0;o=s+64|0;if((a|0)>17){l=i+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[r+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else{r=o;break}}}else r=l;i=0;do{l=i;i=i+1|0;t=Zi(i,u)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;l=Zi(l,f)|0;a=0;do{o=r+(n+a<<1)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=e+(a+l<<1)|0;t=s;Wi[t>>0]=w;Wi[t+1>>0]=w>>8;Wi[t+2>>0]=w>>16;Wi[t+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;a=a+4|0}while((a|0)<32)}else{o=32-t|0;l=Zi(l,f)|0;a=0;do{w=a+n|0;s=Zi(Ji[r+(w+1<<1)>>1]|0,o)|0;Gi[e+(a+l<<1)>>1]=(s+16+(Zi(Ji[r+(w+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|1;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|2;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|3;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;a=a+4|0}while((a|0)<32)}}while((i|0)!=32)}else{l=r+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[i+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else break}}else o=l;r=0;do{i=r;r=r+1|0;a=Zi(r,u)|0;l=a>>5;a=a&31;if(!a){l=l+1|0;a=0;do{Gi[e+((Zi(a,f)|0)+i<<1)>>1]=Gi[o+(l+a<<1)>>1]|0;a=a+1|0}while((a|0)!=32)}else{n=32-a|0;t=0;do{k=t+l|0;w=Zi(Ji[o+(k+1<<1)>>1]|0,n)|0;Gi[e+((Zi(t,f)|0)+i<<1)>>1]=(w+16+(Zi(Ji[o+(k+2<<1)>>1]|0,a)|0)|0)>>>5;t=t+1|0}while((t|0)!=32)}}while((r|0)!=32)}Ue=h;return}function GF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;Z=Ue;Ue=Ue+272|0;X=Z+130|0;q=Z;l=Xi[e+136>>2]|0;U=Xi[e+1412>>2]|0;G=Xi[U+13424+(f<<2)>>2]|0;x=Xi[U+13436+(f<<2)>>2]|0;b=4<<G;a=Xi[U+13328>>2]|0;k=4<<x;n=Xi[U+13420>>2]|0;t=i>>a&n;o=r>>a&n;s=n+2|0;h=(Zi(o,s)|0)+t|0;w=Xi[e+1416>>2]|0;u=Xi[w+1684>>2]|0;h=Xi[u+(h<<2)>>2]|0;D=Xi[e+160>>2]|0;z=(Xi[D+32+(f<<2)>>2]|0)>>>1;D=Xi[D+(f<<2)>>2]|0;g=(Zi(z,r>>x)|0)+(i>>G)|0;V=D+(g<<1)|0;Y=Xi[U+13412>>2]|0;j=Xi[((f|0)==0?l+288|0:l+292|0)>>2]|0;K=X+2|0;W=q+2|0;if(!(Xi[l+31284>>2]|0))d=0;else d=(h|0)>(Xi[u+(t+-1+(Zi(o+(k>>a)&n,s)|0)<<2)>>2]|0);c=d&1;v=Xi[l+31288>>2]|0;_=Xi[l+31296>>2]|0;m=Xi[l+31292>>2]|0;if(!(Xi[l+31300>>2]|0))E=0;else E=(h|0)>(Xi[u+((Zi(o+-1|0,s)|0)+(t+(b>>a)&n)<<2)>>2]|0);n=E&1;C=(k<<1)+r|0;M=U+13380|0;p=Xi[M>>2]|0;N=k+r|0;C=((C|0)>(p|0)?p:C)-N>>x;p=(b<<1)+i|0;R=U+13376|0;A=Xi[R>>2]|0;T=b+i|0;p=((p|0)>(A|0)?A:p)-T>>G;A=w+20|0;if((Wi[A>>0]|0)==1){S=Xi[U+13340>>2]|0;w=k>>S;b=b>>S;k=(1<<S)+-1|0;h=(k&i|0)==0;k=(k&r|0)==0;b=((b|0)==0&1)+b|0;if(d&h){t=i+-1>>S;o=N>>S;a=(Xi[U+13416>>2]|0)-o|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;u=0;do{l=(Wi[s+(((Zi(u+o|0,Y)|0)+t|0)*12|0)+10>>0]|0)==0|l;u=u+2|0}while((u|0)<(a|0));c=l}else c=0}if((v|0)==1&h){s=i+-1>>S;u=r>>S;a=(Xi[U+13416>>2]|0)-u|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+(((Zi(o+u|0,Y)|0)+s|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(a|0));u=l}else u=0}else u=v;if((_|0)==1){h=(Zi(r+-1>>S,Y)|0)+(i+-1>>S)|0;h=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(h*12|0)+10>>0]|0)==0&1}else h=_;if((m|0)==1&k){l=i>>S;s=Y-l|0;s=(b|0)>(s|0)?s:b;if((s|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+((a+o|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(s|0));s=l}else s=0}else s=m;if(E&k){l=T>>S;o=Y-l|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){a=(Zi(r+-1>>S,Y)|0)+l|0;n=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;t=0;do{l=(Wi[n+((a+t|0)*12|0)+10>>0]|0)==0|l;t=t+2|0}while((t|0)<(o|0));n=l}else n=0}l=K;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));l=W;a=l+128|0;do{Gi[l>>1]=32896;l=l+2|0}while((l|0)<(a|0));Gi[q>>1]=128;v=u;m=s;_=h;s=n}else s=n;L=(_|0)!=0;if(L){H=Gi[D+(g+~z<<1)>>1]|0;Gi[X>>1]=H;Gi[q>>1]=H}I=(m|0)!=0;if(I){S=D+(g-z<<1)|0;d=S;d=Ji[d>>1]|Ji[d+2>>1]<<16;S=S+4|0;S=Ji[S>>1]|Ji[S+2>>1]<<16;H=W;E=H;Gi[E>>1]=d;Gi[E+2>>1]=d>>>16;H=H+4|0;Gi[H>>1]=S;Gi[H+2>>1]=S>>>16}H=(s|0)!=0;if(H?(y=D+(4-z+g<<1)|0,S=y,S=Ji[S>>1]|Ji[S+2>>1]<<16,y=y+4|0,y=Ji[y>>1]|Ji[y+2>>1]<<16,F=q+10|0,O=F,Gi[O>>1]=S,Gi[O+2>>1]=S>>>16,F=F+4|0,Gi[F>>1]=y,Gi[F+2>>1]=y>>>16,F=rN(Ji[D+(3-z+g+p<<1)>>1]|0,0,65537,65537)|0,y=Ie,O=4-p|0,(O|0)>0):0){l=p+5|0;a=0;do{p=q+(l+a<<1)|0;S=p;Gi[S>>1]=F;Gi[S+2>>1]=F>>>16;p=p+4|0;Gi[p>>1]=y;Gi[p+2>>1]=y>>>16;a=a+4|0}while((a|0)<(O|0))}S=(v|0)!=0;if(S){O=g+-1|0;Gi[K>>1]=Gi[D+(O<<1)>>1]|0;Gi[X+4>>1]=Gi[D+(O+z<<1)>>1]|0;Gi[X+6>>1]=Gi[D+(O+(z<<1)<<1)>>1]|0;Gi[X+8>>1]=Gi[D+(O+(z*3|0)<<1)>>1]|0}p=(c|0)!=0;if(p){l=g+-1|0;if((C|0)>0){a=C+3|0;n=4;do{g=n;n=n+1|0;Gi[X+(n<<1)>>1]=Gi[D+((Zi(g,z)|0)+l<<1)>>1]|0}while((g|0)<(a|0))}a=rN(Ji[D+((Zi(C+3|0,z)|0)+l<<1)>>1]|0,0,65537,65537)|0;n=Ie;t=4-C|0;if((t|0)>0){l=C+5|0;o=0;do{D=X+(l+o<<1)|0;g=D;Gi[g>>1]=a;Gi[g+2>>1]=a>>>16;D=D+4|0;Gi[D>>1]=n;Gi[D+2>>1]=n>>>16;o=o+4|0}while((o|0)<(t|0))}}if((Wi[A>>0]|0)==1?(P=c|v,B=(P|0)!=0,P=P|_,m|s|P|0):0){R=Xi[R>>2]|0;E=R-i>>G;D=Xi[M>>2]|0;d=D-r>>x;E=H?((8<<G)+i|0)<(R|0)?8:E:(T|0)<(R|0)?4:E;d=p?((8<<x)+r|0)<(D|0)?8:d:(N|0)<(D|0)?4:d;do{if(!P){e:do{if((E|0)>0){n=Xi[U+13340>>2]|0;t=Zi((-1<<x)+r>>n,Y)|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;do{if(!(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>0){if((i|0)>0)while(1){a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break e}do{a=l;l=l+-1|0;if(Wi[o+((((l<<G)+i>>n)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0}while((a|0)>1);Gi[q>>1]=Gi[W>>1]|0}}}while(0);l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}else{t=e+3516|0;s=Xi[U+13340>>2]|0;o=(-1<<G)+i>>s;l=p?C+4|0:4;while(1){P=l;l=l+-1|0;if((P|0)<=0){J=49;break}a=(l<<x)+r|0;P=(Zi(a>>s,Y)|0)+o|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0;if(!(Wi[n+(P*12|0)+10>>0]|0)){l=a;break}}if((J|0)==49){l=(l<<x)+r|0;n=Xi[(Xi[t>>2]|0)+16>>2]|0}if(!(Wi[n+(((Zi(l>>s,Y)|0)+o|0)*12|0)+10>>0]|0)){c=q;b=X;l=Gi[q>>1]|0;break}t=Zi((-1<<x)+r>>s,Y)|0;if((E|0)>0){l=0;do{if(!(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(E|0));if((l|0)>-1)J=57}else{l=0;J=57}if((J|0)==57)while(1){J=0;a=l;l=l+-1|0;if(Wi[n+((((l<<G)+i>>s)+t|0)*12|0)+10>>0]|0)Gi[q+(a<<1)>>1]=Gi[q+(a+1<<1)>>1]|0;if((a|0)<=0)break;else J=57}l=Gi[q>>1]|0;Gi[X>>1]=l;c=q;b=X}}while(0);Gi[b>>1]=l;u=(d|0)>0;if(B&u){l=rN(l&65535|0,0,65537,65537)|0;n=(-1<<G)+i|0;t=U+13340|0;o=(Xi[e+3516>>2]|0)+16|0;a=Ie;s=0;do{B=Xi[t>>2]|0;B=(Zi((s<<x)+r>>B,Y)|0)+(n>>B)|0;if(!(Wi[(Xi[o>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[X+((s|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{B=X+((s|1)<<1)|0;P=B;Gi[P>>1]=l;Gi[P+2>>1]=l>>>16;B=B+4|0;Gi[B>>1]=a;Gi[B+2>>1]=a>>>16}s=s+4|0}while((s|0)<(d|0))}if(!S){D=rN(Ji[b>>1]|0,0,65537,65537)|0;P=Ie;B=K;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}if(!p){D=rN(Ji[X+8>>1]|0,0,65537,65537)|0;P=Ie;B=X+10|0;C=B;Gi[C>>1]=D;Gi[C+2>>1]=D>>>16;B=B+4|0;Gi[B>>1]=P;Gi[B+2>>1]=P>>>16}k=(r|0)!=0;do{if((i|0)!=0&k){h=(-1<<G)+i|0;w=U+13340|0;n=Xi[w>>2]|0;a=h>>n;if(u){t=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;l=Xi[e+3516>>2]|0;u=l+16|0;o=Ie;s=d+-1|0;do{B=(Zi((s+-3<<x)+r>>n,Y)|0)+a|0;a=X+(s+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){t=rN(Ji[a>>1]|0,0,65537,65537)|0;o=Ie}else{n=a;B=n;Gi[B>>1]=t;Gi[B+2>>1]=t>>>16;n=n+4|0;Gi[n>>1]=o;Gi[n+2>>1]=o>>>16;n=Xi[w>>2]|0}s=s+-4|0;a=h>>n}while((s|0)>-1)}else l=Xi[e+3516>>2]|0;B=(Zi((-1<<x)+r>>n,Y)|0)+a|0;if(Wi[(Xi[l+16>>2]|0)+(B*12|0)+10>>0]|0)Gi[b>>1]=Gi[K>>1]|0}else{if(!i){if(!u)break;jT(K|0,0,((d+2147483647|0)>>>2<<3)+8|0)|0;break}if(u){n=rN(Ji[X+(d<<1)>>1]|0,0,65537,65537)|0;o=(-1<<G)+i|0;s=U+13340|0;u=(Xi[e+3516>>2]|0)+16|0;a=Ie;t=d+-1|0;while(1){B=Xi[s>>2]|0;B=(Zi((t+-3<<x)+r>>B,Y)|0)+(o>>B)|0;l=X+(t+-2<<1)|0;if(!(Wi[(Xi[u>>2]|0)+(B*12|0)+10>>0]|0)){l=rN(Ji[l>>1]|0,0,65537,65537)|0;a=Ie}else{B=l;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;l=l+4|0;Gi[l>>1]=a;Gi[l+2>>1]=a>>>16;l=n}t=t+-4|0;if((t|0)<=-1)break;else n=l}}}}while(0);l=Gi[b>>1]|0;Gi[c>>1]=l;if(k&(E|0)>0){l=rN(l&65535|0,0,65537,65537)|0;s=U+13340|0;n=(-1<<x)+r|0;t=(Xi[e+3516>>2]|0)+16|0;a=Ie;o=0;do{r=Xi[s>>2]|0;r=(Zi(n>>r,Y)|0)+((o<<G)+i>>r)|0;if(!(Wi[(Xi[t>>2]|0)+(r*12|0)+10>>0]|0)){l=rN(Ji[q+((o|3)+1<<1)>>1]|0,0,65537,65537)|0;a=Ie}else{r=q+((o|1)<<1)|0;x=r;Gi[x>>1]=l;Gi[x+2>>1]=l>>>16;r=r+4|0;Gi[r>>1]=a;Gi[r+2>>1]=a>>>16}o=o+4|0}while((o|0)<(E|0))}}do{if(p)if(!v)J=119;else J=120;else{if(S){Y=rN(Ji[X+8>>1]|0,0,65537,65537)|0;i=Ie;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=120;break}if(L){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=122;break}if(I){Y=Gi[W>>1]|0;Gi[X>>1]=Y;Y=rN(Y&65535|0,0,65537,65537)|0;i=Ie;J=K;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=X+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124;break}if(H){i=Gi[q+10>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;G=Ie;Y=W;x=Y;Gi[x>>1]=r;Gi[x+2>>1]=r>>>16;Y=Y+4|0;Gi[Y>>1]=G;Gi[Y+2>>1]=G>>>16;Gi[X>>1]=i;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;i=X+10|0;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;break}else{Gi[X>>1]=2048;J=W;i=J;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;J=J+4|0;Gi[J>>1]=2048;Gi[J+2>>1]=134219776>>>16;J=q+10|0;i=J;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;J=J+4|0;Gi[J>>1]=2048;Gi[J+2>>1]=134219776>>>16;J=K;i=J;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;J=J+4|0;Gi[J>>1]=2048;Gi[J+2>>1]=134219776>>>16;J=X+10|0;i=J;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;J=J+4|0;Gi[J>>1]=2048;Gi[J+2>>1]=134219776>>>16;J=119;break}}}while(0);if((J|0)==119){r=rN(Ji[X+10>>1]|0,0,65537,65537)|0;G=Ie;i=K;Y=i;Gi[Y>>1]=r;Gi[Y+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=G;Gi[i+2>>1]=G>>>16;J=120}if((J|0)==120)if(!_){Gi[X>>1]=Gi[K>>1]|0;J=122}else J=122;if((J|0)==122)if(!m){Y=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;J=W;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16;J=124}else J=124;if((J|0)==124?!H:0){Y=rN(Ji[q+8>>1]|0,0,65537,65537)|0;i=Ie;J=q+10|0;G=J;Gi[G>>1]=Y;Gi[G+2>>1]=Y>>>16;J=J+4|0;Gi[J>>1]=i;Gi[J+2>>1]=i>>>16}Gi[q>>1]=Gi[X>>1]|0;switch(j|0){case 0:{nV[Xi[e+6136>>2]&255](V,W,K,z);break}case 1:{Xz[Xi[e+6152>>2]&127](V,W,K,z,2,f);break}default:Xz[Xi[e+6156>>2]&127](V,W,K,z,f,j)}Ue=Z;return}function XF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;Z=re+130|0;J=re;n=Xi[e+136>>2]|0;j=Xi[e+1412>>2]|0;Y=Xi[j+13424+(f<<2)>>2]|0;z=Xi[j+13436+(f<<2)>>2]|0;d=8<<Y;t=Xi[j+13328>>2]|0;c=8<<z;o=Xi[j+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;P=Xi[e+160>>2]|0;ee=(Xi[P+32+(f<<2)>>2]|0)>>>1;P=Xi[P+(f<<2)>>2]|0;R=(Zi(ee,r>>z)|0)+(i>>Y)|0;ie=P+(R<<1)|0;V=Xi[j+13412>>2]|0;K=(f|0)==0;$=Xi[(K?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=Z+2|0;q=G+2|0;Q=J+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);o=_&1;L=(c<<1)+r|0;T=j+13380|0;y=Xi[T>>2]|0;C=c+r|0;L=((L|0)>(y|0)?y:L)-C>>z;y=(d<<1)+i|0;N=j+13376|0;M=Xi[N>>2]|0;D=d+i|0;y=((y|0)>(M|0)?M:y)-D>>Y;M=b+20|0;if((Wi[M>>0]|0)==1){m=Xi[j+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=C>>m;t=(Xi[j+13416>>2]|0)-u|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;w=0;do{n=(Wi[h+(((Zi(w+u|0,V)|0)+s|0)*12|0)+10>>0]|0)==0|n;w=w+2|0}while((w|0)<(t|0));v=n}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;t=(Xi[j+13416>>2]|0)-w|0;t=(b|0)>(t|0)?t:b;if((t|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+(((Zi(u+w|0,V)|0)+h|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(t|0));w=n}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,V)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){n=i>>m;h=V-n|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;u=0;do{n=(Wi[s+((t+u|0)*12|0)+10>>0]|0)==0|n;u=u+2|0}while((u|0)<(h|0));h=n}else h=0}else h=F;if(_&c){n=D>>m;u=V-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,V)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0));o=n}else o=0}n=a;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));n=l;t=n+128|0;do{Gi[n>>1]=32896;n=n+2|0}while((n|0)<(t|0));Gi[Z>>1]=128;S=w;F=h;p=k;h=o}else h=o;H=(p|0)!=0;if(H){U=Gi[P+(R+~ee<<1)>>1]|0;Gi[X>>1]=U;Gi[Z>>1]=U}B=(F|0)!=0;if(B){U=P+(R-ee<<1)|0;Gi[l>>1]=Gi[U>>1]|0;Gi[l+2>>1]=Gi[U+2>>1]|0;Gi[l+4>>1]=Gi[U+4>>1]|0;Gi[l+6>>1]=Gi[U+6>>1]|0;Gi[l+8>>1]=Gi[U+8>>1]|0;Gi[l+10>>1]=Gi[U+10>>1]|0;Gi[l+12>>1]=Gi[U+12>>1]|0;Gi[l+14>>1]=Gi[U+14>>1]|0}U=(h|0)!=0;if(U?(O=Z+18|0,A=P+(8-ee+R<<1)|0,Gi[O>>1]=Gi[A>>1]|0,Gi[O+2>>1]=Gi[A+2>>1]|0,Gi[O+4>>1]=Gi[A+4>>1]|0,Gi[O+6>>1]=Gi[A+6>>1]|0,Gi[O+8>>1]=Gi[A+8>>1]|0,Gi[O+10>>1]=Gi[A+10>>1]|0,Gi[O+12>>1]=Gi[A+12>>1]|0,Gi[O+14>>1]=Gi[A+14>>1]|0,O=rN(Ji[P+(7-ee+R+y<<1)>>1]|0,0,65537,65537)|0,A=Ie,g=8-y|0,(g|0)>0):0){n=y+9|0;t=0;do{y=Z+(n+t<<1)|0;m=y;Gi[m>>1]=O;Gi[m+2>>1]=O>>>16;y=y+4|0;Gi[y>>1]=A;Gi[y+2>>1]=A>>>16;t=t+4|0}while((t|0)<(g|0))}y=(S|0)!=0;if(y){n=R+-1|0;t=0;do{g=t;t=t+1|0;Gi[X+(t<<1)>>1]=Gi[P+(n+(Zi(g,ee)|0)<<1)>>1]|0}while((t|0)!=8)}m=(v|0)!=0;if(m){n=R+-1|0;if((L|0)>0){t=L+7|0;o=8;do{R=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[P+((Zi(R,ee)|0)+n<<1)>>1]|0}while((R|0)<(t|0))}t=rN(Ji[P+((Zi(L+7|0,ee)|0)+n<<1)>>1]|0,0,65537,65537)|0;o=Ie;s=8-L|0;if((s|0)>0){n=L+9|0;u=0;do{P=X+(n+u<<1)|0;R=P;Gi[R>>1]=t;Gi[R+2>>1]=t>>>16;P=P+4|0;Gi[P>>1]=o;Gi[P+2>>1]=o>>>16;u=u+4|0}while((u|0)<(s|0))}}if((Wi[M>>0]|0)==1?(I=v|S,x=(I|0)!=0,I=I|p,F|h|I|0):0){N=Xi[N>>2]|0;_=N-i>>Y;P=Xi[T>>2]|0;E=P-r>>z;_=U?((16<<Y)+i|0)<(N|0)?16:_:(D|0)<(N|0)?8:_;E=m?((16<<z)+r|0)<(P|0)?16:E:(C|0)<(P|0)?8:E;do{if(!I){e:do{if((_|0)>0){o=Xi[j+13340>>2]|0;s=Zi((-1<<z)+r>>o,V)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<Y)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0}while((t|0)>1);Gi[Z>>1]=Gi[l>>1]|0}}}while(0);n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}else{s=e+3516|0;h=Xi[j+13340>>2]|0;u=(-1<<Y)+i>>h;n=m?L+8|0:8;while(1){I=n;n=n+-1|0;if((I|0)<=0){W=50;break}t=(n<<z)+r|0;I=(Zi(t>>h,V)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(I*12|0)+10>>0]|0)){n=t;break}}if((W|0)==50){n=(n<<z)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,V)|0)+u|0)*12|0)+10>>0]|0)){v=Z;d=X;n=Gi[Z>>1]|0;break}s=Zi((-1<<z)+r>>h,V)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)W=58}else{n=0;W=58}if((W|0)==58)while(1){W=0;t=n;n=n+-1|0;if(Wi[o+((((n<<Y)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[Z+(t<<1)>>1]=Gi[Z+(t+1<<1)>>1]|0;if((t|0)<=0)break;else W=58}n=Gi[Z>>1]|0;Gi[X>>1]=n;v=Z;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(x&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<Y)+i|0;s=j+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{x=Xi[s>>2]|0;x=(Zi((h<<z)+r>>x,V)|0)+(o>>x)|0;if(!(Wi[(Xi[u>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{x=X+((h|1)<<1)|0;I=x;Gi[I>>1]=n;Gi[I+2>>1]=n>>>16;x=x+4|0;Gi[x>>1]=t;Gi[x+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){P=rN(Ji[d>>1]|0,0,65537,65537)|0;I=Ie;x=a;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+10|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}if(!m){P=rN(Ji[X+16>>1]|0,0,65537,65537)|0;I=Ie;x=X+18|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16;x=X+26|0;L=x;Gi[L>>1]=P;Gi[L+2>>1]=P>>>16;x=x+4|0;Gi[x>>1]=I;Gi[x+2>>1]=I>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<Y)+i|0;b=j+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{x=(Zi((h+-3<<z)+r>>o,V)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;x=o;Gi[x>>1]=s;Gi[x+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;x=(Zi((-1<<z)+r>>o,V)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(x*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){o=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<Y)+i|0;h=j+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;while(1){x=Xi[h>>2]|0;x=(Zi((s+-3<<z)+r>>x,V)|0)+(u>>x)|0;n=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(x*12|0)+10>>0]|0)){n=rN(Ji[n>>1]|0,0,65537,65537)|0;t=Ie}else{x=n;Gi[x>>1]=o;Gi[x+2>>1]=o>>>16;n=n+4|0;Gi[n>>1]=t;Gi[n+2>>1]=t>>>16;n=o}s=s+-4|0;if((s|0)<=-1)break;else o=n}}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=j+13340|0;o=(-1<<z)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,V)|0)+((u<<Y)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[Z+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=Z+((u|1)<<1)|0;z=r;Gi[z>>1]=n;Gi[z+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)W=120;else W=121;else{if(y){V=rN(Ji[X+16>>1]|0,0,65537,65537)|0;i=Ie;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=121;break}if(H){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=123;break}if(B){V=Gi[l>>1]|0;Gi[X>>1]=V;V=rN(V&65535|0,0,65537,65537)|0;i=Ie;W=a;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=X+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125;break}if(U){i=Gi[Z+18>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;Y=Ie;V=l;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;V=Z+10|0;z=V;Gi[z>>1]=r;Gi[z+2>>1]=r>>>16;V=V+4|0;Gi[V>>1]=Y;Gi[V+2>>1]=Y>>>16;Gi[X>>1]=i;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+18|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+26|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;break}else{Gi[X>>1]=2048;W=l;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=Z+10|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=Z+18|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=Z+26|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=a;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=X+10|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=X+18|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=X+26|0;i=W;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;W=W+4|0;Gi[W>>1]=2048;Gi[W+2>>1]=134219776>>>16;W=120;break}}}while(0);if((W|0)==120){r=rN(Ji[X+18>>1]|0,0,65537,65537)|0;Y=Ie;i=a;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;i=X+10|0;V=i;Gi[V>>1]=r;Gi[V+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=Y;Gi[i+2>>1]=Y>>>16;W=121}if((W|0)==121)if(!p){Gi[X>>1]=Gi[a>>1]|0;W=123}else W=123;if((W|0)==123)if(!F){V=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;W=l;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+10|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=125}else W=125;if((W|0)==125?!U:0){V=rN(Ji[Z+16>>1]|0,0,65537,65537)|0;i=Ie;W=Z+18|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16;W=Z+26|0;Y=W;Gi[Y>>1]=V;Gi[Y+2>>1]=V>>>16;W=W+4|0;Gi[W>>1]=i;Gi[W+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[Z>>1]=h;do{if(!(Xi[j+13368>>2]|0)){if(!K?(Xi[j+4>>2]|0)!=3:0){W=136;break}if(($|0)!=1){W=$+-26|0;W=(W|0)>-1?W:26-$|0;K=$+-10|0;K=(K|0)>-1?K:10-$|0;if((((W|0)>(K|0)?K:W)|0)>7){t=Gi[X+32>>1]|0;Gi[G+32>>1]=t;n=Gi[Z+32>>1]|0;Gi[J+32>>1]=n;o=Gi[X+30>>1]|0;u=14;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[J>>1]=l;l=n;a=Gi[Z+30>>1]|0;t=14;while(1){n=Gi[Z+(t<<1)>>1]|0;Gi[J+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;W=136;break}}}else W=136}else W=138}else W=136}while(0);e:do{if((W|0)==136)switch($|0){case 1:{W=138;break e}case 0:{nV[Xi[e+6140>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6160>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((W|0)==138)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,3,f);Ue=re;return}function qF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0;$=Ue;Ue=Ue+528|0;K=$+390|0;j=$+260|0;X=$+130|0;G=$;n=Xi[e+136>>2]|0;z=Xi[e+1412>>2]|0;x=Xi[z+13424+(f<<2)>>2]|0;B=Xi[z+13436+(f<<2)>>2]|0;d=16<<x;t=Xi[z+13328>>2]|0;c=16<<B;o=Xi[z+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;Z=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(Z,r>>B)|0)+(i>>x)|0;Q=N+(A<<1)|0;U=Xi[z+13412>>2]|0;V=(f|0)==0;J=Xi[(V?n+288|0:n+292|0)>>2]|0;a=K+2|0;l=X+2|0;W=j+2|0;q=G+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=z+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=z+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[z+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[z+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[z+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[X>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){I=Gi[N+(A+~Z<<1)>>1]|0;Gi[K>>1]=I;Gi[X>>1]=I}L=(F|0)!=0;if(L){o=l;t=N+(A-Z<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}I=(n|0)!=0;if(I){o=X+34|0;t=N+(16-Z+A<<1)|0;s=o+32|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(15-Z+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=16-y|0;if((h|0)>0){t=y+17|0;o=0;do{y=X+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[K+(o<<1)>>1]=Gi[N+(t+(Zi(m,Z)|0)<<1)>>1]|0}while((o|0)!=16)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+15|0;s=16;do{A=s;s=s+1|0;Gi[K+(s<<1)>>1]=Gi[N+((Zi(A,Z)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+15|0,Z)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=16-D|0;if((u|0)>0){t=D+17|0;h=0;do{N=K+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,H=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=I?((32<<x)+i|0)<(M|0)?32:_:(R|0)<(M|0)?16:_;E=m?((32<<B)+r|0)<(N|0)?32:E:(T|0)<(N|0)?16:E;do{if(!C){e:do{if((_|0)>0){o=Xi[z+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0}while((t|0)>1);Gi[X>>1]=Gi[l>>1]|0}}}while(0);n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}else{s=e+3516|0;h=Xi[z+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+16|0:16;while(1){C=n;n=n+-1|0;if((C|0)<=0){Y=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((Y|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=X;d=K;n=Gi[X>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)Y=58}else{n=0;Y=58}if((Y|0)==58)while(1){Y=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[X+(t<<1)>>1]=Gi[X+(t+1<<1)>>1]|0;if((t|0)<=0)break;else Y=58}n=Gi[X>>1]|0;Gi[K>>1]=n;v=X;d=K}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(H&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=z+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{H=Xi[s>>2]|0;H=(Zi((h<<B)+r>>H,U)|0)+(o>>H)|0;if(!(Wi[(Xi[u>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[K+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{H=K+((h|1)<<1)|0;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;H=a;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+10|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+18|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+26|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}if(!m){N=rN(Ji[K+32>>1]|0,0,65537,65537)|0;C=Ie;H=K+34|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+42|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+50|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16;H=K+58|0;D=H;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;H=H+4|0;Gi[H>>1]=C;Gi[H+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=z+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{H=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=K+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;H=o;Gi[H>>1]=s;Gi[H+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;H=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(H*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[K+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=z+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{H=Xi[h>>2]|0;H=(Zi((s+-3<<B)+r>>H,U)|0)+(u>>H)|0;o=K+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(H*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{H=o;C=H;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;H=H+4|0;Gi[H>>1]=t;Gi[H+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=z+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[X+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=X+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}do{if(m)if(!S)Y=120;else Y=121;else{if(y){U=rN(Ji[K+32>>1]|0,0,65537,65537)|0;i=Ie;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=121;break}if(P){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=123;break}if(L){U=Gi[l>>1]|0;Gi[K>>1]=U;U=rN(U&65535|0,0,65537,65537)|0;i=Ie;Y=a;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=K+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125;break}if(I){i=Gi[X+34>>1]|0;r=rN(i&65535|0,0,65537,65537)|0;x=Ie;U=l;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+10|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+18|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;U=X+26|0;B=U;Gi[B>>1]=r;Gi[B+2>>1]=r>>>16;U=U+4|0;Gi[U>>1]=x;Gi[U+2>>1]=x>>>16;Gi[K>>1]=i;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+34|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+42|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+50|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+58|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;break}else{Gi[K>>1]=2048;Y=l;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+10|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+18|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+26|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+34|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+42|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+50|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=X+58|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=a;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+10|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+18|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+26|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+34|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+42|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+50|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=K+58|0;i=Y;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;Y=Y+4|0;Gi[Y>>1]=2048;Gi[Y+2>>1]=134219776>>>16;Y=120;break}}}while(0);if((Y|0)==120){r=rN(Ji[K+34>>1]|0,0,65537,65537)|0;x=Ie;i=a;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+10|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+18|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;i=K+26|0;U=i;Gi[U>>1]=r;Gi[U+2>>1]=r>>>16;i=i+4|0;Gi[i>>1]=x;Gi[i+2>>1]=x>>>16;Y=121}if((Y|0)==121)if(!p){Gi[K>>1]=Gi[a>>1]|0;Y=123}else Y=123;if((Y|0)==123)if(!F){U=rN(Ji[K>>1]|0,0,65537,65537)|0;i=Ie;Y=l;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+10|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+18|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+26|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=125}else Y=125;if((Y|0)==125?!I:0){U=rN(Ji[X+32>>1]|0,0,65537,65537)|0;i=Ie;Y=X+34|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+42|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+50|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16;Y=X+58|0;x=Y;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;Y=Y+4|0;Gi[Y>>1]=i;Gi[Y+2>>1]=i>>>16}h=Gi[K>>1]|0;Gi[X>>1]=h;do{if(!(Xi[z+13368>>2]|0)){if(!V?(Xi[z+4>>2]|0)!=3:0){Y=136;break}if((J|0)!=1){Y=J+-26|0;Y=(Y|0)>-1?Y:26-J|0;V=J+-10|0;V=(V|0)>-1?V:10-J|0;if((((Y|0)>(V|0)?V:Y)|0)>1){n=Gi[K+64>>1]|0;Gi[j+64>>1]=n;u=Gi[X+64>>1]|0;Gi[G+64>>1]=u;t=Gi[K+62>>1]|0;s=30;while(1){o=Gi[K+(s<<1)>>1]|0;Gi[j+(s+1<<1)>>1]=((n&65535)+2+((t&65535)<<1)+(o&65535)|0)>>>2;if((s|0)>0){n=t;t=o;s=s+-1|0}else break}t=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[j>>1]=t;Gi[G>>1]=t;t=Gi[X+62>>1]|0;a=u;n=30;while(1){l=Gi[X+(n<<1)>>1]|0;Gi[G+(n+1<<1)>>1]=((a&65535)+2+((t&65535)<<1)+(l&65535)|0)>>>2;if((n|0)>0){a=t;t=l;n=n+-1|0}else{a=W;l=q;Y=136;break}}}else Y=136}else Y=138}else Y=136}while(0);e:do{if((Y|0)==136)switch(J|0){case 1:{Y=138;break e}case 0:{nV[Xi[e+6144>>2]&255](Q,l,a,Z);break e}default:{Xz[Xi[e+6164>>2]&127](Q,l,a,Z,f,J);break e}}}while(0);if((Y|0)==138)Xz[Xi[e+6152>>2]&127](Q,l,a,Z,4,f);Ue=$;return}function JF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+528|0;X=re+390|0;G=re+260|0;J=re+130|0;Z=re;n=Xi[e+136>>2]|0;V=Xi[e+1412>>2]|0;x=Xi[V+13424+(f<<2)>>2]|0;B=Xi[V+13436+(f<<2)>>2]|0;d=32<<x;t=Xi[V+13328>>2]|0;c=32<<B;o=Xi[V+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;ee=(Xi[N+32+(f<<2)>>2]|0)>>>1;N=Xi[N+(f<<2)>>2]|0;A=(Zi(ee,r>>B)|0)+(i>>x)|0;ie=N+(A<<1)|0;U=Xi[V+13412>>2]|0;Y=(f|0)==0;$=Xi[(Y?n+288|0:n+292|0)>>2]|0;a=X+2|0;l=J+2|0;q=G+2|0;Q=Z+2|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;g=V+13380|0;y=Xi[g>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>B;y=(d<<1)+i|0;M=V+13376|0;O=Xi[M>>2]|0;R=d+i|0;y=((y|0)>(O|0)?O:y)-R>>x;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[V+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[V+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,U)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[V+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,U)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,U)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=U-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,U)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=R>>m;u=U-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,U)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));o=l;s=o+128|0;do{Gi[o>>1]=32896;o=o+2|0}while((o|0)<(s|0));Gi[J>>1]=128;S=w;F=h;p=k}P=(p|0)!=0;if(P){H=Gi[N+(A+~ee<<1)>>1]|0;Gi[X>>1]=H;Gi[J>>1]=H}L=(F|0)!=0;if(L){o=l;t=N+(A-ee<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0))}H=(n|0)!=0;if(H){o=J+66|0;t=N+(32-ee+A<<1)|0;s=o+64|0;do{Gi[o>>1]=Gi[t>>1]|0;o=o+2|0;t=t+2|0}while((o|0)<(s|0));s=rN(Ji[N+(31-ee+A+y<<1)>>1]|0,0,65537,65537)|0;u=Ie;h=32-y|0;if((h|0)>0){t=y+33|0;o=0;do{y=J+(t+o<<1)|0;m=y;Gi[m>>1]=s;Gi[m+2>>1]=s>>>16;y=y+4|0;Gi[y>>1]=u;Gi[y+2>>1]=u>>>16;o=o+4|0}while((o|0)<(h|0))}}y=(S|0)!=0;if(y){t=A+-1|0;o=0;do{m=o;o=o+1|0;Gi[X+(o<<1)>>1]=Gi[N+(t+(Zi(m,ee)|0)<<1)>>1]|0}while((o|0)!=32)}m=(v|0)!=0;if(m){t=A+-1|0;if((D|0)>0){o=D+31|0;s=32;do{A=s;s=s+1|0;Gi[X+(s<<1)>>1]=Gi[N+((Zi(A,ee)|0)+t<<1)>>1]|0}while((A|0)<(o|0))}o=rN(Ji[N+((Zi(D+31|0,ee)|0)+t<<1)>>1]|0,0,65537,65537)|0;s=Ie;u=32-D|0;if((u|0)>0){t=D+33|0;h=0;do{N=X+(t+h<<1)|0;A=N;Gi[A>>1]=o;Gi[A+2>>1]=o>>>16;N=N+4|0;Gi[N>>1]=s;Gi[N+2>>1]=s>>>16;h=h+4|0}while((h|0)<(u|0))}}if((Wi[O>>0]|0)==1?(C=v|S,I=(C|0)!=0,C=C|p,F|n|C|0):0){M=Xi[M>>2]|0;_=M-i>>x;N=Xi[g>>2]|0;E=N-r>>B;_=H?((64<<x)+i|0)<(M|0)?64:_:(R|0)<(M|0)?32:_;E=m?((64<<B)+r|0)<(N|0)?64:E:(T|0)<(N|0)?32:E;do{if(!C){e:do{if((_|0)>0){o=Xi[V+13340>>2]|0;s=Zi((-1<<B)+r>>o,U)|0;u=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;do{if(!(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>0){if((i|0)>0)while(1){t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break e}do{t=n;n=n+-1|0;if(Wi[u+((((n<<x)+i>>o)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0}while((t|0)>1);Gi[J>>1]=Gi[l>>1]|0}}}while(0);n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}else{s=e+3516|0;h=Xi[V+13340>>2]|0;u=(-1<<x)+i>>h;n=m?D+32|0:32;while(1){C=n;n=n+-1|0;if((C|0)<=0){z=50;break}t=(n<<B)+r|0;C=(Zi(t>>h,U)|0)+u|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=t;break}}if((z|0)==50){n=(n<<B)+r|0;o=Xi[(Xi[s>>2]|0)+16>>2]|0}if(!(Wi[o+(((Zi(n>>h,U)|0)+u|0)*12|0)+10>>0]|0)){v=J;d=X;n=Gi[J>>1]|0;break}s=Zi((-1<<B)+r>>h,U)|0;if((_|0)>0){n=0;do{if(!(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(_|0));if((n|0)>-1)z=58}else{n=0;z=58}if((z|0)==58)while(1){z=0;t=n;n=n+-1|0;if(Wi[o+((((n<<x)+i>>h)+s|0)*12|0)+10>>0]|0)Gi[J+(t<<1)>>1]=Gi[J+(t+1<<1)>>1]|0;if((t|0)<=0)break;else z=58}n=Gi[J>>1]|0;Gi[X>>1]=n;v=J;d=X}}while(0);Gi[d>>1]=n;w=(E|0)>0;if(I&w){n=rN(n&65535|0,0,65537,65537)|0;o=(-1<<x)+i|0;s=V+13340|0;u=(Xi[e+3516>>2]|0)+16|0;t=Ie;h=0;do{I=Xi[s>>2]|0;I=(Zi((h<<B)+r>>I,U)|0)+(o>>I)|0;if(!(Wi[(Xi[u>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[X+((h|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{I=X+((h|1)<<1)|0;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}h=h+4|0}while((h|0)<(E|0))}if(!y){N=rN(Ji[d>>1]|0,0,65537,65537)|0;C=Ie;I=a;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+10|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+18|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+26|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+34|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+42|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+50|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+58|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}if(!m){N=rN(Ji[X+64>>1]|0,0,65537,65537)|0;C=Ie;I=X+66|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+74|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+82|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+90|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+98|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+106|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+114|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16;I=X+122|0;D=I;Gi[D>>1]=N;Gi[D+2>>1]=N>>>16;I=I+4|0;Gi[I>>1]=C;Gi[I+2>>1]=C>>>16}c=(r|0)!=0;do{if((i|0)!=0&c){k=(-1<<x)+i|0;b=V+13340|0;o=Xi[b>>2]|0;t=k>>o;if(w){s=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;n=Xi[e+3516>>2]|0;w=n+16|0;u=Ie;h=E+-1|0;do{I=(Zi((h+-3<<B)+r>>o,U)|0)+t|0;t=X+(h+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){s=rN(Ji[t>>1]|0,0,65537,65537)|0;u=Ie}else{o=t;I=o;Gi[I>>1]=s;Gi[I+2>>1]=s>>>16;o=o+4|0;Gi[o>>1]=u;Gi[o+2>>1]=u>>>16;o=Xi[b>>2]|0}h=h+-4|0;t=k>>o}while((h|0)>-1)}else n=Xi[e+3516>>2]|0;I=(Zi((-1<<B)+r>>o,U)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(I*12|0)+10>>0]|0)Gi[d>>1]=Gi[a>>1]|0}else{if(!i){if(!w)break;jT(a|0,0,((E+2147483647|0)>>>2<<3)+8|0)|0;break}if(w){n=rN(Ji[X+(E<<1)>>1]|0,0,65537,65537)|0;u=(-1<<x)+i|0;h=V+13340|0;w=(Xi[e+3516>>2]|0)+16|0;t=Ie;s=E+-1|0;do{I=Xi[h>>2]|0;I=(Zi((s+-3<<B)+r>>I,U)|0)+(u>>I)|0;o=X+(s+-2<<1)|0;if(!(Wi[(Xi[w>>2]|0)+(I*12|0)+10>>0]|0)){n=rN(Ji[o>>1]|0,0,65537,65537)|0;t=Ie}else{I=o;C=I;Gi[C>>1]=n;Gi[C+2>>1]=n>>>16;I=I+4|0;Gi[I>>1]=t;Gi[I+2>>1]=t>>>16}s=s+-4|0}while((s|0)>-1)}}}while(0);n=Gi[d>>1]|0;Gi[v>>1]=n;if(c&(_|0)>0){n=rN(n&65535|0,0,65537,65537)|0;h=V+13340|0;o=(-1<<B)+r|0;s=(Xi[e+3516>>2]|0)+16|0;t=Ie;u=0;do{r=Xi[h>>2]|0;r=(Zi(o>>r,U)|0)+((u<<x)+i>>r)|0;if(!(Wi[(Xi[s>>2]|0)+(r*12|0)+10>>0]|0)){n=rN(Ji[J+((u|3)+1<<1)>>1]|0,0,65537,65537)|0;t=Ie}else{r=J+((u|1)<<1)|0;B=r;Gi[B>>1]=n;Gi[B+2>>1]=n>>>16;r=r+4|0;Gi[r>>1]=t;Gi[r+2>>1]=t>>>16}u=u+4|0}while((u|0)<(_|0))}}e:do{if(m)z=124;else{if(y){U=rN(Ji[X+64>>1]|0,0,65537,65537)|0;i=Ie;z=X+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126;break}if(P){n=rN(Ji[X>>1]|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=126;break e}}}if(L){n=Gi[l>>1]|0;Gi[X>>1]=n;n=rN(n&65535|0,0,65537,65537)|0;t=Ie;o=0;while(1){z=X+((o|1)<<1)|0;i=z;Gi[i>>1]=n;Gi[i+2>>1]=n>>>16;z=z+4|0;Gi[z>>1]=t;Gi[z+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64){z=128;break e}}}if(H){o=Gi[J+66>>1]|0;n=rN(o&65535|0,0,65537,65537)|0;t=Ie;i=l;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+10|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+18|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+26|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+34|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+42|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+50|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;i=J+58|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;Gi[X>>1]=o;o=0;while(1){i=X+((o|1)<<1)|0;x=i;Gi[x>>1]=n;Gi[x+2>>1]=n>>>16;i=i+4|0;Gi[i>>1]=t;Gi[i+2>>1]=t>>>16;o=o+4|0;if((o|0)>=64)break e}}Gi[X>>1]=2048;n=0;do{z=J+((n|1)<<1)|0;i=z;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;z=z+4|0;Gi[z>>1]=2048;Gi[z+2>>1]=134219776>>>16;n=n+4|0}while((n|0)<64);n=0;do{z=X+((n|1)<<1)|0;i=z;Gi[i>>1]=2048;Gi[i+2>>1]=134219776>>>16;z=z+4|0;Gi[z>>1]=2048;Gi[z+2>>1]=134219776>>>16;n=n+4|0}while((n|0)<64);z=124}}while(0);if((z|0)==124)if(!S){U=rN(Ji[X+66>>1]|0,0,65537,65537)|0;i=Ie;z=a;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=X+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=126}else z=126;if((z|0)==126)if(!p){Gi[X>>1]=Gi[a>>1]|0;z=128}else z=128;if((z|0)==128?(F|0)==0:0){U=rN(Ji[X>>1]|0,0,65537,65537)|0;i=Ie;z=l;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+10|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+18|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+26|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+34|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+42|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+50|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+58|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}if(!H){U=rN(Ji[J+64>>1]|0,0,65537,65537)|0;i=Ie;z=J+66|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+74|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+82|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+90|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+98|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+106|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+114|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16;z=J+122|0;x=z;Gi[x>>1]=U;Gi[x+2>>1]=U>>>16;z=z+4|0;Gi[z>>1]=i;Gi[z+2>>1]=i>>>16}h=Gi[X>>1]|0;Gi[J>>1]=h;e:do{if(!(Xi[V+13368>>2]|0)){if(!Y?(Xi[V+4>>2]|0)!=3:0){z=149;break}if(($|0)!=1){z=$+-26|0;z=(z|0)>-1?z:26-$|0;i=$+-10|0;i=(i|0)>-1?i:10-$|0;if((((z|0)>(i|0)?i:z)|0)>0){if(Y&(Wi[V+13317>>0]|0)!=0){t=h&65535;n=Gi[J+128>>1]|0;o=n&65535;Y=o+t-(Ji[J+64>>1]<<1)|0;if((((Y|0)>-1?Y:0-Y|0)|0)<128?(W=X+128|0,j=Gi[W>>1]|0,K=j&65535,Y=K+t-(Ji[X+64>>1]<<1)|0,(((Y|0)>-1?Y:0-Y|0)|0)<128):0){Gi[Z>>1]=h;Gi[Z+128>>1]=n;l=0;do{J=l;l=l+1|0;Gi[Z+(l<<1)>>1]=((Zi(63-J|0,t)|0)+32+(Zi(l,o)|0)|0)>>>6}while((l|0)!=63);Gi[a>>1]=((t*63|0)+32+K|0)>>>6;Gi[X+4>>1]=(((h&65535)*62|0)+32+((j&65535)<<1)|0)>>>6;l=2;while(1){Z=l;l=l+1|0;Gi[X+(l<<1)>>1]=((Zi(63-Z|0,Ji[X>>1]|0)|0)+32+(Zi(l,Ji[W>>1]|0)|0)|0)>>>6;if((l|0)==63){l=Q;z=149;break e}}}}else n=Gi[J+128>>1]|0;t=Gi[X+128>>1]|0;Gi[G+128>>1]=t;Gi[Z+128>>1]=n;o=Gi[X+126>>1]|0;u=62;while(1){s=Gi[X+(u<<1)>>1]|0;Gi[G+(u+1<<1)>>1]=((t&65535)+2+((o&65535)<<1)+(s&65535)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&65535)<<1)+2+(Ji[a>>1]|0)+(Ji[l>>1]|0)|0)>>>2&65535;Gi[G>>1]=l;Gi[Z>>1]=l;l=n;a=Gi[J+126>>1]|0;t=62;while(1){n=Gi[J+(t<<1)>>1]|0;Gi[Z+(t+1<<1)>>1]=((l&65535)+2+((a&65535)<<1)+(n&65535)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=q;l=Q;z=149;break}}}else z=149}else z=151}else z=149}while(0);e:do{if((z|0)==149)switch($|0){case 1:{z=151;break e}case 0:{nV[Xi[e+6148>>2]&255](ie,l,a,ee);break e}default:{Xz[Xi[e+6168>>2]&127](ie,l,a,ee,f,$);break e}}}while(0);if((z|0)==151)Xz[Xi[e+6152>>2]&127](ie,l,a,ee,5,f);Ue=re;return}function ZF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+8|0;a=r+8|0;u=0;do{n=r+(u<<1)|0;t=3-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,3-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+4+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>3}while((s|0)!=4)}while((u|0)!=4);return}function QF(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+16|0;a=r+16|0;u=0;do{n=r+(u<<1)|0;t=7-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,7-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+8+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>4}while((s|0)!=8)}while((u|0)!=8);return}function $F(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+32|0;a=r+32|0;u=0;do{n=r+(u<<1)|0;t=15-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,15-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+16+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>5}while((s|0)!=16)}while((u|0)!=16);return}function ey(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+64|0;a=r+64|0;u=0;do{n=r+(u<<1)|0;t=31-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(Ji[n>>1]|0,31-s|0)|0;h=s;s=s+1|0;k=Zi(Ji[l>>1]|0,s)|0;w=Zi(Ji[i+(h<<1)>>1]|0,t)|0;Gi[e+(h+o<<1)>>1]=(b+32+k+w+(Zi(Ji[a>>1]|0,u)|0)|0)>>>6}while((s|0)!=32)}while((u|0)!=32);return}function iy(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=1<<l;o=(l|0)==31;if(!o){n=w;t=0;do{n=(Ji[r+(t<<1)>>1]|0)+n+(Ji[i+(t<<1)>>1]|0)|0;t=t+1|0}while((t|0)<(w|0));l=n>>l+1;s=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;if(!o){t=0;do{n=Zi(t,f)|0;o=0;do{k=e+(o+n<<1)|0;b=k;Wi[b>>0]=s;Wi[b+1>>0]=s>>8;Wi[b+2>>0]=s>>16;Wi[b+3>>0]=s>>24;k=k+4|0;Wi[k>>0]=u;Wi[k+1>>0]=u>>8;Wi[k+2>>0]=u>>16;Wi[k+3>>0]=u>>24;o=o+4|0}while((o|0)<(w|0));t=t+1|0}while((t|0)<(w|0))}}else l=w>>l+1;if((a|0)==0&(w|0)<32?(Gi[e>>1]=((l<<1)+2+(Ji[r>>1]|0)+(Ji[i>>1]|0)|0)>>>2,h=(w|0)>1,h):0){n=(l*3|0)+2|0;t=1;do{Gi[e+(t<<1)>>1]=(n+(Ji[i+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0));if(h){n=(l*3|0)+2|0;t=1;do{Gi[e+((Zi(t,f)|0)<<1)>>1]=(n+(Ji[r+(t<<1)>>1]|0)|0)>>>2;t=t+1|0}while((t|0)!=(w|0))}}return}function ry(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+208|0;w=d;c=Xi[88888+(a+-2<<2)>>2]|0;o=w+8|0;n=c>>3;if((a|0)>17){t=i+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;s=0;do{u=s;s=s+1|0;n=Zi(s,c)|0;t=n>>5;n=n&31;if(!n){b=Zi(u,f)|0;k=o+(t+1<<1)|0;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+(b<<1)|0;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24}else{k=32-n|0;b=Zi(u,f)|0;w=Zi(Ji[o+(t+1<<1)>>1]|0,k)|0;Gi[e+(b<<1)>>1]=(w+16+(Zi(Ji[o+(t+2<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+2<<1)>>1]|0,k)|0;Gi[e+(b+1<<1)>>1]=(w+16+(Zi(Ji[o+(t+3<<1)>>1]|0,n)|0)|0)>>>5;w=Zi(Ji[o+(t+3<<1)>>1]|0,k)|0;Gi[e+(b+2<<1)>>1]=(w+16+(Zi(Ji[o+(t+4<<1)>>1]|0,n)|0)|0)>>>5;k=Zi(Ji[o+(t+4<<1)>>1]|0,k)|0;Gi[e+(b+3<<1)>>1]=(k+16+(Zi(Ji[o+(t+5<<1)>>1]|0,n)|0)|0)>>>5}}while((s|0)!=4);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=4)}}else{t=r+-2|0;s=a+-11|0;if(s>>>0<15&(n|0)<-1){h=o;u=h+16|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(u|0));if((n|0)<0){t=Xi[89020+(s<<2)>>2]|0;while(1){Gi[w+(n+4<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else o=t;n=f<<1;t=f*3|0;w=0;do{k=w;w=w+1|0;u=Zi(w,c)|0;s=u>>5;u=u&31;if(!u){Gi[e+(k<<1)>>1]=Gi[o+(s+1<<1)>>1]|0;Gi[e+(k+f<<1)>>1]=Gi[o+(s+2<<1)>>1]|0;Gi[e+(n+k<<1)>>1]=Gi[o+(s+3<<1)>>1]|0;Gi[e+(t+k<<1)>>1]=Gi[o+(s+4<<1)>>1]|0}else{h=32-u|0;b=0;do{v=b+s|0;E=Zi(Ji[o+(v+1<<1)>>1]|0,h)|0;Gi[e+((Zi(b,f)|0)+k<<1)>>1]=(E+16+(Zi(Ji[o+(v+2<<1)>>1]|0,u)|0)|0)>>>5;b=b+1|0}while((b|0)!=4)}}while((w|0)!=4);if((l|0)==0&(a|0)==10){t=i+-2|0;n=((Ji[i>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e>>1]=n;n=((Ji[i+2>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+2>>1]=n;n=((Ji[i+4>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+4>>1]=n;n=((Ji[i+6>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+6>>1]=n}}Ue=d;return}function fy(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+16|0;n=k>>2;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;o=t+(s+1<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+5<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+4<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<8)}}while((w|0)!=8);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=8)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+24|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+8<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=8)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=8)}}while((h|0)!=8);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<8)}}Ue=b;return}function ly(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+208|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+32|0;n=k>>1;if((a|0)>17){t=i+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[r+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;n=t+(s+1<<1)|0;u=n;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=e+(h<<1)|0;o=c;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;c=c+4|0;Wi[c>>0]=n;Wi[c+1>>0]=n>>8;Wi[c+2>>0]=n>>16;Wi[c+3>>0]=n>>24;c=t+(s+5<<1)|0;n=c;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;c=c+4|0;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=e+(h+4<<1)|0;u=o;Wi[u>>0]=n;Wi[u+1>>0]=n>>8;Wi[u+2>>0]=n>>16;Wi[u+3>>0]=n>>24;o=o+4|0;Wi[o>>0]=c;Wi[o+1>>0]=c>>8;Wi[o+2>>0]=c>>16;Wi[o+3>>0]=c>>24;o=t+(s+9<<1)|0;c=o;c=qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h+8<<1)|0;n=u;Wi[n>>0]=c;Wi[n+1>>0]=c>>8;Wi[n+2>>0]=c>>16;Wi[n+3>>0]=c>>24;u=u+4|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+13<<1)|0;o=u;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=u+4|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+12<<1)|0;s=h;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;h=h+4|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(Ji[t+(c+1<<1)>>1]|0,h)|0;Gi[e+(o+n<<1)>>1]=(d+16+(Zi(Ji[t+(c+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(Ji[t+(d+1<<1)>>1]|0,h)|0;Gi[e+(c+n<<1)>>1]=(v+16+(Zi(Ji[t+(d+2<<1)>>1]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<16)}}while((w|0)!=16);if((l|0)==0&(a|0)==26){t=r+-2|0;o=0;do{n=((Ji[r+(o<<1)>>1]|0)-(Ji[t>>1]|0)>>1)+(Ji[i>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+((Zi(o,f)|0)<<1)>>1]=n;o=o+1|0}while((o|0)!=16)}}else{t=r+-2|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+40|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Gi[w+(n+16<<1)>>1]=Gi[i+(((Zi(n,t)|0)+128>>8)+-1<<1)>>1]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Gi[e+((Zi(t,f)|0)+w<<1)>>1]=Gi[u+(n+t<<1)>>1]|0;t=t+1|0}while((t|0)!=16)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(Ji[u+(v+1<<1)>>1]|0,o)|0;Gi[e+((Zi(s,f)|0)+w<<1)>>1]=(d+16+(Zi(Ji[u+(v+2<<1)>>1]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=16)}}while((h|0)!=16);if((l|0)==0&(a|0)==10){o=i+-2|0;s=0;do{n=((Ji[i+(s<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(s<<1)>>1]=n;t=s|1;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;t=s|2;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;t=s|3;n=((Ji[i+(t<<1)>>1]|0)-(Ji[o>>1]|0)>>1)+(Ji[r>>1]|0)|0;if(n>>>0>=4096)n=0-n>>31&4095;Gi[e+(t<<1)>>1]=n;s=s+4|0}while((s|0)<16)}}Ue=b;return}function ay(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;h=Ue;Ue=Ue+208|0;s=h;u=Xi[88888+(a+-2<<2)>>2]|0;o=s+64|0;if((a|0)>17){l=i+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[r+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else{r=o;break}}}else r=l;i=0;do{l=i;i=i+1|0;t=Zi(i,u)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;l=Zi(l,f)|0;a=0;do{o=r+(n+a<<1)|0;w=o;w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=e+(a+l<<1)|0;t=s;Wi[t>>0]=w;Wi[t+1>>0]=w>>8;Wi[t+2>>0]=w>>16;Wi[t+3>>0]=w>>24;s=s+4|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;a=a+4|0}while((a|0)<32)}else{o=32-t|0;l=Zi(l,f)|0;a=0;do{w=a+n|0;s=Zi(Ji[r+(w+1<<1)>>1]|0,o)|0;Gi[e+(a+l<<1)>>1]=(s+16+(Zi(Ji[r+(w+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|1;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|2;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;w=a|3;s=w+n|0;k=Zi(Ji[r+(s+1<<1)>>1]|0,o)|0;Gi[e+(w+l<<1)>>1]=(k+16+(Zi(Ji[r+(s+2<<1)>>1]|0,t)|0)|0)>>>5;a=a+4|0}while((a|0)<32)}}while((i|0)!=32)}else{l=r+-2|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+72|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Gi[s+(a+32<<1)>>1]=Gi[i+(((Zi(a,l)|0)+128>>8)+-1<<1)>>1]|0;if((a|0)<-1)a=a+1|0;else break}}else o=l;r=0;do{i=r;r=r+1|0;a=Zi(r,u)|0;l=a>>5;a=a&31;if(!a){l=l+1|0;a=0;do{Gi[e+((Zi(a,f)|0)+i<<1)>>1]=Gi[o+(l+a<<1)>>1]|0;a=a+1|0}while((a|0)!=32)}else{n=32-a|0;t=0;do{k=t+l|0;w=Zi(Ji[o+(k+1<<1)>>1]|0,n)|0;Gi[e+((Zi(t,f)|0)+i<<1)>>1]=(w+16+(Zi(Ji[o+(k+2<<1)>>1]|0,a)|0)|0)>>>5;t=t+1|0}while((t|0)!=32)}}while((r|0)!=32)}Ue=h;return}function ny(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0;q=Ue;Ue=Ue+144|0;W=q+65|0;G=q;l=Xi[e+136>>2]|0;H=Xi[e+1412>>2]|0;K=Xi[H+13424+(f<<2)>>2]|0;B=Xi[H+13436+(f<<2)>>2]|0;b=4<<K;a=Xi[H+13328>>2]|0;k=4<<B;n=Xi[H+13420>>2]|0;t=i>>a&n;o=r>>a&n;s=n+2|0;h=(Zi(o,s)|0)+t|0;w=Xi[e+1416>>2]|0;u=Xi[w+1684>>2]|0;h=Xi[u+(h<<2)>>2]|0;N=Xi[e+160>>2]|0;U=Xi[N+32+(f<<2)>>2]|0;N=Xi[N+(f<<2)>>2]|0;R=(Zi(U,r>>B)|0)+(i>>K)|0;x=N+R|0;z=Xi[H+13412>>2]|0;V=Xi[((f|0)==0?l+288|0:l+292|0)>>2]|0;Y=W+1|0;j=G+1|0;if(!(Xi[l+31284>>2]|0))d=0;else d=(h|0)>(Xi[u+(t+-1+(Zi(o+(k>>a)&n,s)|0)<<2)>>2]|0);c=d&1;v=Xi[l+31288>>2]|0;_=Xi[l+31296>>2]|0;m=Xi[l+31292>>2]|0;if(!(Xi[l+31300>>2]|0))E=0;else E=(h|0)>(Xi[u+((Zi(o+-1|0,s)|0)+(t+(b>>a)&n)<<2)>>2]|0);n=E&1;D=(k<<1)+r|0;A=H+13380|0;p=Xi[A>>2]|0;T=k+r|0;D=((D|0)>(p|0)?p:D)-T>>B;p=(b<<1)+i|0;g=H+13376|0;O=Xi[g>>2]|0;M=b+i|0;p=((p|0)>(O|0)?O:p)-M>>K;O=w+20|0;if((Wi[O>>0]|0)==1){S=Xi[H+13340>>2]|0;w=k>>S;b=b>>S;k=(1<<S)+-1|0;h=(k&i|0)==0;k=(k&r|0)==0;b=((b|0)==0&1)+b|0;if(d&h){t=i+-1>>S;o=T>>S;a=(Xi[H+13416>>2]|0)-o|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;u=0;do{l=(Wi[s+(((Zi(u+o|0,z)|0)+t|0)*12|0)+10>>0]|0)==0|l;u=u+2|0}while((u|0)<(a|0));c=l}else c=0}if((v|0)==1&h){s=i+-1>>S;u=r>>S;a=(Xi[H+13416>>2]|0)-u|0;a=(w|0)>(a|0)?a:w;if((a|0)>0){t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+(((Zi(o+u|0,z)|0)+s|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(a|0));u=l}else u=0}else u=v;if((_|0)==1){h=(Zi(r+-1>>S,z)|0)+(i+-1>>S)|0;h=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(h*12|0)+10>>0]|0)==0&1}else h=_;if((m|0)==1&k){l=i>>S;s=z-l|0;s=(b|0)>(s|0)?s:b;if((s|0)>0){a=(Zi(r+-1>>S,z)|0)+l|0;t=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;o=0;do{l=(Wi[t+((a+o|0)*12|0)+10>>0]|0)==0|l;o=o+2|0}while((o|0)<(s|0));s=l}else s=0}else s=m;if(E&k){l=M>>S;o=z-l|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){a=(Zi(r+-1>>S,z)|0)+l|0;n=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;l=0;t=0;do{l=(Wi[n+((a+t|0)*12|0)+10>>0]|0)==0|l;t=t+2|0}while((t|0)<(o|0));n=l}else n=0}l=Y;a=l+64|0;do{Wi[l>>0]=128;l=l+1|0}while((l|0)<(a|0));l=G;a=l+65|0;do{Wi[l>>0]=128;l=l+1|0}while((l|0)<(a|0));v=u;m=s;_=h;o=n}else o=n;S=(_|0)!=0;if(S){L=Wi[N+(R+~U)>>0]|0;Wi[W>>0]=L;Wi[G>>0]=L}P=(m|0)!=0;if(P){L=N+(R-U)|0;L=qi[L>>0]|qi[L+1>>0]<<8|qi[L+2>>0]<<16|qi[L+3>>0]<<24;Wi[j>>0]=L;Wi[j+1>>0]=L>>8;Wi[j+2>>0]=L>>16;Wi[j+3>>0]=L>>24}L=(o|0)!=0;if(L?(F=G+5|0,y=N+(4-U+R)|0,y=qi[y>>0]|qi[y+1>>0]<<8|qi[y+2>>0]<<16|qi[y+3>>0]<<24,Wi[F>>0]=y,Wi[F+1>>0]=y>>8,Wi[F+2>>0]=y>>16,Wi[F+3>>0]=y>>24,F=Zi(qi[N+(3-U+R+p)>>0]|0,16843009)|0,y=4-p|0,(y|0)>0):0){l=p+5|0;a=0;do{p=G+(l+a)|0;Wi[p>>0]=F;Wi[p+1>>0]=F>>8;Wi[p+2>>0]=F>>16;Wi[p+3>>0]=F>>24;a=a+4|0}while((a|0)<(y|0))}d=(v|0)!=0;if(d){y=R+-1|0;Wi[Y>>0]=Wi[N+y>>0]|0;Wi[W+2>>0]=Wi[N+(y+U)>>0]|0;Wi[W+3>>0]=Wi[N+(y+(U<<1))>>0]|0;Wi[W+4>>0]=Wi[N+(y+(U*3|0))>>0]|0}E=(c|0)!=0;if(E){l=R+-1|0;if((D|0)>0){a=D+3|0;n=4;do{R=n;n=n+1|0;Wi[W+n>>0]=Wi[N+((Zi(R,U)|0)+l)>>0]|0}while((R|0)<(a|0))}a=Zi(qi[N+((Zi(D+3|0,U)|0)+l)>>0]|0,16843009)|0;n=4-D|0;if((n|0)>0){l=D+5|0;t=0;do{N=W+(l+t)|0;Wi[N>>0]=a;Wi[N+1>>0]=a>>8;Wi[N+2>>0]=a>>16;Wi[N+3>>0]=a>>24;t=t+4|0}while((t|0)<(n|0))}}if((Wi[O>>0]|0)==1?(C=c|v,I=(C|0)!=0,C=C|_,m|o|C|0):0){R=Xi[g>>2]|0;b=R-i>>K;N=Xi[A>>2]|0;k=N-r>>B;b=L?((8<<K)+i|0)<(R|0)?8:b:(M|0)<(R|0)?4:b;k=E?((8<<B)+r|0)<(N|0)?8:k:(T|0)<(N|0)?4:k;do{if(!C){e:do{if((b|0)>0){o=H+13340|0;t=Xi[o>>2]|0;s=(-1<<B)+r|0;a=Zi(s>>t,z)|0;u=(Xi[e+3516>>2]|0)+16|0;n=Xi[u>>2]|0;l=0;do{if(!(Wi[n+((((l<<K)+i>>t)+a|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(b|0));if((l|0)>0){if((i|0)>0)while(1){a=l+-1|0;if(Wi[n+((((a<<K)+i>>t)+(Zi(s>>t,z)|0)|0)*12|0)+10>>0]|0)Wi[G+l>>0]=Wi[G+(l+1)>>0]|0;if((l|0)<=0)break e;t=Xi[o>>2]|0;n=Xi[u>>2]|0;l=a}while(1){a=l+-1|0;if(Wi[n+((((a<<K)+i>>t)+(Zi(s>>t,z)|0)|0)*12|0)+10>>0]|0)Wi[G+l>>0]=Wi[G+(l+1)>>0]|0;if((l|0)<=1)break;t=Xi[o>>2]|0;n=Xi[u>>2]|0;l=a}Wi[G>>0]=Wi[j>>0]|0}}}while(0);l=Wi[G>>0]|0;Wi[W>>0]=l}else{o=e+3516|0;w=H+13340|0;h=Xi[w>>2]|0;s=(-1<<K)+i>>h;l=E?D+4|0:4;while(1){C=l;l=l+-1|0;if((C|0)<=0){X=49;break}a=(l<<B)+r|0;C=(Zi(a>>h,z)|0)+s|0;t=Xi[o>>2]|0;n=Xi[t+16>>2]|0;if(!(Wi[n+(C*12|0)+10>>0]|0)){l=t;break}}if((X|0)==49){n=Xi[o>>2]|0;a=(l<<B)+r|0;l=n;n=Xi[n+16>>2]|0}u=l+16|0;if(!(Wi[n+(((Zi(a>>h,z)|0)+s|0)*12|0)+10>>0]|0)){l=Wi[G>>0]|0;break}o=(-1<<B)+r|0;if((b|0)>0){a=Zi(o>>h,z)|0;l=0;do{if(!(Wi[n+((((l<<K)+i>>h)+a|0)*12|0)+10>>0]|0))break;l=l+1|0}while((l|0)<(b|0));if((l|0)>-1){t=h;X=58}}else{t=h;l=0;X=58}e:do{if((X|0)==58)while(1){X=0;a=l+-1|0;if(Wi[n+((((a<<K)+i>>t)+(Zi(o>>t,z)|0)|0)*12|0)+10>>0]|0)Wi[G+l>>0]=Wi[G+(l+1)>>0]|0;if((l|0)<=0)break e;t=Xi[w>>2]|0;n=Xi[u>>2]|0;l=a;X=58}}while(0);l=Wi[G>>0]|0;Wi[W>>0]=l}}while(0);Wi[W>>0]=l;s=(k|0)>0;if(I&s){l=Zi(l&255,16843009)|0;a=(-1<<K)+i|0;n=H+13340|0;t=(Xi[e+3516>>2]|0)+16|0;o=0;do{I=Xi[n>>2]|0;I=(Zi((o<<B)+r>>I,z)|0)+(a>>I)|0;if(!(Wi[(Xi[t>>2]|0)+(I*12|0)+10>>0]|0))l=Zi(qi[W+((o|3)+1)>>0]|0,16843009)|0;else{I=W+(o|1)|0;Wi[I>>0]=l;Wi[I+1>>0]=l>>8;Wi[I+2>>0]=l>>16;Wi[I+3>>0]=l>>24}o=o+4|0}while((o|0)<(k|0))}if(!d){I=Zi(qi[W>>0]|0,16843009)|0;Wi[Y>>0]=I;Wi[Y+1>>0]=I>>8;Wi[Y+2>>0]=I>>16;Wi[Y+3>>0]=I>>24}if(!E){C=Zi(qi[W+4>>0]|0,16843009)|0;I=W+5|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24}w=(r|0)!=0;do{if((i|0)!=0&w){u=(-1<<K)+i|0;h=H+13340|0;n=Xi[h>>2]|0;a=u>>n;if(s){t=Zi(qi[W+k>>0]|0,16843009)|0;l=Xi[e+3516>>2]|0;s=l+16|0;o=k+-1|0;do{I=(Zi((o+-3<<B)+r>>n,z)|0)+a|0;a=W+(o+-2)|0;if(!(Wi[(Xi[s>>2]|0)+(I*12|0)+10>>0]|0))t=Zi(qi[a>>0]|0,16843009)|0;else{Wi[a>>0]=t;Wi[a+1>>0]=t>>8;Wi[a+2>>0]=t>>16;Wi[a+3>>0]=t>>24;n=Xi[h>>2]|0}o=o+-4|0;a=u>>n}while((o|0)>-1)}else l=Xi[e+3516>>2]|0;I=(Zi((-1<<B)+r>>n,z)|0)+a|0;if(Wi[(Xi[l+16>>2]|0)+(I*12|0)+10>>0]|0)Wi[W>>0]=Wi[Y>>0]|0}else{if(!i){if(!s)break;jT(Y|0,0,k+3&-4|0)|0;break}if(s){l=Zi(qi[W+k>>0]|0,16843009)|0;t=(-1<<K)+i|0;o=H+13340|0;s=(Xi[e+3516>>2]|0)+16|0;n=k+-1|0;do{I=Xi[o>>2]|0;I=(Zi((n+-3<<B)+r>>I,z)|0)+(t>>I)|0;a=W+(n+-2)|0;if(!(Wi[(Xi[s>>2]|0)+(I*12|0)+10>>0]|0))l=Zi(qi[a>>0]|0,16843009)|0;else{Wi[a>>0]=l;Wi[a+1>>0]=l>>8;Wi[a+2>>0]=l>>16;Wi[a+3>>0]=l>>24}n=n+-4|0}while((n|0)>-1)}}}while(0);l=Wi[W>>0]|0;Wi[G>>0]=l;if(w&(b|0)>0){l=Zi(l&255,16843009)|0;o=H+13340|0;a=(-1<<B)+r|0;n=(Xi[e+3516>>2]|0)+16|0;t=0;do{r=Xi[o>>2]|0;r=(Zi(a>>r,z)|0)+((t<<K)+i>>r)|0;if(!(Wi[(Xi[n>>2]|0)+(r*12|0)+10>>0]|0))l=Zi(qi[G+((t|3)+1)>>0]|0,16843009)|0;else{r=G+(t|1)|0;Wi[r>>0]=l;Wi[r+1>>0]=l>>8;Wi[r+2>>0]=l>>16;Wi[r+3>>0]=l>>24}t=t+4|0}while((t|0)<(b|0))}}do{if(E)if(!v)X=123;else X=124;else{if(d){i=Zi(qi[W+4>>0]|0,16843009)|0;X=W+5|0;Wi[X>>0]=i;Wi[X+1>>0]=i>>8;Wi[X+2>>0]=i>>16;Wi[X+3>>0]=i>>24;X=124;break}if(S){i=Zi(qi[W>>0]|0,16843009)|0;Wi[Y>>0]=i;Wi[Y+1>>0]=i>>8;Wi[Y+2>>0]=i>>16;Wi[Y+3>>0]=i>>24;X=W+5|0;Wi[X>>0]=i;Wi[X+1>>0]=i>>8;Wi[X+2>>0]=i>>16;Wi[X+3>>0]=i>>24;X=126;break}if(P){i=Wi[j>>0]|0;Wi[W>>0]=i;i=Zi(i&255,16843009)|0;Wi[Y>>0]=i;Wi[Y+1>>0]=i>>8;Wi[Y+2>>0]=i>>16;Wi[Y+3>>0]=i>>24;X=W+5|0;Wi[X>>0]=i;Wi[X+1>>0]=i>>8;Wi[X+2>>0]=i>>16;Wi[X+3>>0]=i>>24;X=128;break}if(L){i=Wi[G+5>>0]|0;K=Zi(i&255,16843009)|0;Wi[j>>0]=K;Wi[j+1>>0]=K>>8;Wi[j+2>>0]=K>>16;Wi[j+3>>0]=K>>24;Wi[W>>0]=i;Wi[Y>>0]=K;Wi[Y+1>>0]=K>>8;Wi[Y+2>>0]=K>>16;Wi[Y+3>>0]=K>>24;i=W+5|0;Wi[i>>0]=K;Wi[i+1>>0]=K>>8;Wi[i+2>>0]=K>>16;Wi[i+3>>0]=K>>24;break}else{Wi[W>>0]=-128;X=j;i=X;Wi[i>>0]=-2139062144;Wi[i+1>>0]=-2139062144>>8;Wi[i+2>>0]=-2139062144>>16;Wi[i+3>>0]=-2139062144>>24;X=X+4|0;Wi[X>>0]=-2139062144;Wi[X+1>>0]=-2139062144>>8;Wi[X+2>>0]=-2139062144>>16;Wi[X+3>>0]=-2139062144>>24;X=Y;i=X;Wi[i>>0]=-2139062144;Wi[i+1>>0]=-2139062144>>8;Wi[i+2>>0]=-2139062144>>16;Wi[i+3>>0]=-2139062144>>24;X=X+4|0;Wi[X>>0]=-2139062144;Wi[X+1>>0]=-2139062144>>8;Wi[X+2>>0]=-2139062144>>16;Wi[X+3>>0]=-2139062144>>24;X=123;break}}}while(0);if((X|0)==123){i=Zi(qi[W+5>>0]|0,16843009)|0;Wi[Y>>0]=i;Wi[Y+1>>0]=i>>8;Wi[Y+2>>0]=i>>16;Wi[Y+3>>0]=i>>24;X=124}if((X|0)==124)if(!_){Wi[W>>0]=Wi[Y>>0]|0;X=126}else X=126;if((X|0)==126)if(!m){X=Zi(qi[W>>0]|0,16843009)|0;Wi[j>>0]=X;Wi[j+1>>0]=X>>8;Wi[j+2>>0]=X>>16;Wi[j+3>>0]=X>>24;X=128}else X=128;if((X|0)==128?!L:0){i=Zi(qi[G+4>>0]|0,16843009)|0;X=G+5|0;Wi[X>>0]=i;Wi[X+1>>0]=i>>8;Wi[X+2>>0]=i>>16;Wi[X+3>>0]=i>>24}Wi[G>>0]=Wi[W>>0]|0;switch(V|0){case 0:{nV[Xi[e+6136>>2]&255](x,j,Y,U);break}case 1:{Xz[Xi[e+6152>>2]&127](x,j,Y,U,2,f);break}default:Xz[Xi[e+6156>>2]&127](x,j,Y,U,f,V)}Ue=q;return}function ty(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0;ee=Ue;Ue=Ue+272|0;W=ee+195|0;K=ee+130|0;q=ee+65|0;X=ee;n=Xi[e+136>>2]|0;V=Xi[e+1412>>2]|0;z=Xi[V+13424+(f<<2)>>2]|0;U=Xi[V+13436+(f<<2)>>2]|0;d=8<<z;t=Xi[V+13328>>2]|0;c=8<<U;o=Xi[V+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;C=Xi[e+160>>2]|0;Q=Xi[C+32+(f<<2)>>2]|0;C=Xi[C+(f<<2)>>2]|0;N=(Zi(Q,r>>U)|0)+(i>>z)|0;$=C+N|0;x=Xi[V+13412>>2]|0;Y=(f|0)==0;Z=Xi[(Y?n+288|0:n+292|0)>>2]|0;a=W+1|0;l=q+1|0;G=K+1|0;J=X+1|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;P=(c<<1)+r|0;M=V+13380|0;y=Xi[M>>2]|0;D=c+r|0;P=((P|0)>(y|0)?y:P)-D>>U;y=(d<<1)+i|0;R=V+13376|0;g=Xi[R>>2]|0;T=d+i|0;y=((y|0)>(g|0)?g:y)-T>>z;g=b+20|0;if((Wi[g>>0]|0)==1){m=Xi[V+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=D>>m;o=(Xi[V+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,x)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[V+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,x)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,x)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=x-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,x)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=T>>m;u=x-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,x)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}t=a;o=t+64|0;do{Wi[t>>0]=128;t=t+1|0}while((t|0)<(o|0));t=q;o=t+65|0;do{Wi[t>>0]=128;t=t+1|0}while((t|0)<(o|0));S=w;F=h;p=k;u=n}else u=n;m=(p|0)!=0;if(m){H=Wi[C+(N+~Q)>>0]|0;Wi[W>>0]=H;Wi[q>>0]=H}I=(F|0)!=0;if(I){_=C+(N-Q)|0;d=_;d=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;_=_+4|0;_=qi[_>>0]|qi[_+1>>0]<<8|qi[_+2>>0]<<16|qi[_+3>>0]<<24;H=l;E=H;Wi[E>>0]=d;Wi[E+1>>0]=d>>8;Wi[E+2>>0]=d>>16;Wi[E+3>>0]=d>>24;H=H+4|0;Wi[H>>0]=_;Wi[H+1>>0]=_>>8;Wi[H+2>>0]=_>>16;Wi[H+3>>0]=_>>24}H=(u|0)!=0;if(H?(A=C+(8-Q+N)|0,E=A,E=qi[E>>0]|qi[E+1>>0]<<8|qi[E+2>>0]<<16|qi[E+3>>0]<<24,A=A+4|0,A=qi[A>>0]|qi[A+1>>0]<<8|qi[A+2>>0]<<16|qi[A+3>>0]<<24,O=q+9|0,_=O,Wi[_>>0]=E,Wi[_+1>>0]=E>>8,Wi[_+2>>0]=E>>16,Wi[_+3>>0]=E>>24,O=O+4|0,Wi[O>>0]=A,Wi[O+1>>0]=A>>8,Wi[O+2>>0]=A>>16,Wi[O+3>>0]=A>>24,O=Zi(qi[C+(7-Q+N+y)>>0]|0,16843009)|0,A=8-y|0,(A|0)>0):0){n=y+9|0;t=0;do{y=q+(n+t)|0;Wi[y>>0]=O;Wi[y+1>>0]=O>>8;Wi[y+2>>0]=O>>16;Wi[y+3>>0]=O>>24;t=t+4|0}while((t|0)<(A|0))}_=(S|0)!=0;if(_){n=N+-1|0;t=0;do{A=t;t=t+1|0;Wi[W+t>>0]=Wi[C+(n+(Zi(A,Q)|0))>>0]|0}while((t|0)!=8)}E=(v|0)!=0;if(E){n=N+-1|0;if((P|0)>0){t=P+7|0;o=8;do{N=o;o=o+1|0;Wi[W+o>>0]=Wi[C+((Zi(N,Q)|0)+n)>>0]|0}while((N|0)<(t|0))}t=Zi(qi[C+((Zi(P+7|0,Q)|0)+n)>>0]|0,16843009)|0;o=8-P|0;if((o|0)>0){n=P+9|0;s=0;do{C=W+(n+s)|0;Wi[C>>0]=t;Wi[C+1>>0]=t>>8;Wi[C+2>>0]=t>>16;Wi[C+3>>0]=t>>24;s=s+4|0}while((s|0)<(o|0))}}if((Wi[g>>0]|0)==1?(L=v|S,B=(L|0)!=0,L=L|p,F|u|L|0):0){N=Xi[R>>2]|0;d=N-i>>z;C=Xi[M>>2]|0;c=C-r>>U;d=H?((16<<z)+i|0)<(N|0)?16:d:(T|0)<(N|0)?8:d;c=E?((16<<U)+r|0)<(C|0)?16:c:(D|0)<(C|0)?8:c;do{if(!L){e:do{if((d|0)>0){u=V+13340|0;s=Xi[u>>2]|0;h=(-1<<U)+r|0;t=Zi(h>>s,x)|0;w=(Xi[e+3516>>2]|0)+16|0;o=Xi[w>>2]|0;n=0;do{if(!(Wi[o+((((n<<z)+i>>s)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>0){if((i|0)>0)while(1){t=n+-1|0;if(Wi[o+((((t<<z)+i>>s)+(Zi(h>>s,x)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}while(1){t=n+-1|0;if(Wi[o+((((t<<z)+i>>s)+(Zi(h>>s,x)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=1)break;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}Wi[q>>0]=Wi[l>>0]|0}}}while(0);n=Wi[q>>0]|0;Wi[W>>0]=n}else{u=e+3516|0;b=V+13340|0;k=Xi[b>>2]|0;h=(-1<<z)+i>>k;n=E?P+8|0:8;while(1){L=n;n=n+-1|0;if((L|0)<=0){j=50;break}t=(n<<U)+r|0;L=(Zi(t>>k,x)|0)+h|0;s=Xi[u>>2]|0;o=Xi[s+16>>2]|0;if(!(Wi[o+(L*12|0)+10>>0]|0)){n=s;break}}if((j|0)==50){o=Xi[u>>2]|0;t=(n<<U)+r|0;n=o;o=Xi[o+16>>2]|0}w=n+16|0;if(!(Wi[o+(((Zi(t>>k,x)|0)+h|0)*12|0)+10>>0]|0)){n=Wi[q>>0]|0;break}u=(-1<<U)+r|0;if((d|0)>0){t=Zi(u>>k,x)|0;n=0;do{if(!(Wi[o+((((n<<z)+i>>k)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>-1){s=k;j=59}}else{s=k;n=0;j=59}e:do{if((j|0)==59)while(1){j=0;t=n+-1|0;if(Wi[o+((((t<<z)+i>>s)+(Zi(u>>s,x)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[b>>2]|0;o=Xi[w>>2]|0;n=t;j=59}}while(0);n=Wi[q>>0]|0;Wi[W>>0]=n}}while(0);Wi[W>>0]=n;h=(c|0)>0;if(B&h){n=Zi(n&255,16843009)|0;t=(-1<<z)+i|0;o=V+13340|0;s=(Xi[e+3516>>2]|0)+16|0;u=0;do{B=Xi[o>>2]|0;B=(Zi((u<<U)+r>>B,x)|0)+(t>>B)|0;if(!(Wi[(Xi[s>>2]|0)+(B*12|0)+10>>0]|0))n=Zi(qi[W+((u|3)+1)>>0]|0,16843009)|0;else{B=W+(u|1)|0;Wi[B>>0]=n;Wi[B+1>>0]=n>>8;Wi[B+2>>0]=n>>16;Wi[B+3>>0]=n>>24}u=u+4|0}while((u|0)<(c|0))}if(!_){L=Zi(qi[W>>0]|0,16843009)|0;Wi[a>>0]=L;Wi[a+1>>0]=L>>8;Wi[a+2>>0]=L>>16;Wi[a+3>>0]=L>>24;B=W+5|0;Wi[B>>0]=L;Wi[B+1>>0]=L>>8;Wi[B+2>>0]=L>>16;Wi[B+3>>0]=L>>24}if(!E){L=Zi(qi[W+8>>0]|0,16843009)|0;B=W+9|0;Wi[B>>0]=L;Wi[B+1>>0]=L>>8;Wi[B+2>>0]=L>>16;Wi[B+3>>0]=L>>24;B=W+13|0;Wi[B>>0]=L;Wi[B+1>>0]=L>>8;Wi[B+2>>0]=L>>16;Wi[B+3>>0]=L>>24}b=(r|0)!=0;do{if((i|0)!=0&b){w=(-1<<z)+i|0;k=V+13340|0;o=Xi[k>>2]|0;t=w>>o;if(h){s=Zi(qi[W+c>>0]|0,16843009)|0;n=Xi[e+3516>>2]|0;h=n+16|0;u=c+-1|0;do{B=(Zi((u+-3<<U)+r>>o,x)|0)+t|0;t=W+(u+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(B*12|0)+10>>0]|0))s=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=Xi[k>>2]|0}u=u+-4|0;t=w>>o}while((u|0)>-1)}else n=Xi[e+3516>>2]|0;B=(Zi((-1<<U)+r>>o,x)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(B*12|0)+10>>0]|0)Wi[W>>0]=Wi[a>>0]|0}else{if(!i){if(!h)break;jT(a|0,0,c+3&-4|0)|0;break}if(h){n=Zi(qi[W+c>>0]|0,16843009)|0;s=(-1<<z)+i|0;u=V+13340|0;h=(Xi[e+3516>>2]|0)+16|0;o=c+-1|0;do{B=Xi[u>>2]|0;B=(Zi((o+-3<<U)+r>>B,x)|0)+(s>>B)|0;t=W+(o+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(B*12|0)+10>>0]|0))n=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=n;Wi[t+1>>0]=n>>8;Wi[t+2>>0]=n>>16;Wi[t+3>>0]=n>>24}o=o+-4|0}while((o|0)>-1)}}}while(0);n=Wi[W>>0]|0;Wi[q>>0]=n;if(b&(d|0)>0){n=Zi(n&255,16843009)|0;u=V+13340|0;t=(-1<<U)+r|0;o=(Xi[e+3516>>2]|0)+16|0;s=0;do{r=Xi[u>>2]|0;r=(Zi(t>>r,x)|0)+((s<<z)+i>>r)|0;if(!(Wi[(Xi[o>>2]|0)+(r*12|0)+10>>0]|0))n=Zi(qi[q+((s|3)+1)>>0]|0,16843009)|0;else{r=q+(s|1)|0;Wi[r>>0]=n;Wi[r+1>>0]=n>>8;Wi[r+2>>0]=n>>16;Wi[r+3>>0]=n>>24}s=s+4|0}while((s|0)<(d|0))}}do{if(E)if(!S)j=124;else j=125;else{if(_){i=Zi(qi[W+8>>0]|0,16843009)|0;j=W+9|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=W+13|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=125;break}if(m){i=Zi(qi[W>>0]|0,16843009)|0;Wi[a>>0]=i;Wi[a+1>>0]=i>>8;Wi[a+2>>0]=i>>16;Wi[a+3>>0]=i>>24;j=W+5|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=W+9|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=W+13|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=127;break}if(I){i=Wi[l>>0]|0;Wi[W>>0]=i;i=Zi(i&255,16843009)|0;Wi[a>>0]=i;Wi[a+1>>0]=i>>8;Wi[a+2>>0]=i>>16;Wi[a+3>>0]=i>>24;j=W+5|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=W+9|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=W+13|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=129;break}if(H){i=Wi[q+9>>0]|0;z=Zi(i&255,16843009)|0;Wi[l>>0]=z;Wi[l+1>>0]=z>>8;Wi[l+2>>0]=z>>16;Wi[l+3>>0]=z>>24;x=q+5|0;Wi[x>>0]=z;Wi[x+1>>0]=z>>8;Wi[x+2>>0]=z>>16;Wi[x+3>>0]=z>>24;Wi[W>>0]=i;Wi[a>>0]=z;Wi[a+1>>0]=z>>8;Wi[a+2>>0]=z>>16;Wi[a+3>>0]=z>>24;i=W+5|0;Wi[i>>0]=z;Wi[i+1>>0]=z>>8;Wi[i+2>>0]=z>>16;Wi[i+3>>0]=z>>24;i=W+9|0;Wi[i>>0]=z;Wi[i+1>>0]=z>>8;Wi[i+2>>0]=z>>16;Wi[i+3>>0]=z>>24;i=W+13|0;Wi[i>>0]=z;Wi[i+1>>0]=z>>8;Wi[i+2>>0]=z>>16;Wi[i+3>>0]=z>>24;break}else{Wi[W>>0]=-128;t=l;o=t+16|0;do{Wi[t>>0]=128;t=t+1|0}while((t|0)<(o|0));t=a;o=t+16|0;do{Wi[t>>0]=128;t=t+1|0}while((t|0)<(o|0));j=124;break}}}while(0);if((j|0)==124){z=Zi(qi[W+9>>0]|0,16843009)|0;Wi[a>>0]=z;Wi[a+1>>0]=z>>8;Wi[a+2>>0]=z>>16;Wi[a+3>>0]=z>>24;i=W+5|0;Wi[i>>0]=z;Wi[i+1>>0]=z>>8;Wi[i+2>>0]=z>>16;Wi[i+3>>0]=z>>24;j=125}if((j|0)==125)if(!p){Wi[W>>0]=Wi[a>>0]|0;j=127}else j=127;if((j|0)==127)if(!F){i=Zi(qi[W>>0]|0,16843009)|0;Wi[l>>0]=i;Wi[l+1>>0]=i>>8;Wi[l+2>>0]=i>>16;Wi[l+3>>0]=i>>24;j=q+5|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=129}else j=129;if((j|0)==129?!H:0){i=Zi(qi[q+8>>0]|0,16843009)|0;j=q+9|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24;j=q+13|0;Wi[j>>0]=i;Wi[j+1>>0]=i>>8;Wi[j+2>>0]=i>>16;Wi[j+3>>0]=i>>24}h=Wi[W>>0]|0;Wi[q>>0]=h;do{if(!(Xi[V+13368>>2]|0)){if(!Y?(Xi[V+4>>2]|0)!=3:0){j=140;break}if((Z|0)!=1){j=Z+-26|0;j=(j|0)>-1?j:26-Z|0;Y=Z+-10|0;Y=(Y|0)>-1?Y:10-Z|0;if((((j|0)>(Y|0)?Y:j)|0)>7){t=Wi[W+16>>0]|0;Wi[K+16>>0]=t;n=Wi[q+16>>0]|0;Wi[X+16>>0]=n;o=Wi[W+15>>0]|0;u=14;while(1){s=Wi[W+u>>0]|0;Wi[K+(u+1)>>0]=((t&255)+2+((o&255)<<1)+(s&255)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&255)<<1)+2+(qi[a>>0]|0)+(qi[l>>0]|0)|0)>>>2&255;Wi[K>>0]=l;Wi[X>>0]=l;l=n;a=Wi[q+15>>0]|0;t=14;while(1){n=Wi[q+t>>0]|0;Wi[X+(t+1)>>0]=((l&255)+2+((a&255)<<1)+(n&255)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=G;l=J;j=140;break}}}else j=140}else j=142}else j=140}while(0);e:do{if((j|0)==140)switch(Z|0){case 1:{j=142;break e}case 0:{nV[Xi[e+6140>>2]&255]($,l,a,Q);break e}default:{Xz[Xi[e+6160>>2]&127]($,l,a,Q,f,Z);break e}}}while(0);if((j|0)==142)Xz[Xi[e+6152>>2]&127]($,l,a,Q,3,f);Ue=ee;return}function oy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0;Q=Ue;Ue=Ue+272|0;j=Q+195|0;Y=Q+130|0;G=Q+65|0;W=Q;n=Xi[e+136>>2]|0;x=Xi[e+1412>>2]|0;U=Xi[x+13424+(f<<2)>>2]|0;H=Xi[x+13436+(f<<2)>>2]|0;d=16<<U;t=Xi[x+13328>>2]|0;c=16<<H;o=Xi[x+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;J=Xi[N+32+(f<<2)>>2]|0;N=Xi[N+(f<<2)>>2]|0;R=(Zi(J,r>>H)|0)+(i>>U)|0;Z=N+R|0;B=Xi[x+13412>>2]|0;z=(f|0)==0;q=Xi[(z?n+288|0:n+292|0)>>2]|0;a=j+1|0;l=G+1|0;K=Y+1|0;X=W+1|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;A=x+13380|0;y=Xi[A>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>H;y=(d<<1)+i|0;g=x+13376|0;O=Xi[g>>2]|0;M=d+i|0;y=((y|0)>(O|0)?O:y)-M>>U;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[x+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[x+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,B)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[x+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,B)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,B)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=B-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,B)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=M>>m;u=B-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,B)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+64|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));o=G;s=o+65|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));S=w;F=h;p=k}m=(p|0)!=0;if(m){L=Wi[N+(R+~J)>>0]|0;Wi[j>>0]=L;Wi[G>>0]=L}P=(F|0)!=0;if(P){o=l;t=N+(R-J)|0;s=o+16|0;do{Wi[o>>0]=Wi[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(s|0))}L=(n|0)!=0;if(L){o=G+17|0;t=N+(16-J+R)|0;s=o+16|0;do{Wi[o>>0]=Wi[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(s|0));s=Zi(qi[N+(15-J+R+y)>>0]|0,16843009)|0;u=16-y|0;if((u|0)>0){t=y+17|0;o=0;do{y=G+(t+o)|0;Wi[y>>0]=s;Wi[y+1>>0]=s>>8;Wi[y+2>>0]=s>>16;Wi[y+3>>0]=s>>24;o=o+4|0}while((o|0)<(u|0))}}_=(S|0)!=0;if(_){t=R+-1|0;o=0;do{y=o;o=o+1|0;Wi[j+o>>0]=Wi[N+(t+(Zi(y,J)|0))>>0]|0}while((o|0)!=16)}E=(v|0)!=0;if(E){t=R+-1|0;if((D|0)>0){o=D+15|0;s=16;do{R=s;s=s+1|0;Wi[j+s>>0]=Wi[N+((Zi(R,J)|0)+t)>>0]|0}while((R|0)<(o|0))}o=Zi(qi[N+((Zi(D+15|0,J)|0)+t)>>0]|0,16843009)|0;s=16-D|0;if((s|0)>0){t=D+17|0;u=0;do{N=j+(t+u)|0;Wi[N>>0]=o;Wi[N+1>>0]=o>>8;Wi[N+2>>0]=o>>16;Wi[N+3>>0]=o>>24;u=u+4|0}while((u|0)<(s|0))}}if((Wi[O>>0]|0)==1?(C=v|S,I=(C|0)!=0,C=C|p,F|n|C|0):0){R=Xi[g>>2]|0;d=R-i>>U;N=Xi[A>>2]|0;c=N-r>>H;d=L?((32<<U)+i|0)<(R|0)?32:d:(M|0)<(R|0)?16:d;c=E?((32<<H)+r|0)<(N|0)?32:c:(T|0)<(N|0)?16:c;do{if(!C){e:do{if((d|0)>0){u=x+13340|0;s=Xi[u>>2]|0;h=(-1<<H)+r|0;t=Zi(h>>s,B)|0;w=(Xi[e+3516>>2]|0)+16|0;o=Xi[w>>2]|0;n=0;do{if(!(Wi[o+((((n<<U)+i>>s)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>0){if((i|0)>0)while(1){t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(h>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[G+n>>0]=Wi[G+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}while(1){t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(h>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[G+n>>0]=Wi[G+(n+1)>>0]|0;if((n|0)<=1)break;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}Wi[G>>0]=Wi[l>>0]|0}}}while(0);n=Wi[G>>0]|0;Wi[j>>0]=n}else{u=e+3516|0;b=x+13340|0;k=Xi[b>>2]|0;h=(-1<<U)+i>>k;n=E?D+16|0:16;while(1){C=n;n=n+-1|0;if((C|0)<=0){V=50;break}t=(n<<H)+r|0;C=(Zi(t>>k,B)|0)+h|0;s=Xi[u>>2]|0;o=Xi[s+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=s;break}}if((V|0)==50){o=Xi[u>>2]|0;t=(n<<H)+r|0;n=o;o=Xi[o+16>>2]|0}w=n+16|0;if(!(Wi[o+(((Zi(t>>k,B)|0)+h|0)*12|0)+10>>0]|0)){n=Wi[G>>0]|0;break}u=(-1<<H)+r|0;if((d|0)>0){t=Zi(u>>k,B)|0;n=0;do{if(!(Wi[o+((((n<<U)+i>>k)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>-1){s=k;V=59}}else{s=k;n=0;V=59}e:do{if((V|0)==59)while(1){V=0;t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(u>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[G+n>>0]=Wi[G+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[b>>2]|0;o=Xi[w>>2]|0;n=t;V=59}}while(0);n=Wi[G>>0]|0;Wi[j>>0]=n}}while(0);Wi[j>>0]=n;h=(c|0)>0;if(I&h){n=Zi(n&255,16843009)|0;t=(-1<<U)+i|0;o=x+13340|0;s=(Xi[e+3516>>2]|0)+16|0;u=0;do{I=Xi[o>>2]|0;I=(Zi((u<<H)+r>>I,B)|0)+(t>>I)|0;if(!(Wi[(Xi[s>>2]|0)+(I*12|0)+10>>0]|0))n=Zi(qi[j+((u|3)+1)>>0]|0,16843009)|0;else{I=j+(u|1)|0;Wi[I>>0]=n;Wi[I+1>>0]=n>>8;Wi[I+2>>0]=n>>16;Wi[I+3>>0]=n>>24}u=u+4|0}while((u|0)<(c|0))}if(!_){C=Zi(qi[j>>0]|0,16843009)|0;Wi[a>>0]=C;Wi[a+1>>0]=C>>8;Wi[a+2>>0]=C>>16;Wi[a+3>>0]=C>>24;I=j+5|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=j+9|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=j+13|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24}if(!E){C=Zi(qi[j+16>>0]|0,16843009)|0;I=j+17|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=j+21|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=j+25|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=j+29|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24}b=(r|0)!=0;do{if((i|0)!=0&b){w=(-1<<U)+i|0;k=x+13340|0;o=Xi[k>>2]|0;t=w>>o;if(h){s=Zi(qi[j+c>>0]|0,16843009)|0;n=Xi[e+3516>>2]|0;h=n+16|0;u=c+-1|0;do{I=(Zi((u+-3<<H)+r>>o,B)|0)+t|0;t=j+(u+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(I*12|0)+10>>0]|0))s=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=Xi[k>>2]|0}u=u+-4|0;t=w>>o}while((u|0)>-1)}else n=Xi[e+3516>>2]|0;I=(Zi((-1<<H)+r>>o,B)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(I*12|0)+10>>0]|0)Wi[j>>0]=Wi[a>>0]|0}else{if(!i){if(!h)break;jT(a|0,0,c+3&-4|0)|0;break}if(h){n=Zi(qi[j+c>>0]|0,16843009)|0;s=(-1<<U)+i|0;u=x+13340|0;h=(Xi[e+3516>>2]|0)+16|0;o=c+-1|0;do{I=Xi[u>>2]|0;I=(Zi((o+-3<<H)+r>>I,B)|0)+(s>>I)|0;t=j+(o+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(I*12|0)+10>>0]|0))n=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=n;Wi[t+1>>0]=n>>8;Wi[t+2>>0]=n>>16;Wi[t+3>>0]=n>>24}o=o+-4|0}while((o|0)>-1)}}}while(0);n=Wi[j>>0]|0;Wi[G>>0]=n;if(b&(d|0)>0){n=Zi(n&255,16843009)|0;u=x+13340|0;t=(-1<<H)+r|0;o=(Xi[e+3516>>2]|0)+16|0;s=0;do{r=Xi[u>>2]|0;r=(Zi(t>>r,B)|0)+((s<<U)+i>>r)|0;if(!(Wi[(Xi[o>>2]|0)+(r*12|0)+10>>0]|0))n=Zi(qi[G+((s|3)+1)>>0]|0,16843009)|0;else{r=G+(s|1)|0;Wi[r>>0]=n;Wi[r+1>>0]=n>>8;Wi[r+2>>0]=n>>16;Wi[r+3>>0]=n>>24}s=s+4|0}while((s|0)<(d|0))}}do{if(E)if(!S)V=124;else V=125;else{if(_){i=Zi(qi[j+16>>0]|0,16843009)|0;V=j+17|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+21|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+25|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+29|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=125;break}if(m){i=Zi(qi[j>>0]|0,16843009)|0;Wi[a>>0]=i;Wi[a+1>>0]=i>>8;Wi[a+2>>0]=i>>16;Wi[a+3>>0]=i>>24;V=j+5|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+9|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+13|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+17|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+21|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+25|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+29|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=127;break}if(P){i=Wi[l>>0]|0;Wi[j>>0]=i;i=Zi(i&255,16843009)|0;Wi[a>>0]=i;Wi[a+1>>0]=i>>8;Wi[a+2>>0]=i>>16;Wi[a+3>>0]=i>>24;V=j+5|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+9|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+13|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+17|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+21|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+25|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=j+29|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=129;break}if(L){i=Wi[G+17>>0]|0;U=Zi(i&255,16843009)|0;Wi[l>>0]=U;Wi[l+1>>0]=U>>8;Wi[l+2>>0]=U>>16;Wi[l+3>>0]=U>>24;B=G+5|0;Wi[B>>0]=U;Wi[B+1>>0]=U>>8;Wi[B+2>>0]=U>>16;Wi[B+3>>0]=U>>24;B=G+9|0;Wi[B>>0]=U;Wi[B+1>>0]=U>>8;Wi[B+2>>0]=U>>16;Wi[B+3>>0]=U>>24;B=G+13|0;Wi[B>>0]=U;Wi[B+1>>0]=U>>8;Wi[B+2>>0]=U>>16;Wi[B+3>>0]=U>>24;Wi[j>>0]=i;Wi[a>>0]=U;Wi[a+1>>0]=U>>8;Wi[a+2>>0]=U>>16;Wi[a+3>>0]=U>>24;i=j+5|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+9|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+13|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+17|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+21|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+25|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+29|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;break}else{Wi[j>>0]=-128;o=l;s=o+32|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));o=a;s=o+32|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));V=124;break}}}while(0);if((V|0)==124){U=Zi(qi[j+17>>0]|0,16843009)|0;Wi[a>>0]=U;Wi[a+1>>0]=U>>8;Wi[a+2>>0]=U>>16;Wi[a+3>>0]=U>>24;i=j+5|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+9|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=j+13|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;V=125}if((V|0)==125)if(!p){Wi[j>>0]=Wi[a>>0]|0;V=127}else V=127;if((V|0)==127)if(!F){i=Zi(qi[j>>0]|0,16843009)|0;Wi[l>>0]=i;Wi[l+1>>0]=i>>8;Wi[l+2>>0]=i>>16;Wi[l+3>>0]=i>>24;V=G+5|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=G+9|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=G+13|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=129}else V=129;if((V|0)==129?!L:0){i=Zi(qi[G+16>>0]|0,16843009)|0;V=G+17|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=G+21|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=G+25|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24;V=G+29|0;Wi[V>>0]=i;Wi[V+1>>0]=i>>8;Wi[V+2>>0]=i>>16;Wi[V+3>>0]=i>>24}h=Wi[j>>0]|0;Wi[G>>0]=h;do{if(!(Xi[x+13368>>2]|0)){if(!z?(Xi[x+4>>2]|0)!=3:0){V=140;break}if((q|0)!=1){V=q+-26|0;V=(V|0)>-1?V:26-q|0;z=q+-10|0;z=(z|0)>-1?z:10-q|0;if((((V|0)>(z|0)?z:V)|0)>1){t=Wi[j+32>>0]|0;Wi[Y+32>>0]=t;n=Wi[G+32>>0]|0;Wi[W+32>>0]=n;o=Wi[j+31>>0]|0;u=30;while(1){s=Wi[j+u>>0]|0;Wi[Y+(u+1)>>0]=((t&255)+2+((o&255)<<1)+(s&255)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&255)<<1)+2+(qi[a>>0]|0)+(qi[l>>0]|0)|0)>>>2&255;Wi[Y>>0]=l;Wi[W>>0]=l;l=n;a=Wi[G+31>>0]|0;t=30;while(1){n=Wi[G+t>>0]|0;Wi[W+(t+1)>>0]=((l&255)+2+((a&255)<<1)+(n&255)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=K;l=X;V=140;break}}}else V=140}else V=142}else V=140}while(0);e:do{if((V|0)==140)switch(q|0){case 1:{V=142;break e}case 0:{nV[Xi[e+6144>>2]&255](Z,l,a,J);break e}default:{Xz[Xi[e+6164>>2]&127](Z,l,a,J,f,q);break e}}}while(0);if((V|0)==142)Xz[Xi[e+6152>>2]&127](Z,l,a,J,4,f);Ue=Q;return}function sy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0;ie=Ue;Ue=Ue+272|0;G=ie+195|0;W=ie+130|0;q=ie+65|0;J=ie;n=Xi[e+136>>2]|0;z=Xi[e+1412>>2]|0;U=Xi[z+13424+(f<<2)>>2]|0;H=Xi[z+13436+(f<<2)>>2]|0;d=32<<U;t=Xi[z+13328>>2]|0;c=32<<H;o=Xi[z+13420>>2]|0;s=i>>t&o;u=r>>t&o;h=o+2|0;k=(Zi(u,h)|0)+s|0;b=Xi[e+1416>>2]|0;w=Xi[b+1684>>2]|0;k=Xi[w+(k<<2)>>2]|0;N=Xi[e+160>>2]|0;$=Xi[N+32+(f<<2)>>2]|0;N=Xi[N+(f<<2)>>2]|0;R=(Zi($,r>>H)|0)+(i>>U)|0;ee=N+R|0;B=Xi[z+13412>>2]|0;V=(f|0)==0;Q=Xi[(V?n+288|0:n+292|0)>>2]|0;a=G+1|0;l=q+1|0;X=W+1|0;Z=J+1|0;if(!(Xi[n+31284>>2]|0))E=0;else E=(k|0)>(Xi[w+(s+-1+(Zi(u+(c>>t)&o,h)|0)<<2)>>2]|0);v=E&1;S=Xi[n+31288>>2]|0;p=Xi[n+31296>>2]|0;F=Xi[n+31292>>2]|0;if(!(Xi[n+31300>>2]|0))_=0;else _=(k|0)>(Xi[w+((Zi(u+-1|0,h)|0)+(s+(d>>t)&o)<<2)>>2]|0);n=_&1;D=(c<<1)+r|0;A=z+13380|0;y=Xi[A>>2]|0;T=c+r|0;D=((D|0)>(y|0)?y:D)-T>>H;y=(d<<1)+i|0;g=z+13376|0;O=Xi[g>>2]|0;M=d+i|0;y=((y|0)>(O|0)?O:y)-M>>U;O=b+20|0;if((Wi[O>>0]|0)==1){m=Xi[z+13340>>2]|0;b=c>>m;d=d>>m;c=(1<<m)+-1|0;k=(c&i|0)==0;c=(c&r|0)==0;d=((d|0)==0&1)+d|0;if(E&k){s=i+-1>>m;u=T>>m;o=(Xi[z+13416>>2]|0)-u|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){h=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;w=0;do{t=(Wi[h+(((Zi(w+u|0,B)|0)+s|0)*12|0)+10>>0]|0)==0|t;w=w+2|0}while((w|0)<(o|0));v=t}else v=0}if((S|0)==1&k){h=i+-1>>m;w=r>>m;o=(Xi[z+13416>>2]|0)-w|0;o=(b|0)>(o|0)?o:b;if((o|0)>0){s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+(((Zi(u+w|0,B)|0)+h|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(o|0));w=t}else w=0}else w=S;if((p|0)==1){k=(Zi(r+-1>>m,B)|0)+(i+-1>>m)|0;k=(Wi[(Xi[(Xi[e+3516>>2]|0)+16>>2]|0)+(k*12|0)+10>>0]|0)==0&1}else k=p;if((F|0)==1&c){t=i>>m;h=B-t|0;h=(d|0)>(h|0)?h:d;if((h|0)>0){o=(Zi(r+-1>>m,B)|0)+t|0;s=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;t=0;u=0;do{t=(Wi[s+((o+u|0)*12|0)+10>>0]|0)==0|t;u=u+2|0}while((u|0)<(h|0));h=t}else h=0}else h=F;if(_&c){n=M>>m;u=B-n|0;u=(d|0)>(u|0)?u:d;if((u|0)>0){t=(Zi(r+-1>>m,B)|0)+n|0;o=Xi[(Xi[e+3516>>2]|0)+16>>2]|0;n=0;s=0;do{n=(Wi[o+((t+s|0)*12|0)+10>>0]|0)==0|n;s=s+2|0}while((s|0)<(u|0))}else n=0}o=a;s=o+64|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));o=q;s=o+65|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));S=w;F=h;p=k}m=(p|0)!=0;if(m){L=Wi[N+(R+~$)>>0]|0;Wi[G>>0]=L;Wi[q>>0]=L}P=(F|0)!=0;if(P){o=l;t=N+(R-$)|0;s=o+32|0;do{Wi[o>>0]=Wi[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(s|0))}L=(n|0)!=0;if(L){o=q+33|0;t=N+(32-$+R)|0;s=o+32|0;do{Wi[o>>0]=Wi[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(s|0));s=Zi(qi[N+(31-$+R+y)>>0]|0,16843009)|0;u=32-y|0;if((u|0)>0){t=y+33|0;o=0;do{y=q+(t+o)|0;Wi[y>>0]=s;Wi[y+1>>0]=s>>8;Wi[y+2>>0]=s>>16;Wi[y+3>>0]=s>>24;o=o+4|0}while((o|0)<(u|0))}}_=(S|0)!=0;if(_){t=R+-1|0;o=0;do{y=o;o=o+1|0;Wi[G+o>>0]=Wi[N+(t+(Zi(y,$)|0))>>0]|0}while((o|0)!=32)}E=(v|0)!=0;if(E){t=R+-1|0;if((D|0)>0){o=D+31|0;s=32;do{R=s;s=s+1|0;Wi[G+s>>0]=Wi[N+((Zi(R,$)|0)+t)>>0]|0}while((R|0)<(o|0))}o=Zi(qi[N+((Zi(D+31|0,$)|0)+t)>>0]|0,16843009)|0;s=32-D|0;if((s|0)>0){t=D+33|0;u=0;do{N=G+(t+u)|0;Wi[N>>0]=o;Wi[N+1>>0]=o>>8;Wi[N+2>>0]=o>>16;Wi[N+3>>0]=o>>24;u=u+4|0}while((u|0)<(s|0))}}if((Wi[O>>0]|0)==1?(C=v|S,I=(C|0)!=0,C=C|p,F|n|C|0):0){R=Xi[g>>2]|0;d=R-i>>U;N=Xi[A>>2]|0;c=N-r>>H;d=L?((64<<U)+i|0)<(R|0)?64:d:(M|0)<(R|0)?32:d;c=E?((64<<H)+r|0)<(N|0)?64:c:(T|0)<(N|0)?32:c;do{if(!C){e:do{if((d|0)>0){u=z+13340|0;s=Xi[u>>2]|0;h=(-1<<H)+r|0;t=Zi(h>>s,B)|0;w=(Xi[e+3516>>2]|0)+16|0;o=Xi[w>>2]|0;n=0;do{if(!(Wi[o+((((n<<U)+i>>s)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>0){if((i|0)>0)while(1){t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(h>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}while(1){t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(h>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=1)break;s=Xi[u>>2]|0;o=Xi[w>>2]|0;n=t}Wi[q>>0]=Wi[l>>0]|0}}}while(0);n=Wi[q>>0]|0;Wi[G>>0]=n}else{u=e+3516|0;b=z+13340|0;k=Xi[b>>2]|0;h=(-1<<U)+i>>k;n=E?D+32|0:32;while(1){C=n;n=n+-1|0;if((C|0)<=0){x=50;break}t=(n<<H)+r|0;C=(Zi(t>>k,B)|0)+h|0;s=Xi[u>>2]|0;o=Xi[s+16>>2]|0;if(!(Wi[o+(C*12|0)+10>>0]|0)){n=s;break}}if((x|0)==50){o=Xi[u>>2]|0;t=(n<<H)+r|0;n=o;o=Xi[o+16>>2]|0}w=n+16|0;if(!(Wi[o+(((Zi(t>>k,B)|0)+h|0)*12|0)+10>>0]|0)){n=Wi[q>>0]|0;break}u=(-1<<H)+r|0;if((d|0)>0){t=Zi(u>>k,B)|0;n=0;do{if(!(Wi[o+((((n<<U)+i>>k)+t|0)*12|0)+10>>0]|0))break;n=n+1|0}while((n|0)<(d|0));if((n|0)>-1){s=k;x=59}}else{s=k;n=0;x=59}e:do{if((x|0)==59)while(1){x=0;t=n+-1|0;if(Wi[o+((((t<<U)+i>>s)+(Zi(u>>s,B)|0)|0)*12|0)+10>>0]|0)Wi[q+n>>0]=Wi[q+(n+1)>>0]|0;if((n|0)<=0)break e;s=Xi[b>>2]|0;o=Xi[w>>2]|0;n=t;x=59}}while(0);n=Wi[q>>0]|0;Wi[G>>0]=n}}while(0);Wi[G>>0]=n;h=(c|0)>0;if(I&h){n=Zi(n&255,16843009)|0;t=(-1<<U)+i|0;o=z+13340|0;s=(Xi[e+3516>>2]|0)+16|0;u=0;do{I=Xi[o>>2]|0;I=(Zi((u<<H)+r>>I,B)|0)+(t>>I)|0;if(!(Wi[(Xi[s>>2]|0)+(I*12|0)+10>>0]|0))n=Zi(qi[G+((u|3)+1)>>0]|0,16843009)|0;else{I=G+(u|1)|0;Wi[I>>0]=n;Wi[I+1>>0]=n>>8;Wi[I+2>>0]=n>>16;Wi[I+3>>0]=n>>24}u=u+4|0}while((u|0)<(c|0))}if(!_){C=Zi(qi[G>>0]|0,16843009)|0;Wi[a>>0]=C;Wi[a+1>>0]=C>>8;Wi[a+2>>0]=C>>16;Wi[a+3>>0]=C>>24;I=G+5|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+9|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+13|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+17|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+21|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+25|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+29|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24}if(!E){C=Zi(qi[G+32>>0]|0,16843009)|0;I=G+33|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+37|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+41|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+45|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+49|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+53|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+57|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24;I=G+61|0;Wi[I>>0]=C;Wi[I+1>>0]=C>>8;Wi[I+2>>0]=C>>16;Wi[I+3>>0]=C>>24}b=(r|0)!=0;do{if((i|0)!=0&b){w=(-1<<U)+i|0;k=z+13340|0;o=Xi[k>>2]|0;t=w>>o;if(h){s=Zi(qi[G+c>>0]|0,16843009)|0;n=Xi[e+3516>>2]|0;h=n+16|0;u=c+-1|0;do{I=(Zi((u+-3<<H)+r>>o,B)|0)+t|0;t=G+(u+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(I*12|0)+10>>0]|0))s=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=s;Wi[t+1>>0]=s>>8;Wi[t+2>>0]=s>>16;Wi[t+3>>0]=s>>24;o=Xi[k>>2]|0}u=u+-4|0;t=w>>o}while((u|0)>-1)}else n=Xi[e+3516>>2]|0;I=(Zi((-1<<H)+r>>o,B)|0)+t|0;if(Wi[(Xi[n+16>>2]|0)+(I*12|0)+10>>0]|0)Wi[G>>0]=Wi[a>>0]|0}else{if(!i){if(!h)break;jT(a|0,0,c+3&-4|0)|0;break}if(h){n=Zi(qi[G+c>>0]|0,16843009)|0;s=(-1<<U)+i|0;u=z+13340|0;h=(Xi[e+3516>>2]|0)+16|0;o=c+-1|0;do{I=Xi[u>>2]|0;I=(Zi((o+-3<<H)+r>>I,B)|0)+(s>>I)|0;t=G+(o+-2)|0;if(!(Wi[(Xi[h>>2]|0)+(I*12|0)+10>>0]|0))n=Zi(qi[t>>0]|0,16843009)|0;else{Wi[t>>0]=n;Wi[t+1>>0]=n>>8;Wi[t+2>>0]=n>>16;Wi[t+3>>0]=n>>24}o=o+-4|0}while((o|0)>-1)}}}while(0);n=Wi[G>>0]|0;Wi[q>>0]=n;if(b&(d|0)>0){n=Zi(n&255,16843009)|0;u=z+13340|0;t=(-1<<H)+r|0;o=(Xi[e+3516>>2]|0)+16|0;s=0;do{r=Xi[u>>2]|0;r=(Zi(t>>r,B)|0)+((s<<U)+i>>r)|0;if(!(Wi[(Xi[o>>2]|0)+(r*12|0)+10>>0]|0))n=Zi(qi[q+((s|3)+1)>>0]|0,16843009)|0;else{r=q+(s|1)|0;Wi[r>>0]=n;Wi[r+1>>0]=n>>8;Wi[r+2>>0]=n>>16;Wi[r+3>>0]=n>>24}s=s+4|0}while((s|0)<(d|0))}}e:do{if(E)if(!S)x=127;else x=128;else{if(_){i=Zi(qi[G+32>>0]|0,16843009)|0;x=G+33|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+37|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+41|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+45|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+49|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+53|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+57|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=G+61|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=128;break}if(m){n=Zi(qi[G>>0]|0,16843009)|0;t=0;while(1){x=G+(t|1)|0;Wi[x>>0]=n;Wi[x+1>>0]=n>>8;Wi[x+2>>0]=n>>16;Wi[x+3>>0]=n>>24;t=t+4|0;if((t|0)>=64){x=128;break e}}}if(P){n=Wi[l>>0]|0;Wi[G>>0]=n;n=Zi(n&255,16843009)|0;t=0;while(1){x=G+(t|1)|0;Wi[x>>0]=n;Wi[x+1>>0]=n>>8;Wi[x+2>>0]=n>>16;Wi[x+3>>0]=n>>24;t=t+4|0;if((t|0)>=64){x=130;break e}}}if(!L){Wi[G>>0]=-128;o=l;s=o+64|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));o=a;s=o+64|0;do{Wi[o>>0]=128;o=o+1|0}while((o|0)<(s|0));x=127;break}t=Wi[q+33>>0]|0;n=Zi(t&255,16843009)|0;Wi[l>>0]=n;Wi[l+1>>0]=n>>8;Wi[l+2>>0]=n>>16;Wi[l+3>>0]=n>>24;i=q+5|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+9|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+13|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+17|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+21|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+25|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;i=q+29|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;Wi[G>>0]=t;t=0;do{i=G+(t|1)|0;Wi[i>>0]=n;Wi[i+1>>0]=n>>8;Wi[i+2>>0]=n>>16;Wi[i+3>>0]=n>>24;t=t+4|0}while((t|0)<64)}}while(0);if((x|0)==127){U=Zi(qi[G+33>>0]|0,16843009)|0;Wi[a>>0]=U;Wi[a+1>>0]=U>>8;Wi[a+2>>0]=U>>16;Wi[a+3>>0]=U>>24;i=G+5|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+9|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+13|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+17|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+21|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+25|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;i=G+29|0;Wi[i>>0]=U;Wi[i+1>>0]=U>>8;Wi[i+2>>0]=U>>16;Wi[i+3>>0]=U>>24;x=128}if((x|0)==128)if(!p){Wi[G>>0]=Wi[a>>0]|0;x=130}else x=130;if((x|0)==130?(F|0)==0:0){i=Zi(qi[G>>0]|0,16843009)|0;Wi[l>>0]=i;Wi[l+1>>0]=i>>8;Wi[l+2>>0]=i>>16;Wi[l+3>>0]=i>>24;x=q+5|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+9|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+13|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+17|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+21|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+25|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+29|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24}if(!L){i=Zi(qi[q+32>>0]|0,16843009)|0;x=q+33|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+37|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+41|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+45|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+49|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+53|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+57|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24;x=q+61|0;Wi[x>>0]=i;Wi[x+1>>0]=i>>8;Wi[x+2>>0]=i>>16;Wi[x+3>>0]=i>>24}h=Wi[G>>0]|0;Wi[q>>0]=h;e:do{if(!(Xi[z+13368>>2]|0)){if(!V?(Xi[z+4>>2]|0)!=3:0){x=151;break}if((Q|0)!=1){x=Q+-26|0;x=(x|0)>-1?x:26-Q|0;i=Q+-10|0;i=(i|0)>-1?i:10-Q|0;if((((x|0)>(i|0)?i:x)|0)>0){if(V&(Wi[z+13317>>0]|0)!=0){t=h&255;n=Wi[q+64>>0]|0;o=n&255;V=o+t-(qi[q+32>>0]<<1)|0;if((((V|0)>-1?V:0-V|0)|0)<8?(K=G+64|0,Y=Wi[K>>0]|0,j=Y&255,V=j+t-(qi[G+32>>0]<<1)|0,(((V|0)>-1?V:0-V|0)|0)<8):0){Wi[J>>0]=h;Wi[J+64>>0]=n;l=0;do{q=l;l=l+1|0;Wi[J+l>>0]=((Zi(63-q|0,t)|0)+32+(Zi(l,o)|0)|0)>>>6}while((l|0)!=63);Wi[a>>0]=((t*63|0)+32+j|0)>>>6;Wi[G+2>>0]=(((h&255)*62|0)+32+((Y&255)<<1)|0)>>>6;l=2;while(1){J=l;l=l+1|0;Wi[G+l>>0]=((Zi(63-J|0,qi[G>>0]|0)|0)+32+(Zi(l,qi[K>>0]|0)|0)|0)>>>6;if((l|0)==63){l=Z;x=151;break e}}}}else n=Wi[q+64>>0]|0;t=Wi[G+64>>0]|0;Wi[W+64>>0]=t;Wi[J+64>>0]=n;o=Wi[G+63>>0]|0;u=62;while(1){s=Wi[G+u>>0]|0;Wi[W+(u+1)>>0]=((t&255)+2+((o&255)<<1)+(s&255)|0)>>>2;if((u|0)>0){t=o;o=s;u=u+-1|0}else break}l=(((h&255)<<1)+2+(qi[a>>0]|0)+(qi[l>>0]|0)|0)>>>2&255;Wi[W>>0]=l;Wi[J>>0]=l;l=n;a=Wi[q+63>>0]|0;t=62;while(1){n=Wi[q+t>>0]|0;Wi[J+(t+1)>>0]=((l&255)+2+((a&255)<<1)+(n&255)|0)>>>2;if((t|0)>0){l=a;a=n;t=t+-1|0}else{a=X;l=Z;x=151;break}}}else x=151}else x=153}else x=151}while(0);e:do{if((x|0)==151)switch(Q|0){case 1:{x=153;break e}case 0:{nV[Xi[e+6148>>2]&255](ee,l,a,$);break e}default:{Xz[Xi[e+6168>>2]&127](ee,l,a,$,f,Q);break e}}}while(0);if((x|0)==153)Xz[Xi[e+6152>>2]&127](ee,l,a,$,5,f);Ue=ie;return}function uy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+4|0;a=r+4|0;u=0;do{n=r+u|0;t=3-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(qi[n>>0]|0,3-s|0)|0;h=s;s=s+1|0;k=Zi(qi[l>>0]|0,s)|0;w=Zi(qi[i+h>>0]|0,t)|0;Wi[e+(h+o)>>0]=(b+4+k+w+(Zi(qi[a>>0]|0,u)|0)|0)>>>3}while((s|0)!=4)}while((u|0)!=4);return}function hy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+8|0;a=r+8|0;u=0;do{n=r+u|0;t=7-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(qi[n>>0]|0,7-s|0)|0;h=s;s=s+1|0;k=Zi(qi[l>>0]|0,s)|0;w=Zi(qi[i+h>>0]|0,t)|0;Wi[e+(h+o)>>0]=(b+8+k+w+(Zi(qi[a>>0]|0,u)|0)|0)>>>4}while((s|0)!=8)}while((u|0)!=8);return}function wy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+16|0;a=r+16|0;u=0;do{n=r+u|0;t=15-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(qi[n>>0]|0,15-s|0)|0;h=s;s=s+1|0;k=Zi(qi[l>>0]|0,s)|0;w=Zi(qi[i+h>>0]|0,t)|0;Wi[e+(h+o)>>0]=(b+16+k+w+(Zi(qi[a>>0]|0,u)|0)|0)>>>5}while((s|0)!=16)}while((u|0)!=16);return}function ky(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;l=i+32|0;a=r+32|0;u=0;do{n=r+u|0;t=31-u|0;o=Zi(u,f)|0;u=u+1|0;s=0;do{b=Zi(qi[n>>0]|0,31-s|0)|0;h=s;s=s+1|0;k=Zi(qi[l>>0]|0,s)|0;w=Zi(qi[i+h>>0]|0,t)|0;Wi[e+(h+o)>>0]=(b+32+k+w+(Zi(qi[a>>0]|0,u)|0)|0)>>>6}while((s|0)!=32)}while((u|0)!=32);return}function by(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=1<<l;o=(l|0)==31;if(!o){n=h;t=0;do{n=(qi[r+t>>0]|0)+n+(qi[i+t>>0]|0)|0;t=t+1|0}while((t|0)<(h|0));l=n>>l+1;s=Zi(l,16843009)|0;if(!o){t=0;do{n=Zi(t,f)|0;o=0;do{w=e+(o+n)|0;Wi[w>>0]=s;Wi[w+1>>0]=s>>8;Wi[w+2>>0]=s>>16;Wi[w+3>>0]=s>>24;o=o+4|0}while((o|0)<(h|0));t=t+1|0}while((t|0)<(h|0))}}else l=h>>l+1;if((a|0)==0&(h|0)<32?(Wi[e>>0]=((l<<1)+2+(qi[r>>0]|0)+(qi[i>>0]|0)|0)>>>2,u=(h|0)>1,u):0){n=(l*3|0)+2|0;t=1;do{Wi[e+t>>0]=(n+(qi[i+t>>0]|0)|0)>>>2;t=t+1|0}while((t|0)!=(h|0));if(u){n=(l*3|0)+2|0;t=1;do{Wi[e+(Zi(t,f)|0)>>0]=(n+(qi[r+t>>0]|0)|0)>>>2;t=t+1|0}while((t|0)!=(h|0))}}return}function cy(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=Ue;Ue=Ue+112|0;u=d;c=Xi[88888+(a+-2<<2)>>2]|0;s=u+4|0;n=c>>3;if((a|0)>17){t=i+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){k=t;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=s;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[u+(n+4)>>0]=Wi[r+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else{o=s;break}}}else o=s}else o=t;s=0;do{u=s;s=s+1|0;n=Zi(s,c)|0;t=n>>5;n=n&31;if(!n){b=Zi(u,f)|0;k=o+(t+1)|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=e+b|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24}else{k=32-n|0;b=Zi(u,f)|0;w=Zi(qi[o+(t+1)>>0]|0,k)|0;Wi[e+b>>0]=(w+16+(Zi(qi[o+(t+2)>>0]|0,n)|0)|0)>>>5;w=Zi(qi[o+(t+2)>>0]|0,k)|0;Wi[e+(b+1)>>0]=(w+16+(Zi(qi[o+(t+3)>>0]|0,n)|0)|0)>>>5;w=Zi(qi[o+(t+3)>>0]|0,k)|0;Wi[e+(b+2)>>0]=(w+16+(Zi(qi[o+(t+4)>>0]|0,n)|0)|0)>>>5;k=Zi(qi[o+(t+4)>>0]|0,k)|0;Wi[e+(b+3)>>0]=(k+16+(Zi(qi[o+(t+5)>>0]|0,n)|0)|0)>>>5}}while((s|0)!=4);if((l|0)==0&(a|0)==26){n=r+-1|0;t=0;do{a=((qi[r+t>>0]|0)-(qi[n>>0]|0)>>1)+(qi[i>>0]|0)|0;Wi[e+(Zi(t,f)|0)>>0]=a>>>0>255?0-a>>31:a;t=t+1|0}while((t|0)!=4)}}else{t=r+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){k=t;h=k;h=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;k=k+4|0;k=qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24;b=s;w=b;Wi[w>>0]=h;Wi[w+1>>0]=h>>8;Wi[w+2>>0]=h>>16;Wi[w+3>>0]=h>>24;b=b+4|0;Wi[b>>0]=k;Wi[b+1>>0]=k>>8;Wi[b+2>>0]=k>>16;Wi[b+3>>0]=k>>24;if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[u+(n+4)>>0]=Wi[i+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else{t=s;break}}}else t=s}n=f<<1;o=f*3|0;w=0;do{k=w;w=w+1|0;u=Zi(w,c)|0;s=u>>5;u=u&31;if(!u){Wi[e+k>>0]=Wi[t+(s+1)>>0]|0;Wi[e+(k+f)>>0]=Wi[t+(s+2)>>0]|0;Wi[e+(n+k)>>0]=Wi[t+(s+3)>>0]|0;Wi[e+(o+k)>>0]=Wi[t+(s+4)>>0]|0}else{h=32-u|0;b=0;do{v=b+s|0;E=Zi(qi[t+(v+1)>>0]|0,h)|0;Wi[e+((Zi(b,f)|0)+k)>>0]=(E+16+(Zi(qi[t+(v+2)>>0]|0,u)|0)|0)>>>5;b=b+1|0}while((b|0)!=4)}}while((w|0)!=4);if((l|0)==0&(a|0)==10){E=i+-1|0;v=((qi[i>>0]|0)-(qi[E>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e>>0]=v>>>0>255?0-v>>31:v;v=((qi[i+1>>0]|0)-(qi[E>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+1>>0]=v>>>0>255?0-v>>31:v;v=((qi[i+2>>0]|0)-(qi[E>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+2>>0]=v>>>0>255?0-v>>31:v;E=((qi[i+3>>0]|0)-(qi[E>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+3>>0]=E>>>0>255?0-E>>31:E}}Ue=d;return}function dy(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+112|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+8|0;n=k>>2;if((a|0)>17){t=i+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+12|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[w+(n+8)>>0]=Wi[r+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;o=t+(s+1)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+h|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+5)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+4)|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(qi[t+(c+1)>>0]|0,h)|0;Wi[e+(o+n)>>0]=(d+16+(Zi(qi[t+(c+2)>>0]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<8)}}while((w|0)!=8);if((l|0)==0&(a|0)==26){n=r+-1|0;t=0;do{v=((qi[r+t>>0]|0)-(qi[n>>0]|0)>>1)+(qi[i>>0]|0)|0;Wi[e+(Zi(t,f)|0)>>0]=v>>>0>255?0-v>>31:v;t=t+1|0}while((t|0)!=8)}}else{t=r+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+12|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[w+(n+8)>>0]=Wi[i+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Wi[e+((Zi(t,f)|0)+w)>>0]=Wi[u+(n+t)>>0]|0;t=t+1|0}while((t|0)!=8)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(qi[u+(v+1)>>0]|0,o)|0;Wi[e+((Zi(s,f)|0)+w)>>0]=(d+16+(Zi(qi[u+(v+2)>>0]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=8)}}while((h|0)!=8);if((l|0)==0&(a|0)==10){n=i+-1|0;t=0;do{v=((qi[i+t>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+t>>0]=v>>>0>255?0-v>>31:v;v=t|1;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;v=t|2;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;v=t|3;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;t=t+4|0}while((t|0)<8)}}Ue=b;return}function vy(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=Ue;Ue=Ue+112|0;w=b;k=Xi[88888+(a+-2<<2)>>2]|0;u=w+16|0;n=k>>1;if((a|0)>17){t=i+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+20|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[w+(n+16)>>0]=Wi[r+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else{t=u;break}}}else t=u}w=0;do{n=w;w=w+1|0;u=Zi(w,k)|0;s=u>>5;u=u&31;if(!u){h=Zi(n,f)|0;o=t+(s+1)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+h|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+5)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;o=e+(h+4)|0;Wi[o>>0]=u;Wi[o+1>>0]=u>>8;Wi[o+2>>0]=u>>16;Wi[o+3>>0]=u>>24;o=t+(s+9)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;u=e+(h+8)|0;Wi[u>>0]=o;Wi[u+1>>0]=o>>8;Wi[u+2>>0]=o>>16;Wi[u+3>>0]=o>>24;u=t+(s+13)|0;u=qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24;h=e+(h+12)|0;Wi[h>>0]=u;Wi[h+1>>0]=u>>8;Wi[h+2>>0]=u>>16;Wi[h+3>>0]=u>>24}else{h=32-u|0;n=Zi(n,f)|0;o=0;do{c=o+s|0;d=Zi(qi[t+(c+1)>>0]|0,h)|0;Wi[e+(o+n)>>0]=(d+16+(Zi(qi[t+(c+2)>>0]|0,u)|0)|0)>>>5;c=o|1;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;c=o|2;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;c=o|3;d=c+s|0;v=Zi(qi[t+(d+1)>>0]|0,h)|0;Wi[e+(c+n)>>0]=(v+16+(Zi(qi[t+(d+2)>>0]|0,u)|0)|0)>>>5;o=o+4|0}while((o|0)<16)}}while((w|0)!=16);if((l|0)==0&(a|0)==26){n=r+-1|0;t=0;do{v=((qi[r+t>>0]|0)-(qi[n>>0]|0)>>1)+(qi[i>>0]|0)|0;Wi[e+(Zi(t,f)|0)>>0]=v>>>0>255?0-v>>31:v;t=t+1|0}while((t|0)!=16)}}else{t=r+-1|0;o=a+-11|0;if(o>>>0<15&(n|0)<-1){h=u;s=h+20|0;do{Wi[h>>0]=Wi[t>>0]|0;h=h+1|0;t=t+1|0}while((h|0)<(s|0));if((n|0)<0){t=Xi[89020+(o<<2)>>2]|0;while(1){Wi[w+(n+16)>>0]=Wi[i+(((Zi(n,t)|0)+128>>8)+-1)>>0]|0;if((n|0)<-1)n=n+1|0;else break}}}else u=t;h=0;do{w=h;h=h+1|0;t=Zi(h,k)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;t=0;do{Wi[e+((Zi(t,f)|0)+w)>>0]=Wi[u+(n+t)>>0]|0;t=t+1|0}while((t|0)!=16)}else{o=32-t|0;s=0;do{v=s+n|0;d=Zi(qi[u+(v+1)>>0]|0,o)|0;Wi[e+((Zi(s,f)|0)+w)>>0]=(d+16+(Zi(qi[u+(v+2)>>0]|0,t)|0)|0)>>>5;s=s+1|0}while((s|0)!=16)}}while((h|0)!=16);if((l|0)==0&(a|0)==10){n=i+-1|0;t=0;do{v=((qi[i+t>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+t>>0]=v>>>0>255?0-v>>31:v;v=t|1;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;v=t|2;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;v=t|3;d=((qi[i+v>>0]|0)-(qi[n>>0]|0)>>1)+(qi[r>>0]|0)|0;Wi[e+v>>0]=d>>>0>255?0-d>>31:d;t=t+4|0}while((t|0)<16)}}Ue=b;return}function Ey(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;h=Ue;Ue=Ue+112|0;s=h;u=Xi[88888+(a+-2<<2)>>2]|0;o=s+32|0;if((a|0)>17){l=i+-1|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+36|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Wi[s+(a+32)>>0]=Wi[r+(((Zi(a,l)|0)+128>>8)+-1)>>0]|0;if((a|0)<-1)a=a+1|0;else{r=o;break}}}else r=l;i=0;do{l=i;i=i+1|0;t=Zi(i,u)|0;n=t>>5;t=t&31;if(!t){n=n+1|0;l=Zi(l,f)|0;a=0;do{o=r+(n+a)|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;s=e+(a+l)|0;Wi[s>>0]=o;Wi[s+1>>0]=o>>8;Wi[s+2>>0]=o>>16;Wi[s+3>>0]=o>>24;a=a+4|0}while((a|0)<32)}else{o=32-t|0;l=Zi(l,f)|0;a=0;do{s=a+n|0;w=Zi(qi[r+(s+1)>>0]|0,o)|0;Wi[e+(a+l)>>0]=(w+16+(Zi(qi[r+(s+2)>>0]|0,t)|0)|0)>>>5;s=a|1;w=s+n|0;k=Zi(qi[r+(w+1)>>0]|0,o)|0;Wi[e+(s+l)>>0]=(k+16+(Zi(qi[r+(w+2)>>0]|0,t)|0)|0)>>>5;s=a|2;w=s+n|0;k=Zi(qi[r+(w+1)>>0]|0,o)|0;Wi[e+(s+l)>>0]=(k+16+(Zi(qi[r+(w+2)>>0]|0,t)|0)|0)>>>5;s=a|3;w=s+n|0;k=Zi(qi[r+(w+1)>>0]|0,o)|0;Wi[e+(s+l)>>0]=(k+16+(Zi(qi[r+(w+2)>>0]|0,t)|0)|0)>>>5;a=a+4|0}while((a|0)<32)}}while((i|0)!=32)}else{l=r+-1|0;a=a+-11|0;if(a>>>0<15){t=o;n=t+36|0;do{Wi[t>>0]=Wi[l>>0]|0;t=t+1|0;l=l+1|0}while((t|0)<(n|0));l=Xi[89020+(a<<2)>>2]|0;a=u;while(1){Wi[s+(a+32)>>0]=Wi[i+(((Zi(a,l)|0)+128>>8)+-1)>>0]|0;if((a|0)<-1)a=a+1|0;else break}}else o=l;r=0;do{i=r;r=r+1|0;a=Zi(r,u)|0;l=a>>5;a=a&31;if(!a){l=l+1|0;a=0;do{Wi[e+((Zi(a,f)|0)+i)>>0]=Wi[o+(l+a)>>0]|0;a=a+1|0}while((a|0)!=32)}else{n=32-a|0;t=0;do{k=t+l|0;w=Zi(qi[o+(k+1)>>0]|0,n)|0;Wi[e+((Zi(t,f)|0)+i)>>0]=(w+16+(Zi(qi[o+(k+2)>>0]|0,a)|0)|0)>>>5;t=t+1|0}while((t|0)!=32)}}while((r|0)!=32)}Ue=h;return}function Sy(){var e=0,i=0;e=0;do{i=e+-256|0;Xi[156396+(e<<2)>>2]=Zi(i,i)|0;e=e+1|0}while((e|0)!=512);return}function _y(e,i){e=e|0;i=i|0;Xi[e>>2]=12;Xi[e+484>>2]=1;Xi[e+488>>2]=2;Xi[e+492>>2]=3;Xi[e+496>>2]=4;Xi[e+500>>2]=5;Xi[e+504>>2]=6;Xi[e+508>>2]=7;Xi[e+512>>2]=8;Xi[e+52>>2]=9;Xi[e+56>>2]=10;Xi[e+68>>2]=11;Xi[e+72>>2]=12;Xi[e+76>>2]=13;Xi[e+80>>2]=14;Xi[e+292>>2]=15;Xi[e+296>>2]=16;Xi[e+4>>2]=1;Xi[e+8>>2]=5;Xi[e+28>>2]=17;Xi[e+32>>2]=18;Xi[e+36>>2]=19;Xi[e+100>>2]=20;Xi[e+104>>2]=21;Xi[e+148>>2]=22;Xi[e+152>>2]=23;Xi[e+124>>2]=24;Xi[e+128>>2]=25;Xi[e+172>>2]=26;Xi[e+176>>2]=27;Xi[e+188>>2]=28;Xi[e+192>>2]=29;Xi[e+196>>2]=30;Xi[e+200>>2]=31;Xi[e+212>>2]=32;Xi[e+216>>2]=33;Xi[e+220>>2]=34;Xi[e+224>>2]=35;return}function my(e){e=e|0;var i=0,r=0,f=0,l=0;r=0;i=0;do{l=Gi[e+(r<<1)>>1]|0;f=l<<16>>16;i=(l<<16>>16>-1?f:0-f|0)+i|0;r=r+1|0}while((r|0)!=64);return i|0}function py(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;if((l|0)>0){a=r;e=0;r=0;while(1){m=(qi[i>>0]|0)-(qi[a>>0]|0)|0;_=(qi[i+1>>0]|0)-(qi[a+1>>0]|0)|0;S=(qi[i+2>>0]|0)-(qi[a+2>>0]|0)|0;E=(qi[i+3>>0]|0)-(qi[a+3>>0]|0)|0;v=(qi[i+4>>0]|0)-(qi[a+4>>0]|0)|0;d=(qi[i+5>>0]|0)-(qi[a+5>>0]|0)|0;c=(qi[i+6>>0]|0)-(qi[a+6>>0]|0)|0;b=(qi[i+7>>0]|0)-(qi[a+7>>0]|0)|0;k=(qi[i+8>>0]|0)-(qi[a+8>>0]|0)|0;w=(qi[i+9>>0]|0)-(qi[a+9>>0]|0)|0;h=(qi[i+10>>0]|0)-(qi[a+10>>0]|0)|0;u=(qi[i+11>>0]|0)-(qi[a+11>>0]|0)|0;s=(qi[i+12>>0]|0)-(qi[a+12>>0]|0)|0;o=(qi[i+13>>0]|0)-(qi[a+13>>0]|0)|0;t=(qi[i+14>>0]|0)-(qi[a+14>>0]|0)|0;n=(qi[i+15>>0]|0)-(qi[a+15>>0]|0)|0;r=((m|0)>-1?m:0-m|0)+r+((_|0)>-1?_:0-_|0)+((S|0)>-1?S:0-S|0)+((E|0)>-1?E:0-E|0)+((v|0)>-1?v:0-v|0)+((d|0)>-1?d:0-d|0)+((c|0)>-1?c:0-c|0)+((b|0)>-1?b:0-b|0)+((k|0)>-1?k:0-k|0)+((w|0)>-1?w:0-w|0)+((h|0)>-1?h:0-h|0)+((u|0)>-1?u:0-u|0)+((s|0)>-1?s:0-s|0)+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function Fy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;if((l|0)>0){a=r;e=0;r=0;while(1){_=qi[a+1>>0]|0;m=(qi[i>>0]|0)-(((qi[a>>0]|0)+1+_|0)>>>1)|0;S=qi[a+2>>0]|0;_=(qi[i+1>>0]|0)-((_+1+S|0)>>>1)|0;E=qi[a+3>>0]|0;S=(qi[i+2>>0]|0)-((S+1+E|0)>>>1)|0;v=qi[a+4>>0]|0;E=(qi[i+3>>0]|0)-((E+1+v|0)>>>1)|0;d=qi[a+5>>0]|0;v=(qi[i+4>>0]|0)-((v+1+d|0)>>>1)|0;c=qi[a+6>>0]|0;d=(qi[i+5>>0]|0)-((d+1+c|0)>>>1)|0;b=qi[a+7>>0]|0;c=(qi[i+6>>0]|0)-((c+1+b|0)>>>1)|0;k=qi[a+8>>0]|0;b=(qi[i+7>>0]|0)-((b+1+k|0)>>>1)|0;w=qi[a+9>>0]|0;k=(qi[i+8>>0]|0)-((k+1+w|0)>>>1)|0;h=qi[a+10>>0]|0;w=(qi[i+9>>0]|0)-((w+1+h|0)>>>1)|0;u=qi[a+11>>0]|0;h=(qi[i+10>>0]|0)-((h+1+u|0)>>>1)|0;s=qi[a+12>>0]|0;u=(qi[i+11>>0]|0)-((u+1+s|0)>>>1)|0;o=qi[a+13>>0]|0;s=(qi[i+12>>0]|0)-((s+1+o|0)>>>1)|0;t=qi[a+14>>0]|0;o=(qi[i+13>>0]|0)-((o+1+t|0)>>>1)|0;n=qi[a+15>>0]|0;t=(qi[i+14>>0]|0)-((t+1+n|0)>>>1)|0;n=(qi[i+15>>0]|0)-((n+1+(qi[a+16>>0]|0)|0)>>>1)|0;r=((m|0)>-1?m:0-m|0)+r+((_|0)>-1?_:0-_|0)+((S|0)>-1?S:0-S|0)+((E|0)>-1?E:0-E|0)+((v|0)>-1?v:0-v|0)+((d|0)>-1?d:0-d|0)+((c|0)>-1?c:0-c|0)+((b|0)>-1?b:0-b|0)+((k|0)>-1?k:0-k|0)+((w|0)>-1?w:0-w|0)+((h|0)>-1?h:0-h|0)+((u|0)>-1?u:0-u|0)+((s|0)>-1?s:0-s|0)+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function yy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;if((l|0)>0){n=f+1|0;v=f+2|0;_=f+3|0;t=f+4|0;o=f+5|0;s=f+6|0;u=f+7|0;h=f+8|0;w=f+9|0;k=f+10|0;b=f+11|0;c=f+12|0;d=f+13|0;E=f+14|0;S=f+15|0;a=0;e=0;while(1){m=r;r=r+f|0;I=(qi[i>>0]|0)-(((qi[m>>0]|0)+1+(qi[r>>0]|0)|0)>>>1)|0;L=(qi[i+1>>0]|0)-(((qi[m+1>>0]|0)+1+(qi[m+n>>0]|0)|0)>>>1)|0;P=(qi[i+2>>0]|0)-(((qi[m+2>>0]|0)+1+(qi[m+v>>0]|0)|0)>>>1)|0;C=(qi[i+3>>0]|0)-(((qi[m+3>>0]|0)+1+(qi[m+_>>0]|0)|0)>>>1)|0;D=(qi[i+4>>0]|0)-(((qi[m+4>>0]|0)+1+(qi[m+t>>0]|0)|0)>>>1)|0;N=(qi[i+5>>0]|0)-(((qi[m+5>>0]|0)+1+(qi[m+o>>0]|0)|0)>>>1)|0;T=(qi[i+6>>0]|0)-(((qi[m+6>>0]|0)+1+(qi[m+s>>0]|0)|0)>>>1)|0;R=(qi[i+7>>0]|0)-(((qi[m+7>>0]|0)+1+(qi[m+u>>0]|0)|0)>>>1)|0;M=(qi[i+8>>0]|0)-(((qi[m+8>>0]|0)+1+(qi[m+h>>0]|0)|0)>>>1)|0;g=(qi[i+9>>0]|0)-(((qi[m+9>>0]|0)+1+(qi[m+w>>0]|0)|0)>>>1)|0;A=(qi[i+10>>0]|0)-(((qi[m+10>>0]|0)+1+(qi[m+k>>0]|0)|0)>>>1)|0;O=(qi[i+11>>0]|0)-(((qi[m+11>>0]|0)+1+(qi[m+b>>0]|0)|0)>>>1)|0;y=(qi[i+12>>0]|0)-(((qi[m+12>>0]|0)+1+(qi[m+c>>0]|0)|0)>>>1)|0;F=(qi[i+13>>0]|0)-(((qi[m+13>>0]|0)+1+(qi[m+d>>0]|0)|0)>>>1)|0;p=(qi[i+14>>0]|0)-(((qi[m+14>>0]|0)+1+(qi[m+E>>0]|0)|0)>>>1)|0;m=(qi[i+15>>0]|0)-(((qi[m+15>>0]|0)+1+(qi[m+S>>0]|0)|0)>>>1)|0;e=((I|0)>-1?I:0-I|0)+e+((L|0)>-1?L:0-L|0)+((P|0)>-1?P:0-P|0)+((C|0)>-1?C:0-C|0)+((D|0)>-1?D:0-D|0)+((N|0)>-1?N:0-N|0)+((T|0)>-1?T:0-T|0)+((R|0)>-1?R:0-R|0)+((M|0)>-1?M:0-M|0)+((g|0)>-1?g:0-g|0)+((A|0)>-1?A:0-A|0)+((O|0)>-1?O:0-O|0)+((y|0)>-1?y:0-y|0)+((F|0)>-1?F:0-F|0)+((p|0)>-1?p:0-p|0)+((m|0)>-1?m:0-m|0)|0;a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Oy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0;if((l|0)>0){n=f+1|0;u=f+2|0;_=f+3|0;m=f+4|0;t=f+5|0;o=f+6|0;s=f+7|0;h=f+8|0;w=f+9|0;k=f+10|0;b=f+11|0;c=f+12|0;d=f+13|0;v=f+14|0;E=f+15|0;S=f+16|0;a=0;e=0;while(1){p=r;r=r+f|0;U=qi[p+1>>0]|0;I=qi[p+n>>0]|0;H=(qi[i>>0]|0)-(((qi[p>>0]|0)+2+U+(qi[r>>0]|0)+I|0)>>>2)|0;x=qi[p+2>>0]|0;L=qi[p+u>>0]|0;I=(qi[i+1>>0]|0)-((U+2+I+x+L|0)>>>2)|0;U=qi[p+3>>0]|0;P=qi[p+_>>0]|0;L=(qi[i+2>>0]|0)-((x+2+L+U+P|0)>>>2)|0;x=qi[p+4>>0]|0;C=qi[p+m>>0]|0;P=(qi[i+3>>0]|0)-((U+2+P+x+C|0)>>>2)|0;U=qi[p+5>>0]|0;D=qi[p+t>>0]|0;C=(qi[i+4>>0]|0)-((x+2+C+U+D|0)>>>2)|0;x=qi[p+6>>0]|0;N=qi[p+o>>0]|0;D=(qi[i+5>>0]|0)-((U+2+D+x+N|0)>>>2)|0;U=qi[p+7>>0]|0;T=qi[p+s>>0]|0;N=(qi[i+6>>0]|0)-((x+2+N+U+T|0)>>>2)|0;x=qi[p+8>>0]|0;R=qi[p+h>>0]|0;T=(qi[i+7>>0]|0)-((U+2+T+x+R|0)>>>2)|0;U=qi[p+9>>0]|0;M=qi[p+w>>0]|0;R=(qi[i+8>>0]|0)-((x+2+R+U+M|0)>>>2)|0;x=qi[p+10>>0]|0;g=qi[p+k>>0]|0;M=(qi[i+9>>0]|0)-((U+2+M+x+g|0)>>>2)|0;U=qi[p+11>>0]|0;A=qi[p+b>>0]|0;g=(qi[i+10>>0]|0)-((x+2+g+U+A|0)>>>2)|0;x=qi[p+12>>0]|0;O=qi[p+c>>0]|0;A=(qi[i+11>>0]|0)-((U+2+A+x+O|0)>>>2)|0;U=qi[p+13>>0]|0;y=qi[p+d>>0]|0;O=(qi[i+12>>0]|0)-((x+2+O+U+y|0)>>>2)|0;x=qi[p+14>>0]|0;F=qi[p+v>>0]|0;y=(qi[i+13>>0]|0)-((U+2+y+x+F|0)>>>2)|0;U=qi[p+15>>0]|0;B=qi[p+E>>0]|0;F=(qi[i+14>>0]|0)-((x+2+F+U+B|0)>>>2)|0;p=(qi[i+15>>0]|0)-((U+2+B+(qi[p+16>>0]|0)+(qi[p+S>>0]|0)|0)>>>2)|0;e=((H|0)>-1?H:0-H|0)+e+((I|0)>-1?I:0-I|0)+((L|0)>-1?L:0-L|0)+((P|0)>-1?P:0-P|0)+((C|0)>-1?C:0-C|0)+((D|0)>-1?D:0-D|0)+((N|0)>-1?N:0-N|0)+((T|0)>-1?T:0-T|0)+((R|0)>-1?R:0-R|0)+((M|0)>-1?M:0-M|0)+((g|0)>-1?g:0-g|0)+((A|0)>-1?A:0-A|0)+((O|0)>-1?O:0-O|0)+((y|0)>-1?y:0-y|0)+((F|0)>-1?F:0-F|0)+((p|0)>-1?p:0-p|0)|0;a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Ay(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;if((l|0)>0){a=r;e=0;r=0;while(1){k=(qi[i>>0]|0)-(qi[a>>0]|0)|0;w=(qi[i+1>>0]|0)-(qi[a+1>>0]|0)|0;h=(qi[i+2>>0]|0)-(qi[a+2>>0]|0)|0;u=(qi[i+3>>0]|0)-(qi[a+3>>0]|0)|0;s=(qi[i+4>>0]|0)-(qi[a+4>>0]|0)|0;o=(qi[i+5>>0]|0)-(qi[a+5>>0]|0)|0;t=(qi[i+6>>0]|0)-(qi[a+6>>0]|0)|0;n=(qi[i+7>>0]|0)-(qi[a+7>>0]|0)|0;r=((k|0)>-1?k:0-k|0)+r+((w|0)>-1?w:0-w|0)+((h|0)>-1?h:0-h|0)+((u|0)>-1?u:0-u|0)+((s|0)>-1?s:0-s|0)+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function gy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;if((l|0)>0){a=r;e=0;r=0;while(1){w=qi[a+1>>0]|0;k=(qi[i>>0]|0)-(((qi[a>>0]|0)+1+w|0)>>>1)|0;h=qi[a+2>>0]|0;w=(qi[i+1>>0]|0)-((w+1+h|0)>>>1)|0;u=qi[a+3>>0]|0;h=(qi[i+2>>0]|0)-((h+1+u|0)>>>1)|0;s=qi[a+4>>0]|0;u=(qi[i+3>>0]|0)-((u+1+s|0)>>>1)|0;o=qi[a+5>>0]|0;s=(qi[i+4>>0]|0)-((s+1+o|0)>>>1)|0;t=qi[a+6>>0]|0;o=(qi[i+5>>0]|0)-((o+1+t|0)>>>1)|0;n=qi[a+7>>0]|0;t=(qi[i+6>>0]|0)-((t+1+n|0)>>>1)|0;n=(qi[i+7>>0]|0)-((n+1+(qi[a+8>>0]|0)|0)>>>1)|0;r=((k|0)>-1?k:0-k|0)+r+((w|0)>-1?w:0-w|0)+((h|0)>-1?h:0-h|0)+((u|0)>-1?u:0-u|0)+((s|0)>-1?s:0-s|0)+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function My(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;if((l|0)>0){n=f+1|0;h=f+2|0;w=f+3|0;t=f+4|0;o=f+5|0;s=f+6|0;u=f+7|0;a=0;e=0;while(1){k=r;r=r+f|0;_=(qi[i>>0]|0)-(((qi[k>>0]|0)+1+(qi[r>>0]|0)|0)>>>1)|0;S=(qi[i+1>>0]|0)-(((qi[k+1>>0]|0)+1+(qi[k+n>>0]|0)|0)>>>1)|0;E=(qi[i+2>>0]|0)-(((qi[k+2>>0]|0)+1+(qi[k+h>>0]|0)|0)>>>1)|0;v=(qi[i+3>>0]|0)-(((qi[k+3>>0]|0)+1+(qi[k+w>>0]|0)|0)>>>1)|0;d=(qi[i+4>>0]|0)-(((qi[k+4>>0]|0)+1+(qi[k+t>>0]|0)|0)>>>1)|0;c=(qi[i+5>>0]|0)-(((qi[k+5>>0]|0)+1+(qi[k+o>>0]|0)|0)>>>1)|0;b=(qi[i+6>>0]|0)-(((qi[k+6>>0]|0)+1+(qi[k+s>>0]|0)|0)>>>1)|0;k=(qi[i+7>>0]|0)-(((qi[k+7>>0]|0)+1+(qi[k+u>>0]|0)|0)>>>1)|0;e=((_|0)>-1?_:0-_|0)+e+((S|0)>-1?S:0-S|0)+((E|0)>-1?E:0-E|0)+((v|0)>-1?v:0-v|0)+((d|0)>-1?d:0-d|0)+((c|0)>-1?c:0-c|0)+((b|0)>-1?b:0-b|0)+((k|0)>-1?k:0-k|0)|0;a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Ry(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;if((l|0)>0){n=f+1|0;u=f+2|0;w=f+3|0;k=f+4|0;t=f+5|0;o=f+6|0;s=f+7|0;h=f+8|0;a=0;e=0;while(1){b=r;r=r+f|0;F=qi[b+1>>0]|0;_=qi[b+n>>0]|0;m=(qi[i>>0]|0)-(((qi[b>>0]|0)+2+F+(qi[r>>0]|0)+_|0)>>>2)|0;y=qi[b+2>>0]|0;S=qi[b+u>>0]|0;_=(qi[i+1>>0]|0)-((F+2+_+y+S|0)>>>2)|0;F=qi[b+3>>0]|0;E=qi[b+w>>0]|0;S=(qi[i+2>>0]|0)-((y+2+S+F+E|0)>>>2)|0;y=qi[b+4>>0]|0;v=qi[b+k>>0]|0;E=(qi[i+3>>0]|0)-((F+2+E+y+v|0)>>>2)|0;F=qi[b+5>>0]|0;d=qi[b+t>>0]|0;v=(qi[i+4>>0]|0)-((y+2+v+F+d|0)>>>2)|0;y=qi[b+6>>0]|0;c=qi[b+o>>0]|0;d=(qi[i+5>>0]|0)-((F+2+d+y+c|0)>>>2)|0;F=qi[b+7>>0]|0;p=qi[b+s>>0]|0;c=(qi[i+6>>0]|0)-((y+2+c+F+p|0)>>>2)|0;b=(qi[i+7>>0]|0)-((F+2+p+(qi[b+8>>0]|0)+(qi[b+h>>0]|0)|0)>>>2)|0;e=((m|0)>-1?m:0-m|0)+e+((_|0)>-1?_:0-_|0)+((S|0)>-1?S:0-S|0)+((E|0)>-1?E:0-E|0)+((v|0)>-1?v:0-v|0)+((d|0)>-1?d:0-d|0)+((c|0)>-1?c:0-c|0)+((b|0)>-1?b:0-b|0)|0;a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Ty(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Ny(e,i,r,f,8)|0;a=(Ny(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(Ny(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(Ny(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function Ny(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;n=Ue;Ue=Ue+256|0;a=n;l=0;do{t=Zi(l,f)|0;k=t+1|0;c=qi[r+k>>0]|0;k=qi[i+k>>0]|0;o=(qi[r+t>>0]|0)-(qi[i+t>>0]|0)|0;w=o+c-k|0;e=l<<3;k=o-c+k|0;c=t+2|0;o=t+3|0;b=qi[r+o>>0]|0;o=qi[i+o>>0]|0;c=(qi[r+c>>0]|0)-(qi[i+c>>0]|0)|0;u=c+b-o|0;o=c-b+o|0;b=t+4|0;c=t+5|0;d=qi[r+c>>0]|0;c=qi[i+c>>0]|0;b=(qi[r+b>>0]|0)-(qi[i+b>>0]|0)|0;h=b+d-c|0;c=b-d+c|0;d=t+6|0;t=t+7|0;b=qi[r+t>>0]|0;t=qi[i+t>>0]|0;d=(qi[r+d>>0]|0)-(qi[i+d>>0]|0)|0;s=d+b-t|0;t=d-b+t|0;b=u+w|0;u=w-u|0;w=o+k|0;o=k-o|0;k=s+h|0;s=h-s|0;h=t+c|0;t=c-t|0;Xi[a+(e<<2)>>2]=k+b;Xi[a+((e|4)<<2)>>2]=b-k;Xi[a+((e|1)<<2)>>2]=h+w;Xi[a+((e|5)<<2)>>2]=w-h;Xi[a+((e|2)<<2)>>2]=s+u;Xi[a+((e|6)<<2)>>2]=u-s;Xi[a+((e|3)<<2)>>2]=t+o;Xi[a+((e|7)<<2)>>2]=o-t;l=l+1|0}while((l|0)!=8);e=0;l=0;do{_=a+(e<<2)|0;b=Xi[_>>2]|0;E=a+(e+8<<2)|0;v=Xi[E>>2]|0;S=v+b|0;v=b-v|0;b=a+(e+16<<2)|0;i=Xi[b>>2]|0;s=a+(e+24<<2)|0;o=Xi[s>>2]|0;d=o+i|0;o=i-o|0;i=a+(e+32<<2)|0;h=Xi[i>>2]|0;f=a+(e+40<<2)|0;t=Xi[f>>2]|0;r=t+h|0;t=h-t|0;h=a+(e+48<<2)|0;w=Xi[h>>2]|0;u=a+(e+56<<2)|0;c=Xi[u>>2]|0;k=c+w|0;c=w-c|0;w=d+S|0;Xi[_>>2]=w;d=S-d|0;Xi[b>>2]=d;b=o+v|0;Xi[E>>2]=b;o=v-o|0;Xi[s>>2]=o;s=k+r|0;Xi[i>>2]=s;k=r-k|0;Xi[h>>2]=k;h=c+t|0;Xi[f>>2]=h;c=t-c|0;Xi[u>>2]=c;u=s+w|0;s=w-s|0;w=h+b|0;h=b-h|0;b=k+d|0;k=d-k|0;d=o+c|0;c=o-c|0;l=((s|0)>-1?s:0-s|0)+l+((u|0)>-1?u:0-u|0)+((h|0)>-1?h:0-h|0)+((w|0)>-1?w:0-w|0)+((k|0)>-1?k:0-k|0)+((b|0)>-1?b:0-b|0)+((c|0)>-1?c:0-c|0)+((d|0)>-1?d:0-d|0)|0;e=e+1|0}while((e|0)!=8);Ue=n;return l|0}function Dy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Cy(e,i,r,f,8)|0;a=(Cy(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(Cy(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(Cy(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function Cy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;a=Ue;Ue=Ue+256|0;e=a;r=0;do{n=Zi(r,f)|0;k=qi[i+n>>0]|0;w=qi[i+(n+1)>>0]|0;h=w+k|0;l=r<<3;w=k-w|0;k=qi[i+(n+2)>>0]|0;t=qi[i+(n+3)>>0]|0;s=t+k|0;t=k-t|0;k=qi[i+(n+4)>>0]|0;b=qi[i+(n+5)>>0]|0;u=b+k|0;b=k-b|0;k=qi[i+(n+6)>>0]|0;n=qi[i+(n+7)>>0]|0;o=n+k|0;n=k-n|0;k=s+h|0;s=h-s|0;h=t+w|0;t=w-t|0;w=o+u|0;o=u-o|0;u=n+b|0;n=b-n|0;Xi[e+(l<<2)>>2]=w+k;Xi[e+((l|4)<<2)>>2]=k-w;Xi[e+((l|1)<<2)>>2]=u+h;Xi[e+((l|5)<<2)>>2]=h-u;Xi[e+((l|2)<<2)>>2]=o+s;Xi[e+((l|6)<<2)>>2]=s-o;Xi[e+((l|3)<<2)>>2]=n+t;Xi[e+((l|7)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=8);l=0;r=0;do{_=e+(l<<2)|0;w=Xi[_>>2]|0;E=e+(l+8<<2)|0;v=Xi[E>>2]|0;S=v+w|0;v=w-v|0;w=e+(l+16<<2)|0;d=Xi[w>>2]|0;t=e+(l+24<<2)|0;n=Xi[t>>2]|0;b=n+d|0;n=d-n|0;d=e+(l+32<<2)|0;s=Xi[d>>2]|0;i=e+(l+40<<2)|0;f=Xi[i>>2]|0;c=f+s|0;f=s-f|0;s=e+(l+48<<2)|0;u=Xi[s>>2]|0;o=e+(l+56<<2)|0;k=Xi[o>>2]|0;h=k+u|0;k=u-k|0;u=b+S|0;Xi[_>>2]=u;b=S-b|0;Xi[w>>2]=b;w=n+v|0;Xi[E>>2]=w;n=v-n|0;Xi[t>>2]=n;t=h+c|0;Xi[d>>2]=t;h=c-h|0;Xi[s>>2]=h;s=k+f|0;Xi[i>>2]=s;k=f-k|0;Xi[o>>2]=k;o=t+u|0;t=u-t|0;u=s+w|0;s=w-s|0;w=h+b|0;h=b-h|0;b=n+k|0;k=n-k|0;r=((t|0)>-1?t:0-t|0)+r+((o|0)>-1?o:0-o|0)+((s|0)>-1?s:0-s|0)+((u|0)>-1?u:0-u|0)+((h|0)>-1?h:0-h|0)+((w|0)>-1?w:0-w|0)+((k|0)>-1?k:0-k|0)+((b|0)>-1?b:0-b|0)|0;l=l+1|0}while((l|0)!=8);_=(Xi[e+128>>2]|0)+(Xi[e>>2]|0)|0;Ue=a;return r-((_|0)>-1?_:0-_|0)|0}function Py(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+128|0;o=s;n=e+2936|0;nV[Xi[n>>2]&255](o,i,r,f);t=e+2032|0;xz[Xi[t>>2]&31](o);a=e+2372|0;e=Yz[Xi[a>>2]&15](o)|0;nV[Xi[n>>2]&255](o,i+8|0,r+8|0,f);xz[Xi[t>>2]&31](o);e=(Yz[Xi[a>>2]&15](o)|0)+e|0;if((l|0)==16){l=f<<3;nV[Xi[n>>2]&255](o,i+l|0,r+l|0,f);xz[Xi[t>>2]&31](o);e=(Yz[Xi[a>>2]&15](o)|0)+e|0;l=l+8|0;nV[Xi[n>>2]&255](o,i+l|0,r+l|0,f);xz[Xi[t>>2]&31](o);e=e+(Yz[Xi[a>>2]&15](o)|0)|0}Ue=s;return e|0}function Ly(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;l=Ue;Ue=Ue+128|0;a=l;nV[Xi[e+2936>>2]&255](a,i,r,f);xz[Xi[e+2032>>2]&31](a);f=Yz[Xi[e+2372>>2]&15](a)|0;Ue=l;return f|0}function Iy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Hy(e,i,r,f,8)|0;a=(Hy(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(Hy(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(Hy(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function Hy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;n=Ue;Ue=Ue+128|0;a=n;nV[Xi[e+2936>>2]&255](a,i,r,f);xz[Xi[e+2032>>2]&31](a);e=0;l=0;do{r=Gi[a+(e<<1)>>1]|0;f=r<<16>>16;f=r<<16>>16>-1?f:0-f|0;l=(l|0)>(f|0)?l:f;e=e+1|0}while((e|0)!=64);Ue=n;return l|0}function By(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;if((l|0)>0){a=r;e=0;r=0;while(1){r=(Xi[156396+((qi[i>>0]|0|256)-(qi[a>>0]|0)<<2)>>2]|0)+r+(Xi[156396+((qi[i+1>>0]|0|256)-(qi[a+1>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+2>>0]|0|256)-(qi[a+2>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+3>>0]|0|256)-(qi[a+3>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+4>>0]|0|256)-(qi[a+4>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+5>>0]|0|256)-(qi[a+5>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+6>>0]|0|256)-(qi[a+6>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+7>>0]|0|256)-(qi[a+7>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+8>>0]|0|256)-(qi[a+8>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+9>>0]|0|256)-(qi[a+9>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+10>>0]|0|256)-(qi[a+10>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+11>>0]|0|256)-(qi[a+11>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+12>>0]|0|256)-(qi[a+12>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+13>>0]|0|256)-(qi[a+13>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+14>>0]|0|256)-(qi[a+14>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+15>>0]|0|256)-(qi[a+15>>0]|0)<<2)>>2]|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function Uy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;if((l|0)>0){a=r;e=0;r=0;while(1){r=(Xi[156396+((qi[i>>0]|0|256)-(qi[a>>0]|0)<<2)>>2]|0)+r+(Xi[156396+((qi[i+1>>0]|0|256)-(qi[a+1>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+2>>0]|0|256)-(qi[a+2>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+3>>0]|0|256)-(qi[a+3>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+4>>0]|0|256)-(qi[a+4>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+5>>0]|0|256)-(qi[a+5>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+6>>0]|0|256)-(qi[a+6>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[i+7>>0]|0|256)-(qi[a+7>>0]|0)<<2)>>2]|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;i=i+f|0}}}else r=0;return r|0}function xy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;if((l|0)>0){a=i;e=0;i=0;while(1){i=(Xi[156396+((qi[a>>0]|0|256)-(qi[r>>0]|0)<<2)>>2]|0)+i+(Xi[156396+((qi[a+1>>0]|0|256)-(qi[r+1>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[a+2>>0]|0|256)-(qi[r+2>>0]|0)<<2)>>2]|0)+(Xi[156396+((qi[a+3>>0]|0|256)-(qi[r+3>>0]|0)<<2)>>2]|0)|0;e=e+1|0;if((e|0)==(l|0))break;else{a=a+f|0;r=r+f|0}}}else i=0;return i|0}function zy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Vy(e,i,r,f,8)|0;a=(Vy(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(Vy(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(Vy(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function Vy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;t=Ue;Ue=Ue+272|0;n=t;a=t+256|0;Xi[e+4280>>2]=0;nV[Xi[e+2936>>2]&255](n,i,r,f);l=n+128|0;i=n;r=l+128|0;do{Xi[l>>2]=Xi[i>>2];l=l+4|0;i=i+4|0}while((l|0)<(r|0));i=e+1920|0;Xi[e+16>>2]=Kz[Xi[e+6208>>2]&63](e,n,0,Xi[i>>2]|0,a)|0;nV[Xi[e+6200>>2]&255](e,n,0,Xi[i>>2]|0);hO(n);Xi[a>>2]=0;i=0;l=0;do{e=(Gi[n+(i<<1)>>1]|0)-(Gi[n+(i+64<<1)>>1]|0)|0;l=(Zi(e,e)|0)+l|0;i=i+1|0}while((i|0)!=64);Ue=t;return l|0}function Yy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=jy(e,i,r,f,8)|0;a=(jy(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(jy(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(jy(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function jy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;c=Ue;Ue=Ue+272|0;b=c+128|0;w=c+64|0;k=c;u=c+256|0;h=Xi[e+4884>>2]|0;d=i;l=d;d=d+4|0;d=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;v=w;Xi[v>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[v+4>>2]=d;v=i+f|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;l=w+8|0;Xi[l>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[l+4>>2]=v;l=f<<1;v=i+l|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;a=w+16|0;Xi[a>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[a+4>>2]=v;a=f*3|0;v=i+a|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;n=w+24|0;Xi[n>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[n+4>>2]=v;n=f<<2;v=i+n|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;s=w+32|0;Xi[s>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[s+4>>2]=v;s=f*5|0;v=i+s|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;t=w+40|0;Xi[t>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[t+4>>2]=v;t=f*6|0;v=i+t|0;d=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;o=w+48|0;Xi[o>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[o+4>>2]=v;o=f*7|0;v=i+o|0;i=v;v=v+4|0;v=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;d=w+56|0;Xi[d>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[d+4>>2]=v;d=r;v=d;d=d+4|0;d=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;i=k;Xi[i>>2]=qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24;Xi[i+4>>2]=d;i=r+f|0;d=i;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;f=k+8|0;Xi[f>>2]=qi[d>>0]|qi[d+1>>0]<<8|qi[d+2>>0]<<16|qi[d+3>>0]<<24;Xi[f+4>>2]=i;f=r+l|0;l=f;f=f+4|0;f=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;i=k+16|0;Xi[i>>2]=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;Xi[i+4>>2]=f;a=r+a|0;i=a;a=a+4|0;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;f=k+24|0;Xi[f>>2]=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;Xi[f+4>>2]=a;n=r+n|0;f=n;n=n+4|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;a=k+32|0;Xi[a>>2]=qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24;Xi[a+4>>2]=n;s=r+s|0;a=s;s=s+4|0;s=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;n=k+40|0;Xi[n>>2]=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;Xi[n+4>>2]=s;t=r+t|0;n=t;t=t+4|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;s=k+48|0;Xi[s>>2]=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;Xi[s+4>>2]=t;o=r+o|0;s=o;o=o+4|0;o=qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24;t=k+56|0;Xi[t>>2]=qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24;Xi[t+4>>2]=o;nV[Xi[e+2936>>2]&255](b,w,k,8);t=e+1920|0;o=Kz[Xi[e+6208>>2]&63](e,b,0,Xi[t>>2]|0,u)|0;Xi[e+16>>2]=o;s=(Xi[e+4280>>2]|0)==0;if(s){l=0;i=e+4908|0;r=e+4904|0;f=0}else{l=qi[(Xi[e+4912>>2]|0)+((Gi[b>>1]|0)+256)>>0]|0;i=e+4892|0;r=e+4888|0;f=1}n=Xi[i>>2]|0;a=Xi[r>>2]|0;do{if((o|0)>=(f|0)){Xi[u>>2]=f;if((f|0)<(o|0)){r=0;do{i=Gi[b+(qi[e+204+f>>0]<<1)>>1]|0;if(!(i<<16>>16))r=r+1|0;else{i=(i<<16>>16)+64|0;if(i>>>0<128)i=qi[a+(i+(r<<7))>>0]|0;else i=h;l=i+l|0;r=0}f=f+1|0;Xi[u>>2]=f}while((f|0)<(o|0))}else r=0;i=qi[e+204+o>>0]|0;Xi[u>>2]=i;i=(Gi[b+(i<<1)>>1]|0)+64|0;if(i>>>0<128){l=(qi[n+(i+(r<<7))>>0]|0)+l|0;break}else{l=l+h|0;break}}}while(0);do{if((o|0)>-1)if(s){nV[Xi[e+6200>>2]&255](e,b,0,Xi[t>>2]|0);break}else{nV[Xi[e+6196>>2]&255](e,b,0,Xi[t>>2]|0);break}}while(0);aV[Xi[e+2300>>2]&1023](k,8,b);v=Kz[Xi[e+2404>>2]&63](0,k,w,8,8)|0;d=Xi[t>>2]|0;v=((Zi(Zi(l*109|0,d)|0,d)|0)+64>>7)+v|0;Ue=c;return v|0}function Ky(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Wy(e,i,r,f,8)|0;a=(Wy(e,i+8|0,r+8|0,f,8)|0)+a|0;if((l|0)==16){n=f<<3;l=(Wy(e,i+n|0,r+n|0,f,8)|0)+a|0;a=n+8|0;a=l+(Wy(e,i+a|0,r+a|0,f,8)|0)|0}return a|0}function Wy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+144|0;s=h;o=h+128|0;u=Xi[e+4884>>2]|0;nV[Xi[e+2936>>2]&255](s,i,r,f);n=Kz[Xi[e+6208>>2]&63](e,s,0,Xi[e+1920>>2]|0,o)|0;Xi[e+16>>2]=n;if(!(Xi[e+4280>>2]|0)){l=0;i=e+4908|0;r=e+4904|0;f=0}else{l=qi[(Xi[e+4912>>2]|0)+((Gi[s>>1]|0)+256)>>0]|0;i=e+4892|0;r=e+4888|0;f=1}t=Xi[i>>2]|0;a=Xi[r>>2]|0;do{if((n|0)>=(f|0)){Xi[o>>2]=f;if((f|0)<(n|0)){r=0;do{i=Gi[s+(qi[e+204+f>>0]<<1)>>1]|0;if(!(i<<16>>16))r=r+1|0;else{i=(i<<16>>16)+64|0;if(i>>>0<128)i=qi[a+(i+(r<<7))>>0]|0;else i=u;l=i+l|0;r=0}f=f+1|0;Xi[o>>2]=f}while((f|0)<(n|0))}else r=0;i=qi[e+204+n>>0]|0;Xi[o>>2]=i;i=(Gi[s+(i<<1)>>1]|0)+64|0;if(i>>>0<128){l=(qi[t+(i+(r<<7))>>0]|0)+l|0;break}else{l=l+u|0;break}}}while(0);Ue=h;return l|0}function Gy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;if((l|0)>1){e=0;n=1;while(1){a=0;do{t=a+f|0;t=(qi[i+a>>0]|0)-(qi[r+a>>0]|0)-(qi[i+t>>0]|0)+(qi[r+t>>0]|0)|0;e=((t|0)>-1?t:0-t|0)+e|0;a=a+1|0}while((a|0)!=16);n=n+1|0;if((n|0)==(l|0))break;else{r=r+f|0;i=i+f|0}}}else e=0;return e|0}function Xy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;if((l|0)>1){e=0;n=1;while(1){a=0;do{t=a+f|0;t=(qi[i+a>>0]|0)-(qi[r+a>>0]|0)-(qi[i+t>>0]|0)+(qi[r+t>>0]|0)|0;e=((t|0)>-1?t:0-t|0)+e|0;a=a+1|0}while((a|0)!=8);n=n+1|0;if((n|0)==(l|0))break;else{r=r+f|0;i=i+f|0}}}else e=0;return e|0}function qy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;if((l|0)>1){e=0;a=1;while(1){r=0;do{o=r+f|0;s=(qi[i+r>>0]|0)-(qi[i+o>>0]|0)|0;o=(qi[i+(r|1)>>0]|0)-(qi[i+(o+1)>>0]|0)|0;t=r|2;t=(qi[i+t>>0]|0)-(qi[i+(t+f)>>0]|0)|0;n=r|3;n=(qi[i+n>>0]|0)-(qi[i+(n+f)>>0]|0)|0;e=((s|0)>-1?s:0-s|0)+e+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;r=r+4|0}while((r|0)<16);a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Jy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;if((l|0)>1){e=0;a=1;while(1){r=0;do{o=r+f|0;s=(qi[i+r>>0]|0)-(qi[i+o>>0]|0)|0;o=(qi[i+(r|1)>>0]|0)-(qi[i+(o+1)>>0]|0)|0;t=r|2;t=(qi[i+t>>0]|0)-(qi[i+(t+f)>>0]|0)|0;n=r|3;n=(qi[i+n>>0]|0)-(qi[i+(n+f)>>0]|0)|0;e=((s|0)>-1?s:0-s|0)+e+((o|0)>-1?o:0-o|0)+((t|0)>-1?t:0-t|0)+((n|0)>-1?n:0-n|0)|0;r=r+4|0}while((r|0)<8);a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function Zy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;if((l|0)>1){e=0;n=1;while(1){a=0;do{t=a+f|0;t=(qi[i+a>>0]|0)-(qi[r+a>>0]|0)-(qi[i+t>>0]|0)+(qi[r+t>>0]|0)|0;e=(Zi(t,t)|0)+e|0;a=a+1|0}while((a|0)!=16);n=n+1|0;if((n|0)==(l|0))break;else{r=r+f|0;i=i+f|0}}}else e=0;return e|0}function Qy(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;if((l|0)>1){e=0;n=1;while(1){a=0;do{t=a+f|0;t=(qi[i+a>>0]|0)-(qi[r+a>>0]|0)-(qi[i+t>>0]|0)+(qi[r+t>>0]|0)|0;e=(Zi(t,t)|0)+e|0;a=a+1|0}while((a|0)!=8);n=n+1|0;if((n|0)==(l|0))break;else{r=r+f|0;i=i+f|0}}}else e=0;return e|0}function $y(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;if((l|0)>1){e=0;a=1;while(1){r=0;do{n=r+f|0;s=(qi[i+r>>0]|0)-(qi[i+n>>0]|0)|0;s=Zi(s,s)|0;o=(qi[i+(r|1)>>0]|0)-(qi[i+(n+1)>>0]|0)|0;o=Zi(o,o)|0;t=(qi[i+(r|2)>>0]|0)-(qi[i+(n+2)>>0]|0)|0;t=Zi(t,t)|0;n=(qi[i+(r|3)>>0]|0)-(qi[i+(n+3)>>0]|0)|0;e=s+e+o+t+(Zi(n,n)|0)|0;r=r+4|0}while((r|0)<16);a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function eO(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;if((l|0)>1){e=0;a=1;while(1){r=0;do{n=r+f|0;s=(qi[i+r>>0]|0)-(qi[i+n>>0]|0)|0;s=Zi(s,s)|0;o=(qi[i+(r|1)>>0]|0)-(qi[i+(n+1)>>0]|0)|0;o=Zi(o,o)|0;t=(qi[i+(r|2)>>0]|0)-(qi[i+(n+2)>>0]|0)|0;t=Zi(t,t)|0;n=(qi[i+(r|3)>>0]|0)-(qi[i+(n+3)>>0]|0)|0;e=s+e+o+t+(Zi(n,n)|0)|0;r=r+4|0}while((r|0)<8);a=a+1|0;if((a|0)==(l|0))break;else i=i+f|0}}else e=0;return e|0}function iO(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;if((l|0)>0){u=i;a=0;i=0;s=0;while(1){n=0;do{o=(qi[u+n>>0]|0)-(qi[r+n>>0]|0)|0;a=(Zi(o,o)|0)+a|0;n=n+1|0}while((n|0)!=16);s=s+1|0;if((s|0)<(l|0)){t=Wi[u>>0]|0;o=Wi[r>>0]|0;n=0;do{k=n+f|0;n=n+1|0;w=t;t=Wi[u+n>>0]|0;h=k+1|0;w=(w&255)-(qi[u+k>>0]|0)-(t&255)+(qi[u+h>>0]|0)|0;b=o;o=Wi[r+n>>0]|0;h=(b&255)-(qi[r+k>>0]|0)-(o&255)+(qi[r+h>>0]|0)|0;i=((w|0)>-1?w:0-w|0)+i-((h|0)>-1?h:0-h|0)|0}while((n|0)!=15)}if((s|0)==(l|0)){r=a;break}else{u=u+f|0;r=r+f|0}}}else{r=0;i=0}i=(i|0)>-1?i:0-i|0;if(!e)i=i<<3;else i=Zi(Xi[(Xi[e+596>>2]|0)+824>>2]|0,i)|0;return i+r|0}function rO(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;if((l|0)>0){u=i;a=0;i=0;s=0;while(1){n=0;do{o=(qi[u+n>>0]|0)-(qi[r+n>>0]|0)|0;a=(Zi(o,o)|0)+a|0;n=n+1|0}while((n|0)!=8);s=s+1|0;if((s|0)<(l|0)){t=Wi[u>>0]|0;o=Wi[r>>0]|0;n=0;do{k=n+f|0;n=n+1|0;w=t;t=Wi[u+n>>0]|0;h=k+1|0;w=(w&255)-(qi[u+k>>0]|0)-(t&255)+(qi[u+h>>0]|0)|0;b=o;o=Wi[r+n>>0]|0;h=(b&255)-(qi[r+k>>0]|0)-(o&255)+(qi[r+h>>0]|0)|0;i=((w|0)>-1?w:0-w|0)+i-((h|0)>-1?h:0-h|0)|0}while((n|0)!=7)}if((s|0)==(l|0)){r=a;break}else{u=u+f|0;r=r+f|0}}}else{r=0;i=0}i=(i|0)>-1?i:0-i|0;if(!e)i=i<<3;else i=Zi(Xi[(Xi[e+596>>2]|0)+824>>2]|0,i)|0;return i+r|0}function fO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+16|0;t=o;jT(e|0,0,976)|0;Xi[e>>2]=89080;l=(i|0)!=0;e:do{if(l){r=Xi[i+8>>2]|0;Xi[e+8>>2]=r;Xi[e+12>>2]=i;Xi[e+48>>2]=Xi[i+12>>2];switch(r|0){case 1:{r=8;break e}case 0:break;default:{a=5;break e}}r=16}else{Xi[e+8>>2]=-1;r=-1;a=5}}while(0);if((a|0)==5)r=(r|0)==3?32:0;jM(e,r,r);Xi[e+108>>2]=0;Xi[e+112>>2]=1;Xi[e+880>>2]=0;Xi[e+884>>2]=1;Xi[e+892>>2]=0;Xi[e+896>>2]=1;Xi[e+472>>2]=5;Xi[e+156>>2]=6;Xi[e+816>>2]=1;Xi[e+820>>2]=36;Xi[e+228>>2]=0;Xi[e+232>>2]=1;Xi[e+144>>2]=-1;Xi[e+424>>2]=-1;a=e+696|0;Xi[a>>2]=0;Xi[a+4>>2]=-2147483648;e:do{if(l){l=Xi[i+52>>2]|0;if(l|0){a=e+60|0;r=Xi[a>>2]|0;if(!r){r=iA(l)|0;Xi[a>>2]=r;if(!r){n=-12;break}}l=Xi[i+44>>2]|0;if(l|0){Xi[r>>2]=l;YM(Xi[a>>2]|0)}}r=Xi[i+68>>2]|0;if((r|0)!=0?(f=Xi[r>>2]|0,(f|0)!=0):0){while(1){if((yM(e,f,Xi[r+4>>2]|0,0)|0)<=-1)break;r=r+8|0;f=Xi[r>>2]|0;if(!f){n=0;break e}}Xi[t>>2]=143011;Xi[t+4>>2]=143020;Xi[t+8>>2]=142;nA(0,0,150445,t);$e()}else n=0}else n=0}while(0);Ue=o;return n|0}function lO(e){e=e|0;var i=0,r=0;if(!(((e|0)!=0?(r=Xi[e+12>>2]|0,(r|0)!=0):0)?(i=Xi[r>>2]|0,(i|0)!=0):0))i=131504;return i|0}function aO(e,i){e=e|0;i=i|0;var r=0,f=0;if(!((((i|0)==0?(f=Xi[e+12>>2]|0,(f|0)!=0):0)?(Xi[f+44>>2]|0)!=0:0)?(r=Xi[e+60>>2]|0,(r|0)!=0):0))r=0;return r|0}function nO(e){e=e|0;var i=0;e:do{if(!e)e=0;else{i=0;while(1){i=bO(i)|0;if(!i){e=0;break e}if((Xi[i+44>>2]|0)==(e|0)){e=i;break}}}}while(0);do{e=bO(e)|0;if(!e){i=0;break}i=Xi[e+44>>2]|0}while(!(i|0));return i|0}function tO(e){e=e|0;e=Xi[e+12>>2]|0;if((e|0)!=0?(Xi[e+88>>2]|0)!=0:0)e=6;else e=5;return e|0}function oO(e){e=e|0;var i=0;i=rA(976)|0;if(i){if((fO(i,e)|0)<0){FA(i);i=0}}else i=0;return i|0}function sO(e){e=e|0;var i=0;i=Xi[e>>2]|0;if(i|0){IO(i)|0;vA(i+100|0);vA(i+848|0);vA(i+304|0);vA(i+308|0);vA(i+520|0);vA(e)}return}function uO(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;c=e+4|0;i=Xi[c>>2]|0;d=e+8|0;v=e+12|0;a=Xi[v>>2]|0;E=e+2|0;f=Gi[E>>1]|0;r=Gi[e>>1]|0;if(!(Xi[d>>2]|i|a|f)){E=r<<3&65528|r<<19;Xi[v>>2]=E;Xi[d>>2]=E;Xi[c>>2]=E;Xi[e>>2]=E}else{b=(r*16383|0)+1024|0;o=i<<16>>16;t=o*21407|0;l=t+b|0;o=o*8867|0;n=o+b|0;o=b-o|0;t=b-t|0;b=e+6|0;k=Gi[b>>1]|0;s=(k*19266|0)+(f*22725|0)|0;w=(f*19266|0)+(Zi(k,-4520)|0)|0;r=(f*12873|0)+(Zi(k,-22725)|0)|0;k=(f*4520|0)+(Zi(k,-12873)|0)|0;h=d;i=Xi[h>>2]|0;if((i|0)==0&(Xi[h+4>>2]|0)==0){u=e+10|0;h=e+14|0;a=s;f=w;i=k}else{m=i<<16>>16;f=m*16383|0;_=a<<16>>16;a=_*8867|0;m=Zi(m,-16383)|0;_=_*21407|0;u=e+10|0;S=Gi[u>>1]|0;h=e+14|0;i=Gi[h>>1]|0;l=f+l+a|0;n=m+n-_|0;o=m+o+_|0;t=f+t-a|0;a=(S*12873|0)+s+(i*4520|0)|0;f=w+(Zi(S,-22725)|0)+(Zi(i,-12873)|0)|0;r=(S*4520|0)+r+(i*19266|0)|0;i=k+(S*19266|0)+(Zi(i,-22725)|0)|0}Gi[e>>1]=(a+l|0)>>>11;Gi[h>>1]=(l-a|0)>>>11;Gi[E>>1]=(f+n|0)>>>11;Gi[v>>1]=(n-f|0)>>>11;Gi[c>>1]=(r+o|0)>>>11;Gi[u>>1]=(o-r|0)>>>11;Gi[b>>1]=(i+t|0)>>>11;Gi[d>>1]=(t-i|0)>>>11}return}function hO(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;uO(e);uO(e+16|0);uO(e+32|0);uO(e+48|0);uO(e+64|0);uO(e+80|0);uO(e+96|0);uO(e+112|0);E=0;do{v=e+(E<<1)|0;b=((Gi[v>>1]|0)*16383|0)+524256|0;k=e+(E+16<<1)|0;a=Gi[k>>1]|0;i=b+(a*21407|0)|0;f=b+(a*8867|0)|0;l=b+(Zi(a,-8867)|0)|0;a=b+(Zi(a,-21407)|0)|0;b=e+(E+8<<1)|0;d=Gi[b>>1]|0;c=e+(E+24<<1)|0;s=Gi[c>>1]|0;o=(s*19266|0)+(d*22725|0)|0;t=(d*19266|0)+(Zi(s,-4520)|0)|0;n=(d*12873|0)+(Zi(s,-22725)|0)|0;s=(d*4520|0)+(Zi(s,-12873)|0)|0;d=e+(E+32<<1)|0;r=Gi[d>>1]|0;if(r<<16>>16){h=r<<16>>16;w=h*16383|0;h=Zi(h,-16383)|0;i=w+i|0;f=h+f|0;l=h+l|0;a=w+a|0}w=e+(E+40<<1)|0;r=Gi[w>>1]|0;if(!(r<<16>>16))u=s;else{u=r<<16>>16;o=(u*12873|0)+o|0;t=t+(Zi(u,-22725)|0)|0;n=(u*4520|0)+n|0;u=(u*19266|0)+s|0}h=e+(E+48<<1)|0;r=Gi[h>>1]|0;if(r<<16>>16){s=r<<16>>16;i=(s*8867|0)+i|0;f=f+(Zi(s,-21407)|0)|0;l=(s*21407|0)+l|0;a=a+(Zi(s,-8867)|0)|0}s=e+(E+56<<1)|0;r=Gi[s>>1]|0;if(!(r<<16>>16))r=u;else{r=r<<16>>16;o=(r*4520|0)+o|0;t=t+(Zi(r,-12873)|0)|0;n=(r*19266|0)+n|0;r=u+(Zi(r,-22725)|0)|0}Gi[v>>1]=o+i>>20;Gi[b>>1]=t+f>>20;Gi[k>>1]=n+l>>20;Gi[c>>1]=r+a>>20;Gi[d>>1]=a-r>>20;Gi[w>>1]=l-n>>20;Gi[h>>1]=f-t>>20;Gi[s>>1]=i-o>>20;E=E+1|0}while((E|0)!=8);return}function wO(e,i){e=e|0;i=i|0;var r=0;e:do{if((i|0)>0){r=0;do{if(!(Wi[e+r>>0]|0))break e;r=r+1|0}while((r|0)<(i|0))}else r=0}while(0);return r|0}function kO(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;do{if(r>>>0<=4294967263){f=r+32|0;if((Xi[i>>2]|0)>>>0<f>>>0){l=r+64+(f>>>4)|0;l=l>>>0>f>>>0?l:f;vA(e);r=iA(l)|0;Wi[e>>0]=r;Wi[e+1>>0]=r>>8;Wi[e+2>>0]=r>>16;Wi[e+3>>0]=r>>24;Xi[i>>2]=(r|0)==0?0:l;break}f=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;if(!f){Xi[l>>2]=150475;Xi[l+4>>2]=143041;Xi[l+8>>2]=33;nA(0,0,150445,l);$e()}else{f=f+r|0;e=f+32|0;do{Wi[f>>0]=0;f=f+1|0}while((f|0)<(e|0));break}}else{vA(e);Xi[i>>2]=0}}while(0);Ue=a;return}function bO(e){e=e|0;return Xi[((e|0)==0?158448:e+56|0)>>2]|0}function cO(e){e=e|0;var i=0,r=0,f=0,l=0;if(!(Xi[39613]|0)){Xi[39613]=1;Sy()}r=Xi[22281]|0;f=e+56|0;Xi[f>>2]=0;l=e;while(1){i=Xi[r>>2]|0;if(!i){i=Xi[r>>2]|0;if(!i)Xi[r>>2]=l;if(!i)break;i=Xi[r>>2]|0}r=i+56|0}Xi[22281]=f;i=Xi[e+72>>2]|0;if(i|0)xz[i&31](e);return}function dO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=Ue;Ue=Ue+16|0;r=l+8|0;f=l;n=Xi[e+124>>2]|0;a=Xi[e+128>>2]|0;Xi[r>>2]=Xi[i>>2];Xi[r+4>>2]=Xi[i+4>>2];r=wM(n,a,r)|0;if((r|0)<0){n=Xi[i+4>>2]|0;Xi[f>>2]=Xi[i>>2];Xi[f+4>>2]=n;nA(e,24,143068,f);Xi[e+228>>2]=0;Xi[e+232>>2]=1}else{a=i;n=Xi[a+4>>2]|0;r=e+228|0;Xi[r>>2]=Xi[a>>2];Xi[r+4>>2]=n;r=0}Ue=l;return r|0}function vO(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0;a=e+144|0;l=Wg(Xi[a>>2]|0)|0;if(!l){t=1;l=1}else{t=1<<(qi[l+6>>0]|0);l=1<<(qi[l+5>>0]|0)}switch(Xi[a>>2]|0){case 124:case 125:case 87:case 88:case 313:case 314:case 311:case 312:case 85:case 86:case 83:case 84:case 107:case 108:case 101:case 102:case 95:case 96:case 59:case 58:case 309:case 310:case 307:case 308:case 77:case 78:case 75:case 76:case 331:case 330:case 329:case 328:case 105:case 106:case 99:case 100:case 93:case 94:case 57:case 56:case 305:case 306:case 303:case 304:case 73:case 74:case 79:case 80:case 103:case 104:case 97:case 98:case 91:case 92:case 55:case 54:case 301:case 302:case 299:case 300:case 71:case 72:case 69:case 70:case 90:case 89:case 35:case 14:case 34:case 13:case 12:case 32:case 31:case 8:case 123:case 82:case 5:case 33:case 4:case 17:case 119:case 1:case 0:{a=32;l=16;break}case 18:case 315:case 7:{a=32;l=32;break}case 6:{n=(Xi[e+48>>2]|0)==23;a=n?64:t;l=n?64:l;break}case 46:{n=(Xi[e+48>>2]|0)==43;a=n?4:t;l=n?4:l;break}case 22:case 19:case 11:{n=Xi[e+48>>2]|0;switch(n|0){case 44:case 50:{a=4;l=4;break}default:a=t}t=(n|0)==149;a=t?8:a;l=t?8:l;break}case 3:{n=(Xi[e+48>>2]&-2|0)==54;a=n?4:t;l=n?4:l;break}case 2:{n=(Xi[e+48>>2]|0)==44;a=n?4:t;l=n?4:l;break}default:a=t}t=Xi[e+48>>2]|0;l=(t|0)==137?(l|0)>8?l:8:l;Xi[i>>2]=(Xi[i>>2]|0)+-1+l&0-l;l=a+-1+(Xi[r>>2]|0)&0-a;Xi[r>>2]=l;if(!((t|0)!=28?!(Xi[e+792>>2]|0):0)){Xi[r>>2]=l+2;e=Xi[i>>2]|0;Xi[i>>2]=(e|0)>32?e:32}Xi[f>>2]=8;Xi[f+4>>2]=8;Xi[f+8>>2]=8;Xi[f+12>>2]=8;return}function EO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+16|0;r=E;f=Wg(Xi[e+80>>2]|0)|0;if(0==0?(Xi[f+8>>2]&16|0)==0:0){Xi[r>>2]=143097;Xi[r+4>>2]=143120;Xi[r+8>>2]=702;nA(0,0,150445,r);$e()}k=f+4|0;if(Wi[k>>0]|0){b=e+68|0;c=f+5|0;d=e+72|0;v=f+6|0;u=f+32|0;w=0;do{r=Xi[b>>2]|0;if((w+-1|0)>>>0<2){h=0-(0-(Xi[d>>2]|0)>>qi[v>>0])|0;r=0-(0-r>>qi[c>>0])|0}else h=Xi[d>>2]|0;if((h|0)>0){f=e+32+(w<<2)|0;l=i+(w<<2)|0;a=(r|0)>0;t=Xi[e+(w<<2)>>2]|0;s=0;while(1){if((Xi[u>>2]|0)>8){if(a){n=Xi[l>>2]&65535;o=0;do{Gi[t+(o<<1)>>1]=n;o=o+1|0}while((o|0)!=(r|0))}}else jT(t|0,Xi[l>>2]&255|0,r|0)|0;s=s+1|0;if((s|0)==(h|0))break;else t=t+(Xi[f>>2]|0)|0}}w=w+1|0}while((w|0)<(qi[k>>0]|0))}Ue=E;return}function SO(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;T=Ue;Ue=Ue+128|0;R=T+56|0;y=T+40|0;M=T+32|0;A=T+24|0;O=T+16|0;r=T;c=T+104|0;S=T+88|0;_=T+72|0;b=T+64|0;k=T+60|0;m=e+64|0;p=Xi[(Xi[m>>2]|0)+16>>2]|0;F=e+8|0;e:do{switch(Xi[F>>2]|0){case 0:{Xi[_>>2]=0;Xi[_+4>>2]=0;Xi[_+8>>2]=0;Xi[_+12>>2]=0;v=i+68|0;h=Xi[v>>2]|0;Xi[b>>2]=h;E=i+72|0;w=Xi[E>>2]|0;Xi[k>>2]=w;r=p+16|0;d=i+80|0;if(((Xi[r>>2]|0)==(Xi[d>>2]|0)?(Xi[p+20>>2]|0)==(h|0):0)?(Xi[p+24>>2]|0)==(w|0):0){f=0;break e}l=p+28|0;vO(e,b,k,l);a=e+144|0;n=S+4|0;t=p+32|0;o=S+8|0;s=p+36|0;u=S+12|0;h=p+40|0;w=Xi[b>>2]|0;do{f=Xg(S,Xi[a>>2]|0,w)|0;if((f|0)<0)break e;w=(w&0-w)+w|0;Xi[b>>2]=w}while(((Xi[n>>2]|0)%(Xi[t>>2]|0)|0|((Xi[S>>2]|0)%(Xi[l>>2]|0)|0)|((Xi[o>>2]|0)%(Xi[s>>2]|0)|0)|((Xi[u>>2]|0)%(Xi[h>>2]|0)|0)|0)!=0);n=uM(c,Xi[a>>2]|0,Xi[k>>2]|0,0,S)|0;if((n|0)>=0){l=Xi[c+4>>2]|0;f=Xi[c>>2]|0;if(l){Xi[_>>2]=l-f;a=Xi[c+8>>2]|0;if(a){Xi[_+4>>2]=a-l;l=Xi[c+12>>2]|0;if(!l)l=2;else{Xi[_+8>>2]=l-a;l=3}}else l=1}else l=0;Xi[_+(l<<2)>>2]=f+n-(Xi[c+(l<<2)>>2]|0);a=0;while(1){f=p+(a<<2)|0;YA(f);Xi[p+60+(a<<2)>>2]=Xi[S+(a<<2)>>2];l=Xi[_+(a<<2)>>2]|0;if(l|0?(g=VA(l+23|0,11)|0,Xi[f>>2]=g,(g|0)==0):0){g=25;break}a=a+1|0;if((a|0)>=4){g=16;break}}if((g|0)==16){Xi[r>>2]=Xi[d>>2];Xi[p+20>>2]=Xi[v>>2];Xi[p+24>>2]=Xi[E>>2];f=0;break e}else if((g|0)==25){l=p;f=-12;g=26;break e}}else f=-1;break}case 1:{n=Dg(i)|0;t=i+80|0;o=(OA(Xi[t>>2]|0)|0)!=0;o=o?n:1;r=p+16|0;if((((Xi[r>>2]|0)==(Xi[t>>2]|0)?(Xi[p+76>>2]|0)==(o|0):0)?(Xi[p+80>>2]|0)==(n|0):0)?(Xi[i+76>>2]|0)==(Xi[p+84>>2]|0):0){f=0;break e}YA(p);l=p+60|0;a=i+76|0;f=yA(l,n,Xi[a>>2]|0,Xi[t>>2]|0,0)|0;if((f|0)>=0){_=VA(Xi[l>>2]|0,0)|0;Xi[p>>2]=_;if(!_){l=p;f=-12;g=26}else{Xi[r>>2]=Xi[t>>2];Xi[p+76>>2]=o;Xi[p+80>>2]=n;Xi[p+84>>2]=Xi[a>>2];f=0}}else{l=p;g=26}break}default:{Xi[r>>2]=143139;Xi[r+4>>2]=143120;Xi[r+8>>2]=593;nA(0,0,150445,r);$e()}}}while(0);if((g|0)==26){YA(l);YA(p+4|0);YA(p+8|0);YA(p+12|0);Xi[r>>2]=-1;Xi[p+84>>2]=0;Xi[p+80>>2]=0;Xi[p+76>>2]=0;Xi[p+24>>2]=0;Xi[p+20>>2]=0}e:do{if((f|0)>=0){switch(Xi[F>>2]|0){case 0:{l=Xi[(Xi[m>>2]|0)+16>>2]|0;a=i+80|0;n=Wg(Xi[a>>2]|0)|0;if(Xi[i>>2]|0){nA(e,16,143141,O);f=-1;break e}if(!n){Xi[A>>2]=zM(Xi[a>>2]|0)|0;nA(e,16,143191,A);f=-22;break e}Xi[i>>2]=0;Xi[i+4>>2]=0;Xi[i+8>>2]=0;Xi[i+12>>2]=0;Xi[i+16>>2]=0;Xi[i+20>>2]=0;Xi[i+24>>2]=0;Xi[i+28>>2]=0;Xi[i+64>>2]=i;f=0;do{r=Xi[l+(f<<2)>>2]|0;if(!r)break;Xi[i+32+(f<<2)>>2]=Xi[l+60+(f<<2)>>2];r=KA(r)|0;Xi[i+248+(f<<2)>>2]=r;if(!r){g=45;break}Xi[i+(f<<2)>>2]=Xi[r+4>>2];f=f+1|0}while((f|0)<4);if((g|0)==45){Yg(i);f=-12;break e}if((f|0)<8)do{Xi[i+(f<<2)>>2]=0;Xi[i+32+(f<<2)>>2]=0;f=f+1|0}while((f|0)!=8);if(!(0==0?(Xi[n+8>>2]&66|0)==0:0))hM(Xi[i+4>>2]|0,Xi[a>>2]|0)|0;if(!(Xi[e+680>>2]&32768)){f=0;break e}Xi[M>>2]=i;nA(e,48,143244,M);f=0;break e}case 1:break;default:{f=-1;break e}}t=Xi[(Xi[m>>2]|0)+16>>2]|0;l=Xi[t+76>>2]|0;Xi[i+32>>2]=Xi[t+60>>2];do{if((l|0)<=8){f=i+64|0;Xi[f>>2]=i;if(!(Xi[i+284>>2]|0))if((l|0)>0){g=55;break}else break;else{Xi[y>>2]=143281;Xi[y+4>>2]=143120;Xi[y+8>>2]=625;nA(0,0,150445,y);$e()}}else{if(l>>>0>536870910)f=0;else f=iA(l<<2)|0;r=i+64|0;Xi[r>>2]=f;f=l+-8|0;Xi[i+284>>2]=f;if(f>>>0<=536870910){M=iA(f<<2)|0;f=i+280|0;Xi[f>>2]=M;if(!((M|0)==0|(Xi[r>>2]|0)==0)){f=r;l=8;g=55;break}}else{f=i+280|0;Xi[f>>2]=0}vA(r);vA(f);f=-12;break e}}while(0);i:do{if((g|0)==55){a=0;while(1){r=KA(Xi[t>>2]|0)|0;Xi[i+248+(a<<2)>>2]=r;if(!r)break;M=Xi[r+4>>2]|0;Xi[i+(a<<2)>>2]=M;Xi[(Xi[f>>2]|0)+(a<<2)>>2]=M;a=a+1|0;if((a|0)>=(l|0)){g=57;break}}r:do{if((g|0)==57){f=i+284|0;if((Xi[f>>2]|0)<=0)break i;r=i+280|0;l=i+64|0;n=0;while(1){a=KA(Xi[t>>2]|0)|0;Xi[(Xi[r>>2]|0)+(n<<2)>>2]=a;a=Xi[(Xi[r>>2]|0)+(n<<2)>>2]|0;if(!a)break r;Xi[(Xi[l>>2]|0)+(n+8<<2)>>2]=Xi[a+4>>2];n=n+1|0;if((n|0)>=(Xi[f>>2]|0))break i}}}while(0);Yg(i);f=-12;break e}}while(0);if(!(Xi[e+680>>2]&32768))f=0;else{Xi[R>>2]=i;nA(e,48,143309,R);f=0}}}while(0);Ue=T;return f|0}function _O(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;w=Ue;Ue=Ue+32|0;o=w+24|0;h=w+16|0;u=w+8|0;s=w;n=w+20|0;r=Xi[(Xi[e+64>>2]|0)+24>>2]|0;e:do{if(!r){t=i+112|0;Xi[t>>2]=0;Xi[t+4>>2]=-2147483648;Ng(i,-1,-1);Tg(i,0,0);Pg(i,-1);t=9}else{f=r+8|0;l=Xi[f+4>>2]|0;a=i+112|0;Xi[a>>2]=Xi[f>>2];Xi[a+4>>2]=l;a=r+56|0;Ng(i,Xi[a>>2]|0,Xi[a+4>>2]|0);a=r+48|0;Tg(i,Xi[a>>2]|0,Xi[a+4>>2]|0);Pg(i,Xi[r+28>>2]|0);a=0;do{f=EN(r,Xi[89128+(a<<3)>>2]|0,n)|0;if(f|0){l=Mg(i,Xi[89128+(a<<3)+4>>2]|0,Xi[n>>2]|0)|0;if(!l){r=-12;break e}qT(Xi[l+4>>2]|0,f|0,Xi[n>>2]|0)|0}a=a+1|0}while(a>>>0<4);t=Ug(i)|0;n=EN(r,72,o)|0;_N(n,Xi[o>>2]|0,t)|0;t=9}}while(0);e:do{if((t|0)==9){n=e+696|0;t=Xi[n+4>>2]|0;r=i+224|0;Xi[r>>2]=Xi[n>>2];Xi[r+4>>2]=t;r=i+304|0;if((Xi[r>>2]|0)==2)Xi[r>>2]=Xi[e+388>>2];r=i+308|0;if((Xi[r>>2]|0)==2)Xi[r>>2]=Xi[e+392>>2];if((Lg(i)|0)==2)Ig(i,Xi[e+396>>2]|0);if(!(Hg(i)|0))Bg(i,Xi[e+400>>2]|0);r=i+316|0;if(!(Xi[r>>2]|0))Xi[r>>2]=Xi[e+404>>2];switch(Xi[(Xi[e+12>>2]|0)+8>>2]|0){case 0:{Xi[i+80>>2]=Xi[e+144>>2];l=i+92|0;if(!(Xi[l>>2]|0)){t=e+228|0;u=Xi[t+4>>2]|0;h=l;Xi[h>>2]=Xi[t>>2];Xi[h+4>>2]=u}r=Xi[i+68>>2]|0;if(!r){r=0;break e}f=Xi[i+72>>2]|0;if(!f){r=0;break e}Xi[o>>2]=Xi[l>>2];Xi[o+4>>2]=Xi[l+4>>2];if((wM(r,f,o)|0)>=0){r=0;break e}r=i+96|0;h=Xi[r>>2]|0;Xi[s>>2]=Xi[l>>2];Xi[s+4>>2]=h;nA(e,24,143347,s);Xi[i+92>>2]=0;Xi[r>>2]=1;r=0;break e}case 1:break;default:{r=0;break e}}r=i+232|0;if(!(Xi[r>>2]|0))Xi[r>>2]=Xi[e+416>>2];r=i+80|0;if((Xi[r>>2]|0)<0)Xi[r>>2]=Xi[e+424>>2];l=i+240|0;s=l;do{if((Xi[s>>2]|0)==0&(Xi[s+4>>2]|0)==0){a=e+448|0;f=a;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;if((r|0)==0&(f|0)==0){r=Xi[e+420>>2]|0;if(r>>>0<=64)break;Xi[h>>2]=r;nA(e,16,143413,h);r=-38;break e}r=JA(r,f)|0;if((r|0)==(Xi[e+420>>2]|0)){u=a;h=Xi[u+4>>2]|0;e=l;Xi[e>>2]=Xi[u>>2];Xi[e+4>>2]=h;break}else{nA(e,16,143376,u);r=-22;break e}}else r=Xi[e+420>>2]|0}while(0);Cg(i,r);r=0}}while(0);Ue=w;return r|0}function mO(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;u=Ue;Ue=Ue+16|0;s=u+8|0;f=u;t=Xi[e+704>>2]|0;o=e+8|0;do{if(!(Xi[o>>2]|0)){a=e+124|0;n=e+128|0;if((Gg(Xi[a>>2]|0,Xi[n>>2]|0,0,e)|0)>=0?(Xi[e+144>>2]|0)>=0:0){if(Xi[o>>2]|0){l=1;a=9;break}l=i+68|0;f=i+72|0;if((Xi[l>>2]|0)>=1?(Xi[f>>2]|0)>=1:0){l=1;a=9;break}w=Xi[a>>2]|0;h=Xi[e+792>>2]|0;a=0-(0-(Xi[e+132>>2]|0)>>h)|0;Xi[l>>2]=(w|0)>(a|0)?w:a;a=Xi[n>>2]|0;l=0-(0-(Xi[e+136>>2]|0)>>h)|0;Xi[f>>2]=(a|0)>(l|0)?a:l;l=0;a=9;break}nA(e,16,143437,f);f=-22;a=18}else{l=1;a=9}}while(0);if((a|0)==9){f=_O(e,i)|0;if((f|0)>=0){if(t){f=Xi[t+24>>2]|0;if(!f)a=14;else f=eV[f&7](e,i)|0}else{Xi[e+888>>2]=Xi[e+144>>2];a=14}if((a|0)==14)f=Wz[Xi[e+472>>2]&7](e,i,r)|0;if(!(Xi[o>>2]|l)){Xi[i+68>>2]=Xi[e+124>>2];Xi[i+72>>2]=Xi[e+128>>2]}if((f|0)<0)a=18}else a=18}if((a|0)==18){nA(e,16,143481,s);Xi[i+72>>2]=0;Xi[i+68>>2]=0}Ue=u;return f|0}function pO(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;if((l|0)>0){n=(f|0)==0;o=0;do{t=r+(Zi(o,a)|0)|0;t=eV[i&7](e,t)|0;if(!n)Xi[f+(o<<2)>>2]=t;o=o+1|0}while((o|0)!=(l|0))}return 0}function FO(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;if((l|0)>0){a=(f|0)==0;t=0;do{n=lV[i&3](e,r,t,0)|0;if(!a)Xi[f+(t<<2)>>2]=n;t=t+1|0}while((t|0)!=(l|0))}return 0}function yO(e,i){e=e|0;i=i|0;e=Xi[i>>2]|0;e:do{if((e|0)==-1)i=-1;else{while(1){e=Xi[(Wg(e)|0)+8>>2]|0;if((e&8|0)==0&0==0)break;i=i+4|0;e=Xi[i>>2]|0;if((e|0)==-1){i=-1;break e}}i=Xi[i>>2]|0}}while(0);return i|0}function OO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;_=Ue;Ue=Ue+64|0;b=_+40|0;v=_+32|0;d=_+24|0;c=_+16|0;a=_;E=_+52|0;l=0;while(1){f=l+1|0;if((Xi[i+(l<<2)>>2]|0)==-1)break;else l=f}if(!l){Xi[a>>2]=143502;Xi[a+4>>2]=143120;Xi[a+8>>2]=1066;nA(0,0,150445,a);$e()}Xi[e+888>>2]=Xi[i+(l+-1<<2)>>2];if(f>>>0<=536870910){f=f<<2;l=rA(f)|0;Xi[E>>2]=l;if(!l)r=-1;else{qT(l|0,i|0,f|0)|0;w=e+704|0;n=e+64|0;t=e+156|0;o=e+12|0;s=e+48|0;u=e+808|0;h=e+672|0;e:while(1){f=Xi[w>>2]|0;if(f|0?(k=Xi[f+52>>2]|0,k|0):0)Yz[k&15](e)|0;vA((Xi[n>>2]|0)+44|0);Xi[w>>2]=0;i=eV[Xi[t>>2]&7](e,l)|0;f=Wg(i)|0;if(!f){r=-1;break}if(0==0?(Xi[f+8>>2]&8|0)==0:0){r=i;break}if(Xi[(Xi[o>>2]|0)+16>>2]&128|0){r=i;break}a=Xi[f>>2]|0;l=Xi[s>>2]|0;f=Xi[39614]|0;i:do{if(!f)f=0;else while(1){if((Xi[f+8>>2]|0)==(l|0)?(Xi[f+12>>2]|0)==(i|0):0)break i;f=Xi[f+20>>2]|0;if(!f){f=0;break}}}while(0);if(Xi[u>>2]&1|0)nA(e,24,143509,c);do{if(!f){Xi[d>>2]=a;nA(e,16,143613,d)}else{if(Xi[f+16>>2]&512|0?(Xi[h>>2]|0)>-2:0){Xi[v>>2]=Xi[f>>2];nA(e,24,143666,v);break}l=Xi[f+56>>2]|0;if(l|0?(a=iA(l)|0,Xi[(Xi[n>>2]|0)+44>>2]=a,(a|0)==0):0)break;l=Xi[f+48>>2]|0;if(!l){r=i;S=32;break e}if((Yz[l&15](e)|0)>=0){r=i;S=32;break e}vA((Xi[n>>2]|0)+44|0)}}while(0);l=Xi[E>>2]|0;f=Xi[l>>2]|0;if((f|0)==(i|0))a=0;else{a=0;do{if((f|0)==-1){S=34;break e}a=a+1|0;f=Xi[l+(a<<2)>>2]|0}while((f|0)!=(i|0))}while(1){f=a+1|0;Xi[l+(a<<2)>>2]=Xi[l+(f<<2)>>2];l=Xi[E>>2]|0;if((Xi[l+(a<<2)>>2]|0)==-1)continue e;else a=f}}if((S|0)==32)Xi[w>>2]=f;else if((S|0)==34){Xi[b>>2]=143701;Xi[b+4>>2]=143120;Xi[b+8>>2]=1102;nA(0,0,150445,b);$e()}vA(E)}}else{Xi[E>>2]=0;r=-1}Ue=_;return r|0}function AO(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;do{if((Xi[e+100>>2]&1|0)==0?(Xi[e+76>>2]|0)!=0:0){if(!(Xi[39611]|0)){Xi[i>>2]=143731;Xi[i+4>>2]=143120;Xi[i+8>>2]=3349;nA(0,0,150445,i);$e()}Xi[39611]=0;Xi[39615]=(Xi[39615]|0)+-1;e=Xi[39616]|0;if(e|0?eV[e&7](158468,2)|0:0){e=-1;break}e=0}else e=0}while(0);Ue=r;return e|0}function gO(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;Z=Ue;Ue=Ue+832|0;z=Z+320|0;x=Z+288|0;K=Z+272|0;U=Z+264|0;B=Z+256|0;H=Z+248|0;I=Z+232|0;C=Z+224|0;D=Z+208|0;N=Z+192|0;R=Z+184|0;M=Z+176|0;g=Z+168|0;A=Z+152|0;O=Z+144|0;y=Z+136|0;F=Z+128|0;p=Z+120|0;_=Z+112|0;S=Z+104|0;E=Z+96|0;v=Z+88|0;c=Z+80|0;b=Z+72|0;d=Z+64|0;k=Z+48|0;j=Z+40|0;w=Z+32|0;h=Z+24|0;o=Z+16|0;n=Z+8|0;a=Z;J=Z+312|0;V=Z+304|0;Y=Z+296|0;Xi[J>>2]=0;X=e+64|0;do{if(!(Xi[X>>2]|0)){q=e+12|0;f=Xi[q>>2]|0;l=(f|0)==0;if(!i)if(l){nA(e,16,143749,a);f=-22;break}else W=f;else if(l|(f|0)==(i|0))W=i;else{J=Xi[i>>2]|0;Xi[n>>2]=Xi[f>>2];Xi[n+4>>2]=J;nA(e,16,143787,n);f=-22;break}if((Xi[e+104>>2]|0)>>>0<=268435423){G=(r|0)!=0;if(G)Og(J,Xi[r>>2]|0,0)|0;f=MO(e,W)|0;if((f|0)>=0){L=iA(48)|0;Xi[X>>2]=L;e:do{if(!L)f=-12;else{L=iA(88)|0;Xi[(Xi[X>>2]|0)+16>>2]=L;i:do{if((L|0)!=0?(L=xg()|0,Xi[(Xi[X>>2]|0)+12>>2]=L,(L|0)!=0):0){P=W+52|0;f=Xi[P>>2]|0;L=e+60|0;if((f|0)>0){if(!(Xi[L>>2]|0)){l=iA(f)|0;Xi[L>>2]=l;if(!l){f=-12;break e}f=W+44|0;i=Xi[f>>2]|0;if(i){Xi[l>>2]=i;YM(l)}}else f=W+44|0;if(Xi[f>>2]|0?(t=GM(Xi[L>>2]|0,J)|0,(t|0)<0):0){f=t;break}}else Xi[L>>2]=0;f=GM(e,J)|0;if((f|0)>=0){l=e+960|0;i=Xi[l>>2]|0;if(i|0?(DA(Xi[W>>2]|0,i,44)|0)<1:0){f=Xi[l>>2]|0;Xi[o>>2]=Xi[W>>2];Xi[o+4>>2]=f;nA(e,16,144046,o);f=-22;break}o=e+132|0;l=Xi[o>>2]|0;r:do{if((l|0)!=0?(s=e+136|0,u=Xi[s>>2]|0,(u|0)!=0):0){if(Xi[e+124>>2]|0?Xi[e+128>>2]|0:0)switch(Xi[e+48>>2]|0){case 190:case 93:case 28:{T=38;break r}default:{}}f=Gg(l,u,0,e)|0;T=(f|0)<0;m=T?0:u;l=T?0:l;Xi[o>>2]=l;Xi[s>>2]=m;T=Xi[e+792>>2]|0;a=0-(0-l>>T)|0;Xi[e+124>>2]=a;Xi[e+128>>2]=0-(0-m>>T);T=36}else T=33}while(0);if((T|0)==33){i=e+124|0;a=Xi[i>>2]|0;if(a){n=e+128|0;t=Xi[n>>2]|0;if(!t)T=36;else{f=Gg(a,t,0,e)|0;l=(f|0)<0;m=l?0:t;l=l?0:a;Xi[o>>2]=l;Xi[e+136>>2]=m;T=Xi[e+792>>2]|0;a=0-(0-l>>T)|0;Xi[i>>2]=a;Xi[n>>2]=0-(0-m>>T);T=36}}else{a=0;T=36}}if((T|0)==36){if((f|0)<0)break;if(!l){l=e+136|0;i=Xi[l>>2]|0;if(!i)if((a|0)==0?(Xi[e+128>>2]|0)==0:0)u=e+124|0;else{a=l;l=0;i=0;T=42}else{a=l;l=0;T=42}}else T=38}if((T|0)==38){i=e+136|0;a=i;i=Xi[i>>2]|0;T=42}do{if((T|0)==42){n=e+124|0;if((Gg(l,i,0,e)|0)>=0){l=e+128|0;if((Gg(Xi[n>>2]|0,Xi[l>>2]|0,0,e)|0)>=0){l=Xi[n>>2]|0;if((l|0)<=0){u=n;break}i=Xi[e+128>>2]|0;if((i|0)<=0){u=n;break}a=e+228|0;Xi[z>>2]=Xi[a>>2];Xi[z+4>>2]=Xi[a+4>>2];if((wM(l,i,z)|0)>=0){u=n;break}u=e+232|0;m=Xi[u>>2]|0;Xi[w>>2]=Xi[a>>2];Xi[w+4>>2]=m;nA(e,24,143347,w);Xi[e+228>>2]=0;Xi[u>>2]=1;u=n;break}}else l=e+128|0;nA(e,24,144080,h);Gg(0,0,0,e)|0;Xi[o>>2]=0;Xi[a>>2]=0;Xi[n>>2]=0;Xi[l>>2]=0;u=n}}while(0);if(W|0?Xi[W+88>>2]|0:0)vA(e+848|0);w=e+420|0;if((Xi[w>>2]|0)>>>0>64)f=-22;else{Xi[q>>2]=W;m=e+8|0;a=Xi[m>>2]|0;if((a|0)!=-1?(a|0)!=(Xi[W+8>>2]|0):0){i=e+48|0;s=i;i=Xi[i>>2]|0;l=a}else{l=e+48|0;i=Xi[l>>2]|0;if(!i){h=Xi[W+8>>2]|0;Xi[m>>2]=h;i=Xi[W+12>>2]|0;Xi[l>>2]=i;s=l;l=h}else{s=l;l=a}}a=W+12|0;do{if((i|0)==(Xi[a>>2]|0)){if(!((l|0)==4?1:(l|0)==(Xi[W+8>>2]|0)))break;Xi[e+432>>2]=0;h=e+900|0;Xi[h>>2]=gN(i)|0;do{if(Xi[(Xi[q>>2]|0)+16>>2]&512|0){if((Xi[e+672>>2]|0)<=-2)break;f=W+80|0;if(!(Xi[f>>2]|0))l=Xi[W+84>>2]|0?144147:144155;else l=144147;K=Xi[W>>2]|0;Xi[k>>2]=l;Xi[k+4>>2]=K;Xi[k+8>>2]=-2;nA(e,16,144163,k);do{if(!(Xi[f>>2]|0)){f=Xi[a>>2]|0;if(Xi[W+84>>2]|0){T=69;break}f=RO(f,0)|0}else{f=Xi[a>>2]|0;T=69}}while(0);if((T|0)==69)f=RO(f,1)|0;if(Xi[f+16>>2]&512|0){f=-733130664;break i}f=Xi[f>>2]|0;Xi[d>>2]=l;Xi[d+4>>2]=f;nA(e,16,144273,d);f=-733130664;break i}}while(0);do{if((Xi[m>>2]|0)==1){i=e+108|0;l=e+112|0;if(Xi[i>>2]|0?Xi[l>>2]|0:0)break;Xi[i>>2]=1;Xi[l>>2]=Xi[e+416>>2]}}while(0);nA(e,24,144322,x);if(!(Xi[W+16>>2]&32768))Xi[e+800>>2]=1;l=Xi[q>>2]|0;i=qi[l+40>>0]|0;if((Xi[e+792>>2]|0)>>>0>i>>>0){Xi[b>>2]=i;nA(e,16,144389,b);f=-22;break i}if(Xi[e+684>>2]|0){nA(e,24,144450,c);l=Xi[q>>2]|0}do{if(l|0){if((Xi[l+80>>2]|0)==0?(Xi[l+84>>2]|0)==0:0)break;d=xg()|0;Xi[e+796>>2]=d;if(!d){f=-12;break i}n=Xi[q>>2]|0;l=Xi[n+32>>2]|0;do{if(!l)t=n;else{a=Xi[l>>2]|0;r:do{if((a|0)==-1){i=l;a=n;l=0}else{o=e+424|0;i=l;t=n;l=0;while(1){n=Xi[o>>2]|0;if((n|0)==(a|0)){a=t;break r}if((Xi[w>>2]|0)==1){d=qM(n)|0;d=(d|0)==(qM(Xi[(Xi[(Xi[q>>2]|0)+32>>2]|0)+(l<<2)>>2]|0)|0);a=Xi[q>>2]|0;i=Xi[a+32>>2]|0;if(d)break;else n=a}else n=t;l=l+1|0;a=Xi[i+(l<<2)>>2]|0;if((a|0)==-1){a=n;break r}else t=n}Xi[o>>2]=Xi[i+(l<<2)>>2]}}while(0);if((Xi[i+(l<<2)>>2]|0)!=-1){t=a;break}f=e+424|0;Xi[v>>2]=Xi[f>>2];cR(z,128,144519,v)|0;f=VM(Xi[f>>2]|0)|0;Xi[E>>2]=f|0?f:z;nA(e,16,144522,E);f=-22;break i}}while(0);a=Xi[t+24>>2]|0;r:do{if(a|0){l=Xi[a>>2]|0;f:do{if((l|0)!=-1){n=Xi[e+144>>2]|0;i=0;while(1){if((n|0)==(l|0))break;i=i+1|0;l=Xi[a+(i<<2)>>2]|0;if((l|0)==-1)break f}switch(n|0){case-1:break f;case 14:case 34:case 13:case 315:case 12:break;default:break r}Xi[e+400>>2]=2;break r}}while(0);switch(Xi[s>>2]|0){case 10:case 8:{if((Xi[e+672>>2]|0)<0)break r;break}default:{}}f=e+144|0;Xi[S>>2]=Xi[f>>2];cR(z,128,144519,S)|0;f=zM(Xi[f>>2]|0)|0;Xi[_>>2]=f|0?f:z;nA(e,16,144578,_);f=-22;break i}}while(0);a=Xi[t+28>>2]|0;r:do{if(a|0){l=Xi[a>>2]|0;f:do{if(l|0){n=Xi[e+416>>2]|0;i=0;while(1){if((n|0)==(l|0))break;i=i+1|0;l=Xi[a+(i<<2)>>2]|0;if(!l)break f}if(n|0)break r}}while(0);Xi[p>>2]=Xi[e+416>>2];nA(e,16,144633,p);f=-22;break i}}while(0);l=Xi[e+416>>2]|0;if((l|0)<0){Xi[F>>2]=l;nA(e,16,144633,F);f=-22;break i}n=Xi[t+36>>2]|0;s=e+448|0;r:do{if(n|0){o=s;t=Xi[o>>2]|0;o=Xi[o+4>>2]|0;if((t|0)==0&(o|0)==0){nA(e,24,144676,y);break}i=n;l=Xi[i>>2]|0;i=Xi[i+4>>2]|0;f:do{if(!((l|0)==0&(i|0)==0)){a=0;while(1){if((t|0)==(l|0)&(o|0)==(i|0))break;a=a+1|0;i=n+(a<<3)|0;l=Xi[i>>2]|0;i=Xi[i+4>>2]|0;if((l|0)==0&(i|0)==0)break f}if(!((t|0)==0&(o|0)==0))break r}}while(0);ZA(z,512,-1,t,o);Xi[O>>2]=z;nA(e,16,144706,O);f=-22;break i}}while(0);a=s;i=Xi[a>>2]|0;a=Xi[a+4>>2]|0;l=Xi[w>>2]|0;do{if(!((i|0)==0&(a|0)==0)){i=JA(i,a)|0;if(!l){Xi[w>>2]=i;l=i;break}if((i|0)==(Xi[w>>2]|0)){l=i;break}f=s;ZA(z,512,-1,Xi[f>>2]|0,Xi[f+4>>2]|0);f=Xi[w>>2]|0;Xi[A>>2]=z;Xi[A+4>>2]=i;Xi[A+8>>2]=f;nA(e,16,144754,A);f=-22;break i}}while(0);if((l|0)<0){Xi[g>>2]=l;nA(e,16,144839,g);f=-22;break i}l=Xi[m>>2]|0;r:do{if(!l){l=Wg(Xi[e+144>>2]|0)|0;a=e+788|0;n=Xi[a>>2]|0;do{if((n|0)>=0){if((n|0)<=8)break;l=l+32|0;i=Xi[l>>2]|0;if((i|0)<9)T=136}else{i=l+32|0;l=i;i=Xi[i>>2]|0;T=136}}while(0);if((T|0)==136){Xi[M>>2]=n;Xi[M+4>>2]=i;nA(e,24,144889,M);Xi[a>>2]=Xi[l>>2]}do{if((Xi[u>>2]|0)>=1){if((Xi[e+128>>2]|0)<1)break;l=Xi[m>>2]|0;break r}}while(0);nA(e,16,144968,R);f=-22;break i}}while(0);do{if(l>>>0<2){i=e+72|0;l=Xi[i>>2]|0;i=Xi[i+4>>2]|0;R=WT(l|0,i|0,-1,-1)|0;M=Ie;if(!(M>>>0<0|(M|0)==0&R>>>0<999))break;R=N;Xi[R>>2]=l;Xi[R+4>>2]=i;R=N+8|0;Xi[R>>2]=l;Xi[R+4>>2]=i;nA(e,24,144988,N)}}while(0);l=e+560|0;if(!(Xi[l>>2]|0))Xi[l>>2]=((Xi[e+512>>2]|0)*3|0)/4|0;l=Xi[e+116>>2]|0;if(!l)break;i=Xi[e+108>>2]|0;if(!i)break;if((l|0)<=(2147483647/(i|0)|0|0))break;K=Xi[e+112>>2]|0;Xi[D>>2]=l;Xi[D+4>>2]=i;Xi[D+8>>2]=K;nA(e,16,145041,D);break i}}while(0);D=e+904|0;Xi[D>>2]=0;Xi[D+4>>2]=0;Xi[D+8>>2]=0;Xi[D+12>>2]=0;D=e+928|0;Xi[D>>2]=0;Xi[D+4>>2]=-2147483648;D=e+920|0;Xi[D>>2]=0;Xi[D+4>>2]=-2147483648;do{if(Xi[e+92>>2]&8192|0){if(Xi[(Xi[h>>2]|0)+4>>2]|0)break;nA(e,24,145094,C)}}while(0);f=Xi[q>>2]|0;l=Xi[f+76>>2]|0;do{if(l){if(Xi[e+808>>2]&1|0?(Xi[(Xi[X>>2]|0)+36>>2]|0)==0:0)break;f=Yz[l&15](e)|0;if((f|0)<0)break i;f=Xi[q>>2]|0}}while(0);do{if(f|0){if(!((Xi[f+80>>2]|0)==0?!(Xi[f+84>>2]|0):0))Xi[e+120>>2]=Xi[e+876>>2];if(!(Xi[f+88>>2]|0))break;f=e+72|0;C=f;if((Xi[C>>2]|0)==0&(Xi[C+4>>2]|0)==0){D=TO(e)|0;C=f;Xi[C>>2]=D;Xi[C+4>>2]=Ie}i=e+448|0;l=i;f=Xi[l>>2]|0;l=Xi[l+4>>2]|0;do{if((f|0)==0&(l|0)==0)T=170;else{f=JA(f,l)|0;l=Xi[w>>2]|0;if(!l){Xi[w>>2]=f;break}if((f|0)==(l|0)){T=170;break}T=i;ZA(z,512,-1,Xi[T>>2]|0,Xi[T+4>>2]|0);T=Xi[w>>2]|0;Xi[I>>2]=z;Xi[I+4>>2]=f;Xi[I+8>>2]=T;nA(e,24,145157,I);T=i;Xi[T>>2]=0;Xi[T+4>>2]=0;T=170}}while(0);if((T|0)==170)f=Xi[w>>2]|0;if((f|0)<0|f>>>0>64){f=-22;break i}r:do{if(Xi[e+936>>2]|0){if((Xi[m>>2]|0)!=3){nA(e,16,145277,H);f=-22;break i}f=Xi[h>>2]|0;if(Xi[f+16>>2]&65536|0){Xi[B>>2]=Xi[f+8>>2];nA(e,24,145337,B);Xi[e+940>>2]=-1;break}f=e+940|0;switch(Xi[f>>2]|0){case 0:{Xi[f>>2]=1;break}case 1:break;default:break r}nA(e,16,145411,U);f=-38;break i}}while(0);f=e+880|0;if((Xi[f>>2]|0)<=0)break;if((Xi[e+884>>2]|0)<=0)break;Xi[Y>>2]=Xi[e+116>>2];Xi[Y+4>>2]=1;Xi[x>>2]=Xi[f>>2];Xi[x+4>>2]=Xi[f+4>>2];Xi[z>>2]=Xi[Y>>2];Xi[z+4>>2]=Xi[Y+4>>2];vM(V,x,z);z=Xi[V>>2]|0;Y=e+108|0;Xi[Y>>2]=Xi[V+4>>2];Xi[Y+4>>2]=z}}while(0);if((Xi[P>>2]|0)<=0){f=0;break e}f=Xi[L>>2]|0;if(!f){f=0;break e}l=Xi[W+44>>2]|0;if(!l){f=0;break e}if((Xi[f>>2]|0)==(l|0)){f=0;break e}Xi[K>>2]=145511;Xi[K+4>>2]=143120;Xi[K+8>>2]=1588;nA(0,0,150445,K);$e()}}while(0);nA(e,16,144118,j);f=-22}}}else f=-12}while(0);l=Xi[q>>2]|0;if(l|0?Xi[l+100>>2]&2|0:0)Yz[Xi[l+92>>2]&15](e)|0;if(Xi[W+44>>2]|0?Xi[W+52>>2]|0:0)KM(Xi[e+60>>2]|0);KM(e);Vg(e+796|0);yg(J);vA(e+60|0);l=Xi[X>>2]|0;if(l|0){Vg(l+12|0);vA((Xi[X>>2]|0)+16|0)}vA(X);Xi[q>>2]=0}}while(0);AO(W)|0;if(G){yg(r);Xi[r>>2]=Xi[J>>2]}}}else f=-22}else f=0}while(0);Ue=Z;return f|0}function MO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+32|0;n=t+16|0;a=t+8|0;l=t;do{if((Xi[i+100>>2]&1|0)==0?(Xi[i+76>>2]|0)!=0:0){f=Xi[39616]|0;if(f|0?eV[f&7](158468,1)|0:0){r=-1;break}f=Xi[39615]|0;Xi[39615]=f+1;if(!f)if(!(Xi[39611]|0)){Xi[39611]=1;r=0;break}else{Xi[n>>2]=144027;Xi[n+4>>2]=143120;Xi[n+8>>2]=3339;nA(0,0,150445,n);$e()}else{Xi[l>>2]=Xi[39615];nA(e,16,143863,l);if(!(Xi[39616]|0))nA(e,16,143969,a);Xi[39611]=1;AO(i)|0;r=-22;break}}else r=0}while(0);Ue=t;return r|0}function RO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=Xi[39612]|0;e:do{if(!r)i=0;else{f=(i|0)==0;i=0;do{if(f){if(Xi[r+88>>2]|0)l=7}else if(!((Xi[r+80>>2]|0)==0?(Xi[r+84>>2]|0)==0:0))l=7;if((l|0)==7){l=0;if((Xi[r+12>>2]|0)==(e|0))if(i|0?1:(Xi[r+16>>2]&512|0)==0){i=r;break e}else i=r}r=Xi[r+56>>2]|0}while((r|0)!=0)}}while(0);return i|0}function TO(e){e=e|0;var i=0,r=0,f=0;e:do{switch(Xi[e+8>>2]|0){case 4:case 3:case 2:case 0:{r=e+72|0;i=Xi[r+4>>2]|0;r=Xi[r>>2]|0;break}case 1:{i=Xi[e+48>>2]|0;i:do{switch(i|0){case 69649:{i=2;r=0;break}case 69648:{i=3;r=0;break}case 69638:case 69645:case 69632:case 69633:case 69647:{i=4;r=0;break}default:{r:do{if((i|0)>=65558){if((i|0)<69660){switch(i|0){case 69646:case 69636:case 69655:case 69644:{i=4;r=0;break i}case 65563:{f=7;break r}case 65566:{f=8;break r}case 65564:{f=9;break r}case 65565:{f=10;break r}case 65559:case 65558:break;default:{f=13;break r}}i=64;r=0;break i}if((i|0)>=86071)switch(i|0){case 86072:case 86071:{i=4;r=0;break i}case 88072:case 88071:case 88070:case 88069:{f=7;break r}default:{f=13;break r}}if((i|0)<71681)switch(i|0){case 69660:case 69661:{i=4;r=0;break i}default:{f=13;break r}}if((i|0)<71687)switch(i|0){case 71681:{i=4;r=0;break i}default:{f=13;break r}}if((i|0)<83968)switch(i|0){case 71687:{i=4;r=0;break i}default:{f=13;break r}}else switch(i|0){case 83968:{f=7;break r}default:{f=13;break r}}}else switch(i|0){case 65553:case 65541:case 65540:case 65542:case 65543:{f=7;break}case 65538:case 65539:case 65554:case 65536:case 65537:{f=8;break}case 65550:case 65551:case 65548:case 65549:case 65552:{f=9;break}case 65557:case 65556:case 65546:case 65547:case 65544:case 65545:{f=10;break}default:f=13}}while(0);if((f|0)==7){i=8;r=0;break i}else if((f|0)==8){i=16;r=0;break i}else if((f|0)==9){i=24;r=0;break i}else if((f|0)==10){i=32;r=0;break i}else if((f|0)==13){r=e+72|0;i=Xi[r+4>>2]|0;r=Xi[r>>2]|0;break e}}}}while(0);f=Xi[e+416>>2]|0;e=Xi[e+420>>2]|0;r=rN(rN(f|0,((f|0)<0)<<31>>31|0,i|0,r|0)|0,Ie|0,e|0,((e|0)<0)<<31>>31|0)|0;i=Ie;break}default:{i=0;r=0}}}while(0);Ie=i;return r|0}function NO(e){e=e|0;return RO(e,0)|0}function DO(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;S=Ue;Ue=Ue+144|0;d=S+128|0;c=S+120|0;b=S+88|0;u=S+80|0;o=S+72|0;w=S;v=S+112|0;E=S+104|0;h=e+64|0;k=Xi[h>>2]|0;a=w;n=f;t=a+72|0;do{Xi[a>>2]=Xi[n>>2];a=a+4|0;n=n+4|0}while((a|0)<(t|0));t=e+12|0;a=Xi[t>>2]|0;e:do{if(a){if(Xi[a+8>>2]|0){nA(e,16,145568,o);l=-22;break}Xi[r>>2]=0;a=Xi[e+132>>2]|0;n=Xi[e+136>>2]|0;if(a|n|0?Gg(a,n,0,e)|0:0){l=-22;break}Yg(i);if(((Xi[(Xi[t>>2]|0)+16>>2]&32|0)==0?(Xi[f+28>>2]|0)==0:0)?(Xi[e+808>>2]&1|0)==0:0)l=0;else s=9;do{if((s|0)==9){o=SN(w)|0;a=CO(e,w)|0;if(!((a|0)<0?(nA(e,16,145768,u),(Xi[e+688>>2]&8|0)!=0):0)){Xi[(Xi[h>>2]|0)+24>>2]=w;a=lV[Xi[(Xi[t>>2]|0)+88>>2]&3](e,i,r,w)|0;n=Xi[t>>2]|0;if(!(Xi[n+100>>2]&4)){_=f+16|0;s=Xi[_+4>>2]|0;u=i+120|0;Xi[u>>2]=Xi[_>>2];Xi[u+4>>2]=s}if(!(Xi[e+180>>2]|0)){n=f+56|0;Ng(i,Xi[n>>2]|0,Xi[n+4>>2]|0);n=Xi[t>>2]|0}if(!(Xi[n+16>>2]&2)){n=i+92|0;if(!(Xi[n>>2]|0)){s=e+228|0;u=Xi[s+4>>2]|0;_=n;Xi[_>>2]=Xi[s>>2];Xi[_+4>>2]=u}n=i+68|0;if(!(Xi[n>>2]|0))Xi[n>>2]=Xi[e+124>>2];n=i+72|0;if(!(Xi[n>>2]|0))Xi[n>>2]=Xi[e+128>>2];n=i+80|0;if((Xi[n>>2]|0)==-1)Xi[n>>2]=Xi[e+144>>2]}}Xi[(Xi[h>>2]|0)+24>>2]=0;if((o|0)!=0?(dN(w),(a|0)==(Xi[w+28>>2]|0)):0)a=Xi[f+28>>2]|0;if(!(Xi[r>>2]|0)){Yg(i);l=a;break}if((Xi[e+476>>2]|0)==0?(l=PO(k,i)|0,(l|0)<0):0)break e;_=e+432|0;Xi[_>>2]=(Xi[_>>2]|0)+1;_=i+112|0;l=i+120|0;l=LO(e,Xi[_>>2]|0,Xi[_+4>>2]|0,Xi[l>>2]|0,Xi[l+4>>2]|0)|0;Rg(i,l,Ie);l=a}}while(0);_=Xi[i+64>>2]|0;if(!((_|0)==0|(_|0)==(i|0))){Xi[b>>2]=145803;Xi[b+4>>2]=143120;Xi[b+8>>2]=2179;nA(0,0,150445,b);$e()}a=e+880|0;if((Xi[a>>2]|0)>0?(Xi[e+884>>2]|0)>0:0){Xi[E>>2]=Xi[e+116>>2];Xi[E+4>>2]=1;Xi[c>>2]=Xi[a>>2];Xi[c+4>>2]=Xi[a+4>>2];Xi[d>>2]=Xi[E>>2];Xi[d+4>>2]=Xi[E+4>>2];vM(v,c,d);E=Xi[v>>2]|0;_=e+108|0;Xi[_>>2]=Xi[v+4>>2];Xi[_+4>>2]=E}}else l=-22}while(0);Ue=S;return l|0}function CO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;u=Ue;Ue=Ue+32|0;s=u+24|0;t=u+16|0;l=u+8|0;r=u;o=u+28|0;Xi[o>>2]=0;a=EN(i,2,o)|0;e:do{if(!a)i=0;else{if(!(Xi[(Xi[e+12>>2]|0)+16>>2]&16384)){nA(e,16,145598,r);i=-22;break}f=Xi[o>>2]|0;i:do{if((f|0)>=4){i=a+4|0;n=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;r=f+-4|0;Xi[o>>2]=r;do{if(n&1){if((r|0)<4)break i;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;if((i|0)<1){nA(e,16,145691,l);i=-1094995529;break e}else{Xi[e+420>>2]=i;r=f+-8|0;Xi[o>>2]=r;f=16;i=a+8|0;break}}else f=12}while(0);if(n&2){if((r|0)<8)break;l=i;h=l;l=l+4|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;i=e+448|0;Xi[i>>2]=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;Xi[i+4>>2]=l;r=r+-8|0;Xi[o>>2]=r;i=a+f|0}do{if(n&4){if((r|0)<4)break i;f=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;if((f|0)<1){nA(e,16,145713,t);i=-1094995529;break e}else{Xi[e+416>>2]=f;r=r+-4|0;Xi[o>>2]=r;i=i+4|0;break}}}while(0);if(n&8|0){if((r|0)<8)break;a=i+4|0;n=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;t=e+124|0;Xi[t>>2]=n;a=qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24;s=e+128|0;Xi[s>>2]=a;Xi[o>>2]=r+-8;i=Gg(n,a,0,e)|0;h=(i|0)<0;o=h?0:a;n=h?0:n;Xi[e+132>>2]=n;Xi[e+136>>2]=o;e=Xi[e+792>>2]|0;Xi[t>>2]=0-(0-n>>e);Xi[s>>2]=0-(0-o>>e);if(h)break e}i=0;break e}}while(0);nA(e,16,145733,s);i=-1094995529}}while(0);Ue=u;return i|0}function PO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;f=e+12|0;Yg(Xi[f>>2]|0);fM(Xi[f>>2]|0,i);e=lM(i,Xi[f>>2]|0)|0;e:do{if((e|0)>=0){e=Xi[f>>2]|0;Xi[i>>2]=Xi[e>>2];Xi[i+4>>2]=Xi[e+4>>2];Xi[i+8>>2]=Xi[e+8>>2];Xi[i+12>>2]=Xi[e+12>>2];Xi[i+16>>2]=Xi[e+16>>2];Xi[i+20>>2]=Xi[e+20>>2];Xi[i+24>>2]=Xi[e+24>>2];Xi[i+28>>2]=Xi[e+28>>2];e=i+32|0;r=(Xi[f>>2]|0)+32|0;Xi[e>>2]=Xi[r>>2];Xi[e+4>>2]=Xi[r+4>>2];Xi[e+8>>2]=Xi[r+8>>2];Xi[e+12>>2]=Xi[r+12>>2];Xi[e+16>>2]=Xi[r+16>>2];Xi[e+20>>2]=Xi[r+20>>2];Xi[e+24>>2]=Xi[r+24>>2];Xi[e+28>>2]=Xi[r+28>>2];e=Xi[f>>2]|0;do{if((Xi[e+64>>2]|0)!=(e|0)){e=(Dg(e)|0)<<2;if(!e){Yg(i);e=-558323010;break e}r=rA(e)|0;Xi[i+64>>2]=r;if(!r){Yg(i);e=-12;break e}else{f=Xi[f>>2]|0;qT(r|0,Xi[f+64>>2]|0,e|0)|0;e=f;break}}else Xi[i+64>>2]=i}while(0);Xi[i+80>>2]=Xi[e+80>>2];Xi[i+68>>2]=Xi[e+68>>2];Xi[i+72>>2]=Xi[e+72>>2];l=e+240|0;r=Xi[l+4>>2]|0;f=i+240|0;Xi[f>>2]=Xi[l>>2];Xi[f+4>>2]=r;Xi[i+76>>2]=Xi[e+76>>2];Cg(i,Dg(e)|0);e=0}}while(0);return e|0}function LO(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0;n=(f|0)==0&(l|0)==-2147483648;if(n)if((i|0)==0&(r|0)==-2147483648)a=0;else{t=e+928|0;Xi[t>>2]=i;Xi[t+4>>2]=r;t=5}else{a=e+928|0;u=a;h=Xi[u+4>>2]|0;o=e+912|0;s=o;s=WT(((h|0)>(l|0)|((h|0)==(l|0)?(Xi[u>>2]|0)>>>0>=f>>>0:0))&1|0,0,Xi[s>>2]|0,Xi[s+4>>2]|0)|0;Xi[o>>2]=s;Xi[o+4>>2]=Ie;Xi[a>>2]=f;Xi[a+4>>2]=l;if((i|0)==0&(r|0)==-2147483648){a=e+920|0;Xi[a>>2]=f;Xi[a+4>>2]=l;a=0}else t=5}if((t|0)==5){a=e+920|0;s=a;o=Xi[s+4>>2]|0;h=e+904|0;u=h;u=WT(((o|0)>(r|0)|((o|0)==(r|0)?(Xi[s>>2]|0)>>>0>=i>>>0:0))&1|0,0,Xi[u>>2]|0,Xi[u+4>>2]|0)|0;Xi[h>>2]=u;Xi[h+4>>2]=Ie;Xi[a>>2]=i;Xi[a+4>>2]=r;a=1}u=e+904|0;o=Xi[u+4>>2]|0;h=e+912|0;s=Xi[h+4>>2]|0;h=a&(n|((o|0)<(s|0)|((o|0)==(s|0)?(Xi[u>>2]|0)>>>0<=(Xi[h>>2]|0)>>>0:0)));Ie=h?r:l;return(h?i:f)|0}function IO(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;if(e|0){a=e+64|0;i=Xi[a>>2]|0;if(i|0){l=Xi[i+16>>2]|0;f=Xi[e+12>>2]|0;if((f|0)!=0?(r=Xi[f+92>>2]|0,(r|0)!=0):0){Yz[r&15](e)|0;i=Xi[a>>2]|0}Xi[i+32>>2]=0;vA(i+28|0);Vg((Xi[a>>2]|0)+12|0);YA(l);YA(l+4|0);YA(l+8|0);YA(l+12|0);vA((Xi[a>>2]|0)+16|0);i=Xi[e+704>>2]|0;if(i|0?(n=Xi[i+52>>2]|0,n|0):0)Yz[n&15](e)|0;vA((Xi[a>>2]|0)+44|0);vA(a)}i=e+972|0;r=e+968|0;if((Xi[i>>2]|0)>0){f=0;do{vA((Xi[r>>2]|0)+(f*12|0)|0);f=f+1|0}while((f|0)<(Xi[i>>2]|0))}vA(r);Xi[i>>2]=0;i=e+60|0;r=Xi[i>>2]|0;f=e+12|0;if((r|0?(t=Xi[f>>2]|0,t|0):0)?Xi[t+44>>2]|0:0)KM(r);KM(e);vA(i);i=Xi[f>>2]|0;do{if(i|0){if((Xi[i+80>>2]|0)==0?(Xi[i+84>>2]|0)==0:0)break;vA(e+100|0);Vg(e+796|0)}}while(0);Xi[f>>2]=0;Xi[e+808>>2]=0}return 0}function HO(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;Xi[e+4>>2]=Xi[i+4>>2];r=qg(Xi[e>>2]|0,Xi[i>>2]|0)|0;if((r|0)>=0){f=e+8|0;if(Xi[f>>2]|0){Xi[l>>2]=145870;Xi[l+4>>2]=143120;Xi[l+8>>2]=3396;nA(0,0,150445,l);$e()}r=Xi[i+8>>2]|0;if((r|0)!=0?(l=BA(r)|0,Xi[f>>2]=l,(l|0)==0):0){r=Xi[e>>2]|0;if(!r)r=-12;else{Yg(r);r=-12}}else r=0}Ue=a;return r|0}function BO(e,i){e=e|0;i=i|0;e=Xi[i>>2]|0;if(e|0)Yg(e);return}function UO(e,i){e=e|0;i=i|0;return OO(e,i)|0}function xO(e,i,r){e=e|0;i=i|0;r=r|0;Xi[i+4>>2]=e;return mO(e,Xi[i>>2]|0,r)|0}function zO(e){e=e|0;return}function VO(e,i,r){e=e|0;i=i|0;r=r|0;return}function YO(e,i,r){e=e|0;i=i|0;r=r|0;return}function jO(e){e=e|0;return 1}function KO(e,i){e=e|0;i=i|0;return 0}function WO(e){e=e|0;return}function GO(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return}function XO(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return}function qO(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=Ue;Ue=Ue+16|0;f=a;if(e>>>0>i>>>0){Xi[f>>2]=145885;Xi[f+4>>2]=143120;Xi[f+8>>2]=3496;nA(0,0,150445,f);$e()}if(e>>>0<i>>>0){n=Xi[r>>2]<<8;l=e+1|0;f=qi[e>>0]|n;Xi[r>>2]=f;if(!((l|0)==(i|0)|(n|0)==256)){n=f<<8;f=e+2|0;l=qi[l>>0]|n;Xi[r>>2]=l;if(!((f|0)==(i|0)|(n|0)==256)){n=l<<8;l=e+3|0;Xi[r>>2]=qi[f>>0]|n;if((l|0)==(i|0)|(n|0)==256)f=l;else{e:do{if(l>>>0<i>>>0){f=l;do{n=Wi[f+-1>>0]|0;l=n&255;do{if((n&255)<=1)if(!(Wi[f+-2>>0]|0)){e=f+1|0;if(!(qi[f+-3>>0]|l+-1)){f=e;break e}else{f=e;break}}else{f=f+2|0;break}else f=f+3|0}while(0)}while(f>>>0<i>>>0)}else f=l}while(0);f=f>>>0>i>>>0?i:f;n=f+-4|0;Xi[r>>2]=ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0}}}else f=l}else f=i;Ue=a;return f|0}function JO(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;if((o|0)!=0&(s|0)!=0){if((t|0)<(s|0)){if((t|0)<=(0-a|0)){m=1-a|0;i=i+(Zi(m-t|0,f)|0)|0;t=m}}else{m=s+-1|0;i=i+(Zi(m-t|0,f)|0)|0;t=m}if((n|0)<(o|0))if((n|0)>(0-l|0)){u=n;v=i}else{v=1-l|0;u=v;v=i+(v-n)|0}else{v=o+-1|0;u=v;v=i+(v-n)|0}c=0-t|0;w=(c|0)<0?0:c;d=0-u|0;m=(d|0)<0?0:d;b=s-t|0;b=(b|0)<(a|0)?b:a;_=o-u|0;S=(_|0)<(l|0);_=S?_:l;E=_-m|0;n=m+(Zi(w,f)|0)|0;u=v+n|0;i=e+m|0;if((w|0)>0){k=(c|0)>0?c:0;h=((d|0)>0?d:0)+(Zi(k,r)|0)|0;o=0;while(1){qT(i|0,u|0,E|0)|0;o=o+1|0;if((o|0)>=(w|0))break;else i=i+r|0}i=e+h|0}else{h=m;k=0}if((k|0)<(b|0)){w=t+-1-s|0;n=~a;n=(w|0)>(n|0)?w:n;w=~n;o=Zi(~k-n|0,r)|0;n=((d|0)>0?d:0)+(Zi(((c|0)>0?~t:-1)-k-n|0,f)|0)|0;t=k;while(1){qT(i|0,u|0,E|0)|0;t=t+1|0;if((t|0)==(w|0))break;else{i=i+r|0;u=u+f|0}}i=e+(h+o)|0;t=w}else t=k;u=v+(n-f)|0;if((t|0)<(a|0)){o=Zi(a-t|0,r)|0;n=i;while(1){qT(n|0,u|0,E|0)|0;t=t+1|0;if((t|0)==(a|0))break;else n=n+r|0}i=i+o|0}if(a|0){o=(m|0)>0;h=_+-1|0;u=i+(0-((Zi(a,r)|0)+m))|0;n=a;while(1){n=n+-1|0;if(o){i=u+m|0;t=0;do{Wi[u+t>>0]=Wi[i>>0]|0;t=t+1|0}while((t|0)<(m|0))}if(S){i=u+h|0;t=_;do{Wi[u+t>>0]=Wi[i>>0]|0;t=t+1|0}while((t|0)<(l|0))}if(!n)break;else u=u+r|0}}}return}function ZO(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;var u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;if((o|0)!=0&(s|0)!=0){if((t|0)<(s|0)){if((t|0)<=(0-a|0)){F=1-a|0;i=i+(Zi(F-t|0,f)|0)|0;t=F}}else{F=s+-1|0;i=i+(Zi(F-t|0,f)|0)|0;t=F}if((n|0)<(o|0))if((n|0)>(0-l|0)){u=n;S=i}else{S=1-l|0;u=S;S=i+(S-n<<1)|0}else{S=o+-1|0;u=S;S=i+(S-n<<1)|0}d=0-t|0;k=(d|0)<0?0:d;v=0-u|0;F=(v|0)<0?0:v;c=s-t|0;c=(c|0)<(a|0)?c:a;p=o-u|0;m=(p|0)<(l|0);p=m?p:l;E=p-F|0;_=F<<1;n=_+(Zi(k,f)|0)|0;u=S+n|0;i=e+_|0;if((k|0)>0){h=E<<1;b=(d|0)>0?d:0;w=Zi(b,r)|0;w=w+((v|0)>0?v<<1:0)|0;o=0;while(1){qT(i|0,u|0,h|0)|0;o=o+1|0;if((o|0)>=(k|0))break;else i=i+r|0}i=e+w|0}else{w=_;b=0}if((b|0)<(c|0)){h=E<<1;k=t+-1-s|0;n=~a;n=(k|0)>(n|0)?k:n;k=~n;o=Zi(~b-n|0,r)|0;n=Zi(((d|0)>0?~t:-1)-b-n|0,f)|0;n=n+((v|0)>0?v<<1:0)|0;t=b;while(1){qT(i|0,u|0,h|0)|0;t=t+1|0;if((t|0)==(k|0))break;else{i=i+r|0;u=u+f|0}}i=e+(w+o)|0;t=k}else t=b;h=S+(n-f)|0;if((t|0)<(a|0)){u=E<<1;o=Zi(a-t|0,r)|0;n=i;while(1){qT(n|0,h|0,u|0)|0;t=t+1|0;if((t|0)==(a|0))break;else n=n+r|0}i=i+o|0}if(a|0){u=(F|0)>0;o=p+-1|0;n=i+(0-((Zi(a,r)|0)+_))|0;while(1){a=a+-1|0;if(u){i=n+(F<<1)|0;t=0;do{Gi[n+(t<<1)>>1]=Gi[i>>1]|0;t=t+1|0}while((t|0)<(F|0))}if(m){i=n+(o<<1)|0;t=p;do{Gi[n+(t<<1)>>1]=Gi[i>>1]|0;t=t+1|0}while((t|0)<(l|0))}if(!a)break;else n=n+r|0}}}return}function QO(e,i){e=e|0;i=i|0;Xi[e+4>>2]=713;Xi[e>>2]=(i|0)<9?2:1;return}function $O(e,i,r){e=e|0;i=i|0;r=r|0;return}function eA(){if(!(Xi[39618]|0)){bN();Xi[39618]=1}return}function iA(e){e=e|0;var i=0;i=rA(e)|0;if(i|0)jT(i|0,0,e|0)|0;return i|0}function rA(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;Xi[i>>2]=0;do{if(((Xi[22291]|0)+-32|0)>>>0>=e>>>0){if(!e){e=rA(1)|0;Xi[i>>2]=e;i=e;break}if(!(zT(i,16,e)|0)){i=Xi[i>>2]|0;break}else{Xi[i>>2]=0;i=0;break}}else i=0}while(0);Ue=r;return i|0}function fA(){var e=0,i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=Ue;Ue=Ue+160|0;i=o;t=o+40|0;n=o+16|0;e=o+12|0;do{if((lA(e,146406)|0)==4)e=Xi[e>>2]|0;else{if((lA(e,146725)|0)==4){e=Xi[e>>2]|0;break}l=155760;a=Xi[l>>2]|0;l=Xi[l+4>>2]|0;if((Xi[22290]|0)>>>0>=121){Xi[i>>2]=146737;Xi[i+4>>2]=146764;Xi[i+8>>2]=75;nA(0,0,150445,i);$e()}r=(a|0)==0&(l|0)==0;e=0;while(1){f=Ve()|0;if((f|0)==(e|0)){e=158488+((Xi[38940]&511)<<2)|0;Xi[e>>2]=(Xi[e>>2]|0)+1;e=f;continue}s=155760;s=WT(Xi[s>>2]|0,Xi[s+4>>2]|0,1,0)|0;i=Ie;u=155760;Xi[u>>2]=s;Xi[u+4>>2]=i;u=158488+((s&511)<<2)|0;Xi[u>>2]=(Xi[u>>2]|0)+(((f-e|0)>>>0)%3294638521|0);e=YT(s|0,i|0,a|0,l|0)|0;i=Ie;if(r)if(i>>>0>0|(i|0)==0&e>>>0>64)break;else{e=f;continue}else if(i>>>0>0|(i|0)==0&e>>>0>4)break;else{e=f;continue}}EA(t,160)|0;mA(t,158488,2048);pA(t,n);e=ZT(Xi[n>>2]|0)|0;e=(ZT(Xi[n+16>>2]|0)|0)+e|0}}while(0);Ue=o;return e|0}function lA(e,i){e=e|0;i=i|0;var r=0;r=Ue;Ue=Ue+16|0;i=aA(i,0,r)|0;if((i|0)==-1)i=-1;else{e=DT(i,e,4)|0;WR(i)|0;i=e}Ue=r;return i|0}function aA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;t=Ue;Ue=Ue+48|0;n=t+16|0;a=t+8|0;l=t;f=t+24|0;Xi[f>>2]=r;if(!(i&64))f=0;else{o=(Xi[f>>2]|0)+(4-1)&~(4-1);r=Xi[o>>2]|0;Xi[f>>2]=o+4;f=r}Xi[l>>2]=f;f=bR(e,i|524288,l)|0;if((f|0)!=-1?(Xi[a>>2]=1,(DR(f,2,a)|0)==-1):0)nA(0,48,146419,n);Ue=t;return f|0}function nA(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;a=t;if(e){l=Xi[e>>2]|0;Xi[a>>2]=f;if(((l|0)!=0?(Xi[l+12>>2]|0)>3280641:0)?(n=Xi[l+16>>2]|0,(i|0)>7&(n|0)!=0):0)i=(Xi[e+n>>2]|0)+i|0}else Xi[a>>2]=f;l=Xi[22292]|0;if(l|0)nV[l&255](e,i,r,a);Ue=t;return}function tA(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;k=Ue;Ue=Ue+5168|0;t=k+24|0;n=k+16|0;l=k;w=k+40|0;a=k+4136|0;o=k+32|0;if((i|0)>-1){s=i&255;h=i>>>8&255}else{s=i;h=0}if((s|0)<=(Xi[22293]|0)){oA(e,s,r,f,w,89176,o);e=w+1024|0;b=Xi[e>>2]|0;f=w+2048|0;r=Xi[f>>2]|0;u=w+3072|0;i=Xi[u>>2]|0;Xi[l>>2]=Xi[w>>2];Xi[l+4>>2]=b;Xi[l+8>>2]=r;Xi[l+12>>2]=i;cR(a,1024,146516,l)|0;i=Xi[39620]|0;if(!i){r=(CT(2)|0)!=0;r=r?1:-1;Xi[39620]=r}else r=i;if((((Xi[22294]|0)!=0?(Xi[39619]&1|0)!=0:0)?(b=(PR(a,236301)|0)!=0,!(b|(Wi[a>>0]|0)==0)):0)?(Wi[a+((wR(a)|0)+-1)>>0]|0)!=13:0){i=(Xi[39621]|0)+1|0;Xi[39621]=i;if((r|0)==1){b=Xi[23093]|0;Xi[n>>2]=i;wT(b,146525,n)|0}}else{i=Xi[39621]|0;if((i|0)>0){b=Xi[23093]|0;Xi[t>>2]=i;wT(b,146561,t)|0;Xi[39621]=0}LR(236301,a)|0;i=Xi[w>>2]|0;r=Wi[i>>0]|0;if(r<<24>>24){do{if((r&255)<8|(r+-14&255)<18)Wi[i>>0]=63;i=i+1|0;r=Wi[i>>0]|0}while(r<<24>>24!=0);i=Xi[w>>2]|0}cA(Xi[o>>2]|0,0,i);i=Xi[e>>2]|0;r=Wi[i>>0]|0;if(r<<24>>24){do{if((r&255)<8|(r+-14&255)<18)Wi[i>>0]=63;i=i+1|0;r=Wi[i>>0]|0}while(r<<24>>24!=0);i=Xi[e>>2]|0}cA(Xi[o+4>>2]|0,0,i);i=Xi[f>>2]|0;r=Wi[i>>0]|0;if(r<<24>>24){do{if((r&255)<8|(r+-14&255)<18)Wi[i>>0]=63;i=i+1|0;r=Wi[i>>0]|0}while(r<<24>>24!=0);i=Xi[f>>2]|0}e=s>>3;e=(e|0)<0?0:(e|0)>7?7:e;cA(e,h,i);i=Xi[u>>2]|0;r=Wi[i>>0]|0;if(r<<24>>24){do{if((r&255)<8|(r+-14&255)<18)Wi[i>>0]=63;i=i+1|0;r=Wi[i>>0]|0}while(r<<24>>24!=0);i=Xi[u>>2]|0}cA(e,h,i)}dA(w+3072|0,0)|0}Ue=k;return}function oA(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;_=Ue;Ue=Ue+32|0;E=_+24|0;b=_+16|0;k=_+8|0;w=_;if(!e)h=0;else h=Xi[e>>2]|0;sA(l,0,1);d=l+1024|0;sA(d,0,1);v=l+2048|0;sA(v,0,1);S=l+3072|0;sA(S,0,65536);u=(n|0)!=0;if(u){Xi[n+4>>2]=16;Xi[n>>2]=16}if((h|0)!=0&(Xi[a>>2]|0)!=0){t=Xi[h+20>>2]|0;do{if(((t|0)!=0?(o=Xi[e+t>>2]|0,(o|0)!=0):0)?(s=Xi[o>>2]|0,(s|0)!=0):0){Xi[w>>2]=Yz[Xi[s+4>>2]&15](o)|0;Xi[w+4>>2]=o;wA(l,146448,w);if(u){Xi[n>>2]=kA(o)|0;c=11;break}else{Xi[b>>2]=Yz[Xi[h+4>>2]&15](e)|0;Xi[b+4>>2]=e;wA(d,146448,b);break}}else c=11}while(0);if((c|0)==11?(Xi[k>>2]=Yz[Xi[h+4>>2]&15](e)|0,Xi[k+4>>2]=e,wA(d,146448,k),u):0)Xi[n+4>>2]=kA(e)|0;if(Xi[39619]&2|0){switch(i|0){case-8:{t=146504;break}case 48:{t=146498;break}case 40:{t=146490;break}case 32:{t=146485;break}case 24:{t=146477;break}case 16:{t=146471;break}case 8:{t=146465;break}case 0:{t=146459;break}default:t=237325}Xi[E>>2]=t;wA(v,146510,E)}}bA(S,r,f);if(!((((Wi[Xi[l>>2]>>0]|0)==0?(Wi[Xi[d>>2]>>0]|0)==0:0)?(Wi[Xi[v>>2]>>0]|0)==0:0)?!(Wi[Xi[S>>2]>>0]|0):0)){t=Xi[l+3076>>2]|0;if((t|0)!=0?t>>>0<=(Xi[l+3080>>2]|0)>>>0:0)t=Wi[(Xi[S>>2]|0)+(t+-1)>>0]|0;else t=0;Xi[a>>2]=(t<<24>>24==10|t<<24>>24==13)&1}Ue=_;return}function sA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=e+16|0;l=(r|0)==1?1008:r;Xi[e>>2]=f;Xi[e+4>>2]=0;r=l>>>0<1008?l:1008;Xi[e+8>>2]=r;Xi[e+12>>2]=l;Wi[f>>0]=0;if(r>>>0<i>>>0)uA(e,i+-1|0)|0;return}function uA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;a=e+8|0;r=Xi[a>>2]|0;f=Xi[e+12>>2]|0;if((r|0)!=(f|0)){n=e+4|0;l=Xi[n>>2]|0;if(l>>>0<r>>>0){t=-2-l|0;i=l+1+(t>>>0>i>>>0?i:t)|0;l=r>>>0>f>>>1>>>0?f:r<<1;l=l>>>0<i>>>0?f>>>0>i>>>0?i:f:l;r=Xi[e>>2]|0;r=(r|0)==(e+16|0)?0:r;f=hA(r,l)|0;if(!f)r=-12;else{if(!r)qT(f|0,Xi[e>>2]|0,(Xi[n>>2]|0)+1|0)|0;Xi[e>>2]=f;Xi[a>>2]=l;r=0}}else r=-1094995529}else r=-5;return r|0}function hA(e,i){e=e|0;i=i|0;if(((Xi[22291]|0)+-32|0)>>>0<i>>>0)e=0;else e=HT(e,((i|0)==0&1)+i|0)|0;return e|0}function wA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=Ue;Ue=Ue+16|0;u=w;a=e+8|0;n=e+4|0;while(1){b=Xi[a>>2]|0;f=Xi[n>>2]|0;k=f>>>0>b>>>0?b:f;s=b-k|0;if((b|0)==(k|0))f=0;else f=(Xi[e>>2]|0)+f|0;Xi[u>>2]=r;f=dR(f,s,i,u)|0;if((f|0)<1)break;if(f>>>0<s>>>0){l=f;h=7;break}if(uA(e,f)|0){l=f;h=7;break}}if((h|0)==7?(t=Xi[n>>2]|0,o=-6-t|0,t=(o>>>0<l>>>0?o:l)+t|0,Xi[n>>2]=t,o=Xi[a>>2]|0,o|0):0){b=o+-1|0;Wi[(Xi[e>>2]|0)+(t>>>0>b>>>0?b:t)>>0]=0}Ue=w;return}function kA(e){e=e|0;var i=0,r=0,f=0;i=Xi[e>>2]|0;do{if(((i|0)!=0?(f=Xi[i+12>>2]|0,!((f|0)<3357440|(f&252)>>>0<100)):0)?(r=Xi[i+32>>2]|0,r>>>0<=45):0){i=Xi[i+36>>2]|0;if(!i){i=r+16|0;break}else{i=(Yz[i&15](e)|0)+16|0;break}}else i=16}while(0);return i|0}function bA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;w=Ue;Ue=Ue+16|0;u=w;a=e+8|0;n=e+4|0;while(1){b=Xi[a>>2]|0;f=Xi[n>>2]|0;k=f>>>0>b>>>0?b:f;s=b-k|0;if((b|0)==(k|0))f=0;else f=(Xi[e>>2]|0)+f|0;Xi[u>>2]=Xi[r>>2];f=dR(f,s,i,u)|0;if((f|0)<1)break;if(f>>>0<s>>>0){l=f;h=7;break}if(uA(e,f)|0){l=f;h=7;break}}if((h|0)==7?(t=Xi[n>>2]|0,o=-6-t|0,t=(o>>>0<l>>>0?o:l)+t|0,Xi[n>>2]=t,o=Xi[a>>2]|0,o|0):0){b=o+-1|0;Wi[(Xi[e>>2]|0)+(t>>>0>b>>>0?b:t)>>0]=0}Ue=w;return}function cA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+48|0;t=o+32|0;n=o+16|0;a=o;do{if(Wi[r>>0]|0){f=Xi[22295]|0;do{if((f|0)<0){l=We(146597)|0;do{if((We(146602)|0)==0?(We(146611)|0)==0:0){if(l|0?CT(2)|0:0){f=1;break}f=(We(146632)|0)!=0}else f=0}while(0);f=f&1;Xi[22295]=f;if(!(We(146651)|0)){if(!l)break;if(!(bT(l,146673)|0))break}f=f<<8;Xi[22295]=f}}while(0);l=(e|0)==4?0:f;if((l|0)==1){t=Xi[23093]|0;e=Xi[89184+(e<<2)>>2]|0;Xi[a>>2]=e>>>4&15;Xi[a+4>>2]=e&15;Xi[a+8>>2]=r;wT(t,146682,a)|0;break}if((i|0)!=0&(f|0)==256){t=Xi[23093]|0;Xi[n>>2]=(Xi[89184+(e<<2)>>2]|0)>>>16&255;Xi[n+4>>2]=i;Xi[n+8>>2]=r;wT(t,146698,n)|0;break}f=Xi[23093]|0;if((l|0)==256){e=Xi[89184+(e<<2)>>2]|0;Xi[t>>2]=e>>>16&255;Xi[t+4>>2]=e>>>8&255;Xi[t+8>>2]=r;wT(f,146698,t)|0;break}else{dT(r,f)|0;break}}}while(0);Ue=o;return}function dA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;l=(Xi[e+4>>2]|0)+1|0;a=e+8|0;r=Xi[a>>2]|0;l=l>>>0>r>>>0?r:l;r=Xi[e>>2]|0;f=(r|0)!=(e+16|0);if(!i)if(f){vA(e);r=0}else r=0;else{if(!f){f=rA(l)|0;if(!f){r=-12;f=0}else{qT(f|0,Xi[e>>2]|0,l|0)|0;r=0}}else{r=hA(r,l)|0;if(!r)f=Xi[e>>2]|0;else f=r;Xi[e>>2]=0;r=0}Xi[i>>2]=f}Xi[a>>2]=l;return r|0}function vA(e){e=e|0;var i=0;i=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;Wi[e>>0]=0;Wi[e+1>>0]=0;Wi[e+2>>0]=0;Wi[e+3>>0]=0;IT(i);return}function EA(e,i){e=e|0;i=i|0;var r=0;Wi[e>>0]=i>>>5;switch(i|0){case 160:{Xi[e+80>>2]=1732584193;Xi[e+84>>2]=-271733879;Xi[e+88>>2]=-1732584194;Xi[e+92>>2]=271733878;Xi[e+96>>2]=-1009589776;Xi[e+112>>2]=204;r=5;break}case 224:{Xi[e+80>>2]=-1056596264;Xi[e+84>>2]=914150663;Xi[e+88>>2]=812702999;Xi[e+92>>2]=-150054599;Xi[e+96>>2]=-4191439;Xi[e+100>>2]=1750603025;Xi[e+104>>2]=1694076839;Xi[e+108>>2]=-1090891868;Xi[e+112>>2]=205;r=5;break}case 256:{Xi[e+80>>2]=1779033703;Xi[e+84>>2]=-1150833019;Xi[e+88>>2]=1013904242;Xi[e+92>>2]=-1521486534;Xi[e+96>>2]=1359893119;Xi[e+100>>2]=-1694144372;Xi[e+104>>2]=528734635;Xi[e+108>>2]=1541459225;Xi[e+112>>2]=205;r=5;break}default:i=-22}if((r|0)==5){i=e+8|0;Xi[i>>2]=0;Xi[i+4>>2]=0;i=0}return i|0}function SA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;S=Ue;Ue=Ue+320|0;o=S;u=Xi[e>>2]|0;h=e+4|0;w=Xi[h>>2]|0;k=e+8|0;b=Xi[k>>2]|0;c=e+12|0;d=Xi[c>>2]|0;v=e+16|0;E=Xi[v>>2]|0;n=u;t=w;l=b;f=d;r=E;s=0;while(1){if(s>>>0<16){a=i+(s<<2)|0;a=ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0}else{a=Xi[o+(s+-8<<2)>>2]^Xi[o+(s+-3<<2)>>2]^Xi[o+(s+-14<<2)>>2]^Xi[o+(s+-16<<2)>>2];a=a<<1|a>>>31}Xi[o+(s<<2)>>2]=a;a=r+(n<<5|n>>>27)+a|0;do{if(s>>>0<40)if(s>>>0<20){r=((f^l)&t^f)+1518500249|0;break}else{r=(l^t^f)+1859775393|0;break}else if(s>>>0<60){r=((l|t)&f|l&t)+-1894007588|0;break}else{r=(l^t^f)+-899497514|0;break}}while(0);r=a+r|0;a=t<<30|t>>>2;s=s+1|0;if((s|0)==80)break;else{_=l;t=n;n=r;l=a;r=f;f=_}}Xi[e>>2]=u+r;Xi[h>>2]=w+n;Xi[k>>2]=b+a;Xi[c>>2]=d+l;Xi[v>>2]=E+f;Ue=S;return}function _A(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0;M=Ue;Ue=Ue+256|0;u=M;k=Xi[e>>2]|0;b=e+4|0;_=Xi[b>>2]|0;m=e+8|0;p=Xi[m>>2]|0;F=e+12|0;y=Xi[F>>2]|0;O=e+16|0;A=Xi[O>>2]|0;g=e+20|0;c=Xi[g>>2]|0;d=e+24|0;v=Xi[d>>2]|0;E=e+28|0;S=Xi[E>>2]|0;w=k;o=_;n=p;t=y;l=A;f=c;r=v;s=S;h=0;while(1){if(h>>>0<16){a=i+(h<<2)|0;a=ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0}else{R=Xi[u+(h+-15<<2)>>2]|0;a=Xi[u+(h+-2<<2)>>2]|0;a=(Xi[u+(h+-7<<2)>>2]|0)+(Xi[u+(h+-16<<2)>>2]|0)+((R<<14|R>>>18)^R>>>3^(R<<25|R>>>7))+((a<<13|a>>>19)^a>>>10^(a<<15|a>>>17))|0}Xi[u+(h<<2)>>2]=a;R=((l<<26|l>>>6)^(l<<21|l>>>11)^(l<<7|l>>>25))+s+((r^f)&l^r)+a+(Xi[89432+(h<<2)>>2]|0)|0;a=R+t|0;t=((n|o)&w|n&o)+((w<<30|w>>>2)^(w<<19|w>>>13)^(w<<10|w>>>22))+R|0;h=h+1|0;if((h|0)==64){s=w;break}else{T=l;R=w;w=t;l=a;s=r;r=f;f=T;t=n;n=o;o=R}}Xi[e>>2]=k+t;Xi[b>>2]=_+s;Xi[m>>2]=p+o;Xi[F>>2]=y+n;Xi[O>>2]=A+a;Xi[g>>2]=c+l;Xi[d>>2]=v+f;Xi[E>>2]=S+r;Ue=M;return}function mA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;o=e+8|0;t=o;f=Xi[t>>2]|0;t=WT(f|0,Xi[t+4>>2]|0,r|0,0)|0;Xi[o>>2]=t;Xi[o+4>>2]=Ie;if(r|0){a=e+112|0;n=e+80|0;t=e+16|0;o=0;l=f&63;while(1){f=l+1|0;Wi[e+16+l>>0]=Wi[i+o>>0]|0;if((f|0)==64){zz[Xi[a>>2]&255](n,t);f=0}o=o+1|0;if((o|0)==(r|0))break;else l=f}}return}function pA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;l=Ue;Ue=Ue+16|0;f=l;r=e+8|0;t=r;a=Xi[t>>2]|0;t=Xi[t+4>>2]|0;n=KT(a|0,t|0,3)|0;n=ZT(n|0)|0;t=XT(a|0,t|0,29)|0;a=f;Xi[a>>2]=ZT(t|0)|0;Xi[a+4>>2]=n;mA(e,150110,1);if(!(0==0?(Xi[r>>2]&63|0)==56:0))do{mA(e,237325,1)}while(!(0==0?(Xi[r>>2]&63|0)==56:0));mA(e,f,8);if(Wi[e>>0]|0){r=0;do{n=ZT(Xi[e+80+(r<<2)>>2]|0)|0;t=i+(r<<2)|0;Wi[t>>0]=n;Wi[t+1>>0]=n>>8;Wi[t+2>>0]=n>>16;Wi[t+3>>0]=n>>24;r=r+1|0}while((r|0)<(qi[e>>0]|0))}Ue=l;return}function FA(e){e=e|0;IT(e);return}function yA(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;do{if(f>>>0<=9?(a=Xi[89688+(f*20|0)+8>>2]>>3,!((i|0)<1|((r|0)<1|(a|0)==0))):0){if(!l){if((r|0)>2147483616){r=-22;break}r=r+31&-32;l=1}if((2147483647/(l|0)|0|0)>=(i|0)?(t=rN(r|0,((r|0)<0)<<31>>31|0,i|0,((i|0)<0)<<31>>31|0)|0,s=Ie,n=(2147483647-(Zi(l,i)|0)|0)/(a|0)|0,o=((n|0)<0)<<31>>31,!((s|0)>(o|0)|(s|0)==(o|0)&t>>>0>n>>>0)):0){f=(f+-5|0)>>>0<5;r=Zi(r,a)|0;if(f)r=l+-1+r&0-l;else r=l+-1+(Zi(r,i)|0)&0-l;if(e|0)Xi[e>>2]=r;r=Zi(r,f?i:1)|0}else r=-22}else r=-22}while(0);return r|0}function OA(e){e=e|0;if(e>>>0>9)e=0;else e=Xi[89688+(e*20|0)+12>>2]|0;return e|0}function AA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;e:do{if(r>>>0>1){f=1;a=0;while(1){l=Wi[i>>0]|0;if(!(l<<24>>24)){l=f;f=a;break e}i=i+1|0;a=e+1|0;Wi[e>>0]=l;l=f+1|0;if(l>>>0<r>>>0){n=f;e=a;f=l;a=n}else{e=a;break}}}else{l=1;f=0}}while(0);if(l>>>0<=r>>>0)Wi[e>>0]=0;return(wR(i)|0)+f|0}function gA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=wR(e)|0;if((f+1|0)>>>0<r>>>0)e=AA(e+f|0,i,r-f|0)|0;else e=wR(i)|0;return e+f|0}function MA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;f=e;while(1){r=Wi[f>>0]|0;e=Wi[i>>0]|0;e=(e+-65|0)>>>0<26?e^32:e;r=((r+-65|0)>>>0<26?r^32:r)&255;if(!r){l=3;break}e=e&255;if((r|0)==(e|0)){f=f+1|0;i=i+1|0}else{i=r;break}}if((l|0)==3){i=0;e=e&255}return i-e|0}function RA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=e+r|0;l=e;f=i;while(1){e=Wi[l>>0]|0;l=l+1|0;e=(e+-65|0)>>>0<26?e^32:e;r=Wi[f>>0]|0;r=(r+-65|0)>>>0<26?r^32:r;if(l>>>0>=a>>>0){n=3;break}e=e&255;i=r&255;if(!((e|0)!=0&(e|0)==(i|0))){r=e;break}else f=f+1|0}if((n|0)==3){i=r&255;r=e&255}return r-i|0}function TA(e){e=e|0;var i=0,r=0;if(((e|0)!=0?(r=(wR(e)|0)+1|0,((Xi[22291]|0)+-32|0)>>>0>=r>>>0):0)?(i=HT(0,((r|0)==0&1)+r|0)|0,(i|0)!=0):0)qT(i|0,e|0,r|0)|0;else i=0;return i|0}function NA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;e:do{if((e|0)!=0&(i|0)!=0?(a=wR(e)|0,r=Wi[i>>0]|0,r<<24>>24!=0):0){while(1){r=r<<24>>24==45&1;f=GR(i,44)|0;if(!f)f=i+(wR(i)|0)|0;i=i+r|0;l=f-i|0;if(!(RA(e,i,(l|0)>(a|0)?l:a)|0))break;if(!(UR(146788,i,(l|0)<3?3:l)|0))break;i=f+((Wi[f>>0]|0)==44&1)|0;r=Wi[i>>0]|0;if(!(r<<24>>24)){r=0;break e}}r=r^1}else r=0}while(0);return r|0}function DA(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;e:do{if(!e)e=0;else{t=(i|0)==0;o=r<<24>>24;while(1){if(!(Wi[e>>0]|0)){e=0;break e}i:do{if(!t){n=i;do{f=Wi[n>>0]|0;if(!(f<<24>>24))break i;else a=0;while(1){l=Wi[e+a>>0]|0;s=l<<24>>24;u=f<<24>>24;if(l<<24>>24!=f<<24>>24?!((Zi(u,s)|0)==0&(u+s|0)==(o|0)):0)break;if(a|0?l<<24>>24==0?1:l<<24>>24==r<<24>>24:0){e=1;break e}u=a+1|0;f=Wi[n+u>>0]|0;a=u}u=GR(n,o)|0;n=u+((u|0)!=0&1)|0}while((n|0)!=0)}}while(0);u=GR(e,o)|0;e=u+((u|0)!=0&1)|0;if(!e){e=0;break}}}}while(0);return e|0}function CA(e,i,r){e=e|0;i=i|0;r=r|0;Xi[e>>2]=i;Xi[e+4>>2]=0;Xi[e+8>>2]=r;Xi[e+12>>2]=r;Wi[i>>0]=0;return}function PA(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;n=t;a=iA(24)|0;Xi[n>>2]=a;do{if(a){Xi[a>>2]=e;Xi[a+4>>2]=i;Xi[a+12>>2]=r|0?r:206;Xi[(Xi[n>>2]|0)+16>>2]=f;Xi[(Xi[n>>2]|0)+8>>2]=1;if(l&1|0){f=(Xi[n>>2]|0)+20|0;Xi[f>>2]=Xi[f>>2]|1}a=iA(12)|0;if(!a){vA(n);a=0;break}else{Xi[a>>2]=Xi[n>>2];Xi[a+4>>2]=e;Xi[a+8>>2]=i;break}}else a=0}while(0);Ue=t;return a|0}function LA(e,i){e=e|0;i=i|0;FA(i);return}function IA(e){e=e|0;var i=0,r=0,f=0;f=Ue;Ue=Ue+16|0;r=f;i=rA(e)|0;Xi[r>>2]=i;if(i){i=PA(i,e,206,0,0)|0;if(!i){vA(r);i=0}}else i=0;Ue=f;return i|0}function HA(e){e=e|0;var i=0;i=IA(e)|0;if(!i)i=0;else jT(Xi[i+4>>2]|0,0,e|0)|0;return i|0}function BA(e){e=e|0;var i=0;i=iA(12)|0;if(!i)i=0;else{Xi[i>>2]=Xi[e>>2];Xi[i+4>>2]=Xi[e+4>>2];Xi[i+8>>2]=Xi[e+8>>2];e=(Xi[e>>2]|0)+8|0;Xi[e>>2]=(Xi[e>>2]|0)+1}return i|0}function UA(e){e=e|0;if(e|0?Xi[e>>2]|0:0)xA(e,0);return}function xA(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;r=Xi[e>>2]|0;f=Xi[r>>2]|0;Xi[l>>2]=f;if(!i)vA(e);else{e=Xi[i>>2]|0;Xi[r>>2]=Xi[e>>2];Xi[r+4>>2]=Xi[e+4>>2];Xi[r+8>>2]=Xi[e+8>>2];vA(i)}e=f+8|0;i=Xi[e>>2]|0;Xi[e>>2]=i+-1;if((i|0)==1){i=Xi[l>>2]|0;zz[Xi[i+12>>2]&255](Xi[i+16>>2]|0,Xi[i>>2]|0);vA(l)}Ue=a;return}function zA(e){e=e|0;return Xi[(Xi[e>>2]|0)+8>>2]|0}function VA(e,i){e=e|0;i=i|0;var r=0;r=iA(24)|0;if(!r)r=0;else{Xi[r+16>>2]=e;Xi[r+20>>2]=i|0?i:13;Xi[r+8>>2]=1}return r|0}function YA(e){e=e|0;var i=0,r=0;if((e|0?(i=Xi[e>>2]|0,i|0):0)?(Xi[e>>2]=0,r=i+8|0,e=Xi[r>>2]|0,Xi[r>>2]=e+-1,(e|0)==1):0)jA(i);return}function jA(e){e=e|0;var i=0,r=0,f=0,l=0,a=0;l=Ue;Ue=Ue+16|0;r=l+4|0;f=l;Xi[r>>2]=e;i=Xi[e+4>>2]|0;if(i|0)do{Xi[f>>2]=i;Xi[e+4>>2]=Xi[i+16>>2];a=Xi[f>>2]|0;zz[Xi[a+8>>2]&255](Xi[a+4>>2]|0,Xi[a>>2]|0);vA(f);e=Xi[r>>2]|0;i=Xi[e+4>>2]|0}while((i|0)!=0);vA(r);Ue=l;return}function KA(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+16|0;l=u;o=u+4|0;n=e+4|0;f=Xi[n>>2]|0;r=0;while(1){if((f|0)==(r|0)){s=4;break}i=Xi[n>>2]|0;if((i|0)==(f|0))Xi[n>>2]=0;if(!i){s=5;break}else{r=f;f=i}}if((s|0)==4)if(!r)s=5;else s=17;e:do{if((s|0)==5){a=e+8|0;f=e+12|0;if((Xi[a>>2]|0)<=(Xi[f>>2]|0)?(nA(0,48,146792,l),(Xi[a>>2]|0)<=(Xi[f>>2]|0)):0)do{r=Xi[n>>2]|0;i=0;while(1){if((r|0)==(i|0)){t=i;s=7;break}i=Xi[n>>2]|0;if((i|0)==(r|0))Xi[n>>2]=0;if(!i)break;else{l=r;r=i;i=l}}if((s|0)==7?(s=0,t|0):0){r=t;s=17;break e}}while((Xi[a>>2]|0)<=(Xi[f>>2]|0));i=Yz[Xi[e+20>>2]&15](Xi[e+16>>2]|0)|0;Xi[o>>2]=i;do{if(i){r=iA(20)|0;if(!r){xA(o,0);i=0;break}else{t=Xi[i>>2]|0;Xi[r>>2]=Xi[t>>2];i=t+16|0;Xi[r+4>>2]=Xi[i>>2];Xi[r+8>>2]=Xi[t+12>>2];Xi[r+12>>2]=e;Xi[i>>2]=r;Xi[(Xi[Xi[o>>2]>>2]|0)+12>>2]=207;Xi[a>>2]=(Xi[a>>2]|0)+1;Xi[f>>2]=(Xi[f>>2]|0)+1;i=Xi[o>>2]|0;break}}else i=0}while(0)}}while(0);do{if((s|0)==17){i=r+16|0;GA(Xi[i>>2]|0);Xi[i>>2]=0;i=PA(Xi[r>>2]|0,Xi[e+16>>2]|0,207,r,0)|0;if(!i){GA(r);i=0;break}else{e=e+8|0;Xi[e>>2]=(Xi[e>>2]|0)+1;break}}}while(0);Ue=u;return i|0}function WA(e,i){e=e|0;i=i|0;var r=0;i=Xi[e+12>>2]|0;GA(e);r=i+8|0;e=Xi[r>>2]|0;Xi[r>>2]=e+-1;if((e|0)==1)jA(i);return}function GA(e){e=e|0;var i=0,r=0,f=0,l=0,a=0;if(e|0){f=Xi[e+12>>2]|0;r=e;while(1){i=Xi[r+16>>2]|0;if(!i)break;else r=i}l=f+4|0;i=Xi[l>>2]|0;if(!i)Xi[l>>2]=e;if(i|0)while(1){f=Xi[l>>2]|0;i=0;while(1){if((f|0)==(i|0))break;i=Xi[l>>2]|0;if((i|0)==(f|0))Xi[l>>2]=0;if(!i){i=0;break}else{a=f;f=i;i=a}}Xi[r+16>>2]=i;if(!i)i=r;else while(1){r=Xi[i+16>>2]|0;if(!r)break;else i=r}r=Xi[l>>2]|0;if(!r)Xi[l>>2]=e;if(!r)break;else r=i}}return}function XA(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+16|0;w=k;o=wR(e)|0;s=e+o|0;e:do{if((o|0)>0){i=0;r=0;i:while(1){r:do{if(e>>>0<s>>>0){f=e;while(1){switch(Wi[f>>0]|0){case 124:case 43:break r;default:{}}f=f+1|0;if(f>>>0>=s>>>0)break r}}else f=e}while(0);n=e;t=f-n|0;a=0;while(1){l=Xi[19296+(a<<4)>>2]|0;if((wR(l)|0)==(t|0)?(kR(l,e,t)|0)==0:0){e=a;o=24;break}a=a+1|0;if(a>>>0>=28){l=0;o=10;break}}r:do{if((o|0)==10){while(1){if(((l+-18|0)>>>0>10?(u=Xi[89888+(l<<3)>>2]|0,(wR(u)|0)==(t|0)):0)?(kR(u,e,t)|0)==0:0){e=l;o=13;break}l=l+1|0;if(l>>>0>=36){o=15;break}else o=10}if((o|0)==13){o=0;e=KT(1,0,e|0)|0;l=Ie}else if((o|0)==15){o=0;a=nR()|0;Xi[a>>2]=0;l=OT(e,w,10)|0;if(((Xi[a>>2]|0)==0?(h=Xi[w>>2]|0,(h+1-n|0)==(t|0)):0)?(Wi[h>>0]|0)==99:0){e=0;while(1){if((Xi[19296+(e<<4)+4>>2]|0)==(l|0)){o=24;break r}e=e+1|0;if(e>>>0>=28)break i}}Xi[a>>2]=0;e=yT(e,w,0)|0;l=Ie;if(Xi[a>>2]|0)break i;if(!(((l|0)>0|(l|0)==0&e>>>0>0)&((Xi[w>>2]|0)-n|0)==(t|0)))break i}}}while(0);if((o|0)==24){l=19296+(e<<4)+8|0;e=Xi[l>>2]|0;l=Xi[l+4>>2]|0}i=e|i;r=l|r;e=f+1|0;if(e>>>0>=s>>>0)break e}r=0;i=0}else{r=0;i=0}}while(0);Ie=r;Ue=k;return i|0}function qA(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+48|0;u=k+40|0;w=k+32|0;h=k+24|0;t=k+16|0;n=k+8|0;o=k;if((i|0)<1)l=JA(r,f)|0;else l=i;i=0;while(1){if((l|0)==(Xi[19296+(i<<4)+4>>2]|0)?(a=19296+(i<<4)+8|0,(Xi[a>>2]|0)==(r|0)?(Xi[a+4>>2]|0)==(f|0):0):0){a=6;break}i=i+1|0;if(i>>>0>=28){a=8;break}}if((a|0)==6){Xi[o>>2]=Xi[19296+(i<<4)>>2];wA(e,147521,o)}else if((a|0)==8?(Xi[n>>2]=l,wA(e,147524,n),!((r|0)==0&(f|0)==0)):0){wA(e,147536,t);i=0;l=0;do{o=KT(1,0,l|0)|0;if(!((o&r|0)==0&(Ie&f|0)==0)){if(l>>>0<=35?(s=Xi[89888+(l<<3)>>2]|0,(l+-18|0)>>>0>=11):0){if((i|0)>0)wA(e,147539,h);Xi[w>>2]=s;wA(e,147521,w)}i=i+1|0}l=l+1|0}while((l|0)!=64);wA(e,147541,u)}Ue=k;return}function JA(e,i){e=e|0;i=i|0;var r=0;r=e-(e>>>1&1431655765)|0;r=(r>>>2&858993459)+(r&858993459)|0;r=(r>>>4)+r&252645135;r=(r>>>8)+r|0;e=XT(e|0,i|0,33)|0;i=i-(e&1431655765)|0;i=(i>>>2&858993459)+(i&858993459)|0;i=(i>>>4)+i&252645135;i=(i>>>8)+i|0;return((r>>>16)+r&63)+((i>>>16)+i&63)|0}function ZA(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Ue;Ue=Ue+1024|0;n=a;CA(n,e,i);qA(n,r,f,l);Ue=a;return}function QA(e){e=e|0;return Xi[Xi[e>>2]>>2]|0}function $A(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0.0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0;T=Ue;Ue=Ue+1072|0;M=T+792|0;g=T+784|0;A=T+528|0;t=T+1060|0;n=T+1056|0;y=T+8|0;O=T;F=T+16|0;p=T+800|0;Xi[A>>2]=t;Xi[A+4>>2]=n;Xi[A+8>>2]=T+1064;if(!((qR(f,147543,A)|0)==2?(a=Xi[t>>2]|0,a=eg(e,r,l,1.0,Xi[n>>2]|0,a,((a|0)<0)<<31>>31)|0,(a|0)>-1):0)){E=r+12|0;S=r+44|0;b=r+16|0;c=r+32|0;d=r+24|0;v=r+16|0;e:while(1){k=O;Xi[k>>2]=1;Xi[k+4>>2]=0;if(!(Xi[E>>2]|0)){a=Wi[f>>0]|0;switch(a<<24>>24){case 45:case 43:{f=f+1|0;t=a<<24>>24;break}default:t=0}a=0;i:do{n=Wi[f+a>>0]|0;switch(n<<24>>24){case 45:case 43:case 0:break i;default:{}}Wi[A+a>>0]=n;a=a+1|0}while(a>>>0<255);Wi[A+a>>0]=0;w=a}else{t=0;w=0}k=(w|0)!=0;h=k?A:f;a=lg(i,h,Xi[S>>2]|0,0,0,0)|0;if((a|0)!=0?(Xi[a+12>>2]|0)==128:0){h=a+16|0;Ae[y>>3]=+((Xi[h>>2]|0)>>>0)+4294967296.0*+(Xi[h+4>>2]|0)}else{a=Xi[S>>2]|0;i:do{if((a|0)!=0?(_=ag(i,0)|0,(_|0)!=0):0){n=_;u=0;while(1){while(1){if(((Xi[n+12>>2]|0)==128?(m=Xi[n+44>>2]|0,m|0):0)?(PR(m,a)|0)==0:0)break;n=ag(i,n)|0;if(!n){a=u;break i}}if((u+6|0)>>>0>63){R=22;break e}Xi[p+(u<<2)>>2]=Xi[n>>2];N=n+16|0;s=u+1|0;Ae[F+(u<<3)>>3]=+((Xi[N>>2]|0)>>>0)+4294967296.0*+(Xi[N+4>>2]|0);n=ag(i,n)|0;if(!n){a=s;break}else u=s}}else a=0}while(0);Xi[p+(a<<2)>>2]=147781;switch(Xi[E>>2]|0){case 1:case 0:case 128:case 2:{N=v;o=+((Xi[N>>2]|0)>>>0)+4294967296.0*+(Xi[N+4>>2]|0);break}default:o=+Ae[b>>3]}u=a+1|0;Ae[F+(a<<3)>>3]=o;Xi[p+(u<<2)>>2]=148e3;N=a+2|0;Ae[F+(u<<3)>>3]=+Ae[c>>3];Xi[p+(N<<2)>>2]=148004;u=a+3|0;Ae[F+(N<<3)>>3]=+Ae[d>>3];Xi[p+(u<<2)>>2]=147789;N=a+4|0;Ae[F+(u<<3)>>3]=0.0;Xi[p+(N<<2)>>2]=147794;a=a+5|0;Ae[F+(N<<3)>>3]=-1.0;Xi[p+(a<<2)>>2]=0;Ae[F+(a<<3)>>3]=0.0;a=ng(y,h,p,F,0,0,0,0,0,0,e)|0;if((a|0)<0){R=28;break}}i:do{if(!(Xi[E>>2]|0)){mg(r,l,0,0,O)|0;switch(t|0){case 43:{N=O;o=+Ae[y>>3];Ae[y>>3]=+((~~o>>>0|Xi[N>>2])>>>0)+4294967296.0*+((+I(o)>=1.0?o>0.0?~~+W(+L(o/4294967296.0),4294967295.0)>>>0:~~+K((o-+(~~o>>>0))/4294967296.0)>>>0:0)|Xi[N+4>>2]|0);break i}case 45:{N=O;o=+Ae[y>>3];Ae[y>>3]=+((Xi[N>>2]&~(~~o>>>0))>>>0)+4294967296.0*+(Xi[N+4>>2]&~(+I(o)>=1.0?o>0.0?~~+W(+L(o/4294967296.0),4294967295.0)>>>0:~~+K((o-+(~~o>>>0))/4294967296.0)>>>0:0)|0);break i}default:break i}}}while(0);a=eg(e,r,l,+Ae[y>>3],1,1,0)|0;if((a|0)<0)break;f=f+w|0;if(!k){a=0;break}if(!(Wi[f>>0]|0)){a=0;break}}if((R|0)==22){Xi[g>>2]=a;nA(e,16,147744,g);a=-1163346256;R=29}else if((R|0)==28){Xi[M>>2]=f;nA(e,16,148222,M);R=29}}Ue=T;return a|0}function eg(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=+f;l=l|0;a=a|0;n=n|0;var t=0,o=0.0,s=0.0,u=0.0,h=0.0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+64|0;t=d+40|0;k=d+8|0;b=d;w=Xi[i+12>>2]|0;e:do{if(!w){o=(+(a>>>0)+4294967296.0*+(n|0))*f/+(l|0);if(!(o<-1.5|o>4294967295.5)?(b=MT(o*256.0)|0,(b&255|0)==0&0==0):0){c=10;break}r=Xi[i>>2]|0;Ae[t>>3]=o;Xi[t+8>>2]=r;nA(e,16,147609,t);t=-34}else{u=+Ae[i+32>>3];h=+(l|0);s=(+(a>>>0)+4294967296.0*+(n|0))*f;o=+Ae[i+24>>3];if(h*u<s|h*o>s){t=Xi[i>>2]|0;Ae[k>>3]=(l|0)==0?s!=0.0?C:D:s/h;Xi[k+8>>2]=t;Ae[k+16>>3]=o;Ae[k+24>>3]=u;nA(e,16,147557,k);t=-34;break}i:do{if((w|0)>=1112493900){if((w|0)<1146442272)if((w|0)<1128811585)switch(w|0){case 1112493900:{c=10;break e}default:{t=-22;break e}}else switch(w|0){case 1128811585:break i;default:{t=-22;break e}}if((w|0)<1346784596)switch(w|0){case 1146442272:break i;default:{t=-22;break e}}if((w|0)<1397116244){switch(w|0){case 1346784596:break;default:{t=-22;break e}}t=MT(f/+(l|0))|0;t=rN(t|0,Ie|0,a|0,n|0)|0;Xi[r>>2]=t;t=0;break e}else{switch(w|0){case 1397116244:break;default:{t=-22;break e}}t=MT(f/+(l|0))|0;t=rN(t|0,Ie|0,a|0,n|0)|0;Xi[r>>2]=t;t=0;break e}}else switch(w|0){case 1:{c=10;break e}case 2:break i;case 6:{o=(+(a>>>0)+4294967296.0*+(n|0))*f;if(+(~~f|0)==f){Xi[r>>2]=~~o;Xi[r+4>>2]=l;t=0;break e}else{ig(b,o/+(l|0),16777216);e=b;l=Xi[e+4>>2]|0;t=r;Xi[t>>2]=Xi[e>>2];Xi[t+4>>2]=l;t=0;break e}}case 4:{P[r>>2]=(+(a>>>0)+4294967296.0*+(n|0))*f/+(l|0);t=0;break e}case 3:{Ae[r>>3]=(+(a>>>0)+4294967296.0*+(n|0))*f/+(l|0);t=0;break e}default:{t=-22;break e}}}while(0);l=MT(f/+(l|0))|0;l=rN(l|0,Ie|0,a|0,n|0)|0;t=r;Xi[t>>2]=l;Xi[t+4>>2]=Ie;t=0}}while(0);if((c|0)==10){t=MT(f/+(l|0))|0;t=rN(t|0,Ie|0,a|0,n|0)|0;Xi[r>>2]=t;t=0}Ue=d;return t|0}function ig(e,i,r){e=e|0;i=+i;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0.0;u=Ue;Ue=Ue+16|0;o=u;f=u+8|0;Ae[ee>>3]=i;t=Xi[ee+4>>2]&2147483647;do{if(t>>>0>2146435072|(t|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){Xi[e>>2]=0;Xi[e+4>>2]=0}else{if(+I(+i)>2147483650.0){Xi[e>>2]=i<0.0?-1:1;Xi[e+4>>2]=0;break}+TR(i,f);l=(Xi[f>>2]|0)+-1|0;l=(l|0)>0?l:0;Xi[f>>2]=l;f=KT(1,0,61-l|0)|0;l=Ie;a=o+4|0;h=+L(+((+(f>>>0)+4294967296.0*+(l|0))*i+.5));n=~~h>>>0;t=+I(h)>=1.0?h>0.0?~~+W(+L(h/4294967296.0),4294967295.0)>>>0:~~+K((h-+(~~h>>>0))/4294967296.0)>>>0:0;rg(o,a,n,t,f,l,r,((r|0)<0)<<31>>31)|0;if(!(Xi[o>>2]|0)){if((r|0)!=2147483647&(i!=0.0&(r|0)>0))s=8}else if((r|0)!=2147483647&((r|0)>0&(i!=0.0&(Xi[a>>2]|0)==0)))s=8;if((s|0)==8)rg(o,a,n,t,f,l,2147483647,0)|0;r=Xi[o+4>>2]|0;s=e;Xi[s>>2]=Xi[o>>2];Xi[s+4>>2]=r}}while(0);Ue=u;return}function rg(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=a^f;s=(f|0)>-1|(f|0)==-1&r>>>0>4294967295;o=YT(0,0,r|0,f|0)|0;o=s?r:o;s=s?f:Ie;h=(a|0)>-1|(a|0)==-1&l>>>0>4294967295;u=YT(0,0,l|0,a|0)|0;u=h?l:u;h=h?a:Ie;w=fg(o,s,u,h)|0;k=Ie;if(!((w|0)==0&(k|0)==0)){r=eN(o|0,s|0,w|0,k|0)|0;f=Ie;l=eN(u|0,h|0,w|0,k|0)|0;a=Ie}e:do{if((a|0)>(t|0)|(a|0)==(t|0)&l>>>0>n>>>0|((f|0)>(t|0)|(f|0)==(t|0)&r>>>0>n>>>0))if(!((l|0)==0&(a|0)==0)){w=0;d=1;m=1;p=0;while(1){s=eN(r|0,f|0,l|0,a|0)|0;o=Ie;c=((m|0)<0)<<31>>31;u=rN(s|0,o|0,m|0,c|0)|0;k=((w|0)<0)<<31>>31;u=WT(u|0,Ie|0,w|0,k|0)|0;E=Ie;_=((p|0)<0)<<31>>31;h=rN(s|0,o|0,p|0,_|0)|0;b=((d|0)<0)<<31>>31;h=WT(h|0,Ie|0,d|0,b|0)|0;S=Ie;if((E|0)>(t|0)|(E|0)==(t|0)&u>>>0>n>>>0|((S|0)>(t|0)|(S|0)==(t|0)&h>>>0>n>>>0)){E=k;S=m;v=c;c=p;u=_;h=m;k=p;break}S=rN(s|0,o|0,l|0,a|0)|0;_=Ie;o=YT(r|0,f|0,S|0,_|0)|0;if((r|0)==(S|0)&(f|0)==(_|0)){f=1;r=u;l=h;break e}else{d=p;w=m;f=a;r=l;l=o;a=Ie;m=u;p=h}}if(h){s=YT(n|0,t|0,w|0,E|0)|0;s=eN(s|0,Ie|0,S|0,v|0)|0;o=Ie}if(k){p=YT(n|0,t|0,d|0,b|0)|0;p=eN(p|0,Ie|0,c|0,u|0)|0;t=Ie;n=o>>>0>t>>>0|(o|0)==(t|0)&s>>>0>p>>>0;s=n?p:s;o=n?t:o}n=KT(c|0,u|0,1)|0;n=rN(n|0,Ie|0,s|0,o|0)|0;n=WT(n|0,Ie|0,d|0,b|0)|0;n=rN(n|0,Ie|0,l|0,a|0)|0;m=Ie;t=rN(r|0,f|0,c|0,u|0)|0;p=Ie;if(m>>>0>p>>>0|(m|0)==(p|0)&n>>>0>t>>>0){r=rN(s|0,o|0,S|0,v|0)|0;r=WT(r|0,Ie|0,w|0,E|0)|0;l=rN(s|0,o|0,c|0,u|0)|0;l=WT(l|0,Ie|0,d|0,b|0)|0;f=0}else{f=0;r=h;l=k}}else{f=1;r=1;l=0}else f=1}while(0);Xi[e>>2]=(F|0)<0?0-r|0:r;Xi[i>>2]=l;return f|0}function fg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0;if(!((e|0)==0&(i|0)==0)){if(!((r|0)==0&(f|0)==0)){t=YT(0,0,e|0,i|0)|0;t=rN(e&t|0,i&Ie|0,-862635923,36691299)|0;t=XT(t|0,Ie|0,58)|0;t=Wi[147680+t>>0]|0;n=t&255;l=YT(0,0,r|0,f|0)|0;l=rN(r&l|0,f&Ie|0,-862635923,36691299)|0;l=XT(l|0,Ie|0,58)|0;l=Wi[147680+l>>0]|0;a=l&255;n=n>>>0>a>>>0?a:n;t=GT(e|0,i|0,t&255|0)|0;e=Ie;a=(e|0)>-1|(e|0)==-1&t>>>0>4294967295;i=YT(0,0,t|0,e|0)|0;i=a?t:i;e=a?e:Ie;l=GT(r|0,f|0,l&255|0)|0;f=Ie;a=(f|0)>-1|(f|0)==-1&l>>>0>4294967295;r=YT(0,0,l|0,f|0)|0;r=a?l:r;f=a?f:Ie;if(!((i|0)==(r|0)&(e|0)==(f|0)))while(1){t=(e|0)>(f|0)|(e|0)==(f|0)&i>>>0>r>>>0;l=t?r:i;a=t?f:e;e=YT((t?i:r)|0,(t?e:f)|0,l|0,a|0)|0;i=Ie;t=YT(0,0,e|0,i|0)|0;t=rN(e&t|0,i&Ie|0,-862635923,36691299)|0;t=XT(t|0,Ie|0,58)|0;r=GT(e|0,i|0,qi[147680+t>>0]|0|0)|0;f=Ie;if((l|0)==(r|0)&(a|0)==(f|0)){i=l;e=a;break}else{e=a;i=l}}e=KT(i|0,e|0,n|0)|0;i=Ie}}else{i=f;e=r}Ie=i;return e|0}function lg(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+16|0;o=u;e:do{if((e|0)!=0?(n=Xi[e>>2]|0,(n|0)!=0):0){i:do{if(l&1|0){if(!(l&2)){n=Xi[n+24>>2]|0;if(!n)break;else t=0;while(1){t=eV[n&7](e,t)|0;if(!t)break i;n=lg(t,i,r,f,l,a)|0;if(n|0)break e;n=Xi[(Xi[e>>2]|0)+24>>2]|0;if(!n)break i}}Xi[o>>2]=0;t=n+28|0;while(1){n=Xi[t>>2]|0;if(!n)break;n=Yz[n&15](Xi[o>>2]|0)|0;Xi[o>>2]=n;if(!n)break i;n=lg(o,i,r,f,l,0)|0;if(n|0)break e}Xi[o>>2]=0}}while(0);n=ag(e,0)|0;if(n){o=(r|0)==0;i:while(1){do{if((PR(Xi[n>>2]|0,i)|0)==0?(Xi[n+40>>2]&f|0)==(f|0):0){t=(Xi[n+12>>2]|0)==128;if(o)if(t)break;else break i;if((t?(s=Xi[n+44>>2]|0,s|0):0)?(PR(s,r)|0)==0:0)break i}}while(0);n=ag(e,n)|0;if(!n){n=0;break e}}if(a)if(!(l&2)){Xi[a>>2]=e;break}else{Xi[a>>2]=0;break}}else n=0}else n=0}while(0);Ue=u;return n|0}function ag(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;do{if(!e)r=0;else{e=Xi[e>>2]|0;f=(i|0)==0;if((f&(e|0)!=0?(r=Xi[e+8>>2]|0,r|0):0)?Xi[r>>2]|0:0)break;if(!f?(l=i+48|0,Xi[l>>2]|0):0){r=l;break}r=0}}while(0);return r|0}function ng(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;var h=0,w=0,k=0;k=Ue;Ue=Ue+64|0;w=k+4|0;h=k;Xi[h>>2]=0;r=tg(h,i,r,l,a,n,t,s,u)|0;if((r|0)<0)Ae[e>>3]=D;else{r=Xi[h>>2]|0;l=w;n=l+48|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(n|0));Xi[w+48>>2]=Xi[r+32>>2];Xi[w+12>>2]=f;Xi[w+36>>2]=o;Ae[e>>3]=+_g(w,r);dg(r);r=e;w=Xi[r+4>>2]&2147483647;r=w>>>0>2146435072|(w|0)==2146435072&(Xi[r>>2]|0)>>>0>0?-22:0}Ue=k;return r|0}function tg(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;v=Ue;Ue=Ue+64|0;c=v;b=v+12|0;d=v+8|0;s=b;u=s+52|0;do{Xi[s>>2]=0;s=s+4|0}while((s|0)<(u|0));Xi[d>>2]=0;k=rA((wR(i)|0)+1|0)|0;if(!k)s=-12;else{u=i;s=k;e:while(1){do{h=Wi[u>>0]|0;if(!(h<<24>>24))break e;u=u+1|0;w=(h<<24>>24)+-9|0;if(w>>>0>=24)break}while((8388639>>>(w&16777215)&1|0)!=0);Wi[s>>0]=h;s=s+1|0}Wi[s>>0]=0;Xi[b>>2]=90176;Xi[b+4>>2]=100;u=b+8|0;Xi[u>>2]=k;Xi[b+16>>2]=r;Xi[b+20>>2]=l;Xi[b+24>>2]=f;Xi[b+28>>2]=n;Xi[b+32>>2]=a;Xi[b+40>>2]=t;Xi[b+44>>2]=o;s=og(d,b)|0;do{if((s|0)>=0){u=Xi[u>>2]|0;if(Wi[u>>0]|0){Xi[c>>2]=u;Xi[c+4>>2]=i;nA(b,16,148168,c);s=-22;break}u=Xi[d>>2]|0;if(Sg(u)|0){c=iA(80)|0;Xi[u+32>>2]=c;if(!c)s=-12;else{Xi[e>>2]=u;Xi[d>>2]=0}}else s=-22}}while(0);dg(Xi[d>>2]|0);FA(k)}Ue=v;return s|0}function og(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+16|0;o=s+4|0;n=s;t=i+4|0;r=Xi[t>>2]|0;e:do{if((r|0)>=1){Xi[t>>2]=r+-1;r=sg(o,i)|0;if((r|0)>=0){a=i+8|0;r=Xi[a>>2]|0;do{if((Wi[r>>0]|0)==59){f=Xi[o>>2]|0;while(1){Xi[a>>2]=r+1;r=sg(n,i)|0;if((r|0)<0){l=7;break}r=Xi[n>>2]|0;l=iA(40)|0;if(!l){l=9;break}Xi[l>>2]=22;Ae[l+8>>3]=1.0;Xi[l+20>>2]=f;Xi[l+24>>2]=r;Xi[o>>2]=l;r=Xi[a>>2]|0;if((Wi[r>>0]|0)!=59){r=l;l=11;break}else f=l}if((l|0)==7){dg(f);break e}else if((l|0)==9){Xi[o>>2]=0;dg(f);dg(r);r=-12;break e}else if((l|0)==11)break}else r=Xi[o>>2]|0}while(0);Xi[t>>2]=(Xi[t>>2]|0)+1;Xi[e>>2]=r;r=0}}else r=-22}while(0);Ue=s;return r|0}function sg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+16|0;t=o+4|0;n=o;r=ug(t,i)|0;do{if((r|0)>=0){a=i+8|0;f=Xi[t>>2]|0;e:while(1){switch(Wi[Xi[a>>2]>>0]|0){case 43:case 45:break;default:{r=f;l=9;break e}}r=ug(n,i)|0;if((r|0)<0){l=5;break}r=Xi[n>>2]|0;l=iA(40)|0;if(!l){l=7;break}Xi[l>>2]=21;Ae[l+8>>3]=1.0;Xi[l+20>>2]=f;Xi[l+24>>2]=r;Xi[t>>2]=l;f=l}if((l|0)==5){dg(f);break}else if((l|0)==7){Xi[t>>2]=0;dg(f);dg(r);r=-12;break}else if((l|0)==9){Xi[e>>2]=r;r=0;break}}}while(0);Ue=o;return r|0}function ug(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+16|0;o=s+4|0;t=s;r=hg(o,i)|0;do{if((r|0)>=0){n=i+8|0;e:while(1){r=Xi[n>>2]|0;switch(Wi[r>>0]|0){case 47:case 42:break;default:{l=9;break e}}Xi[n>>2]=r+1;a=Wi[r>>0]|0;f=Xi[o>>2]|0;r=hg(t,i)|0;if((r|0)<0){l=5;break}r=Xi[t>>2]|0;l=iA(40)|0;if(!l){l=7;break}Xi[l>>2]=a<<24>>24==42?19:20;Ae[l+8>>3]=1.0;Xi[l+20>>2]=f;Xi[l+24>>2]=r;Xi[o>>2]=l}if((l|0)==5){dg(f);break}else if((l|0)==7){Xi[o>>2]=0;dg(f);dg(r);r=-12;break}else if((l|0)==9){Xi[e>>2]=Xi[o>>2];r=0;break}}}while(0);Ue=s;return r|0}function hg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+16|0;u=h+12|0;o=h+8|0;s=h+4|0;t=h;r=wg(s,i,u)|0;e:do{if((r|0)>=0){n=i+8|0;l=Xi[n>>2]|0;f=Xi[s>>2]|0;r=f;do{if((Wi[l>>0]|0)==94){r=l;while(1){Xi[n>>2]=r+1;r=wg(t,i,o)|0;if((r|0)<0){l=5;break}l=Xi[t>>2]|0;a=iA(40)|0;r=l;if(!a){l=7;break}Xi[a>>2]=18;Ae[a+8>>3]=1.0;Xi[a+20>>2]=f;Xi[a+24>>2]=l;Xi[s>>2]=a;if(l|0){l=r+8|0;Ae[l>>3]=+Ae[l>>3]*+(Xi[o>>2]|1|0)}r=Xi[n>>2]|0;if((Wi[r>>0]|0)!=94){r=a;f=a;l=11;break}else f=a}if((l|0)==5){dg(f);break e}else if((l|0)==7){Xi[s>>2]=0;dg(f);dg(r);r=-12;break e}else if((l|0)==11)break}}while(0);if(f|0){s=f+8|0;Ae[s>>3]=+Ae[s>>3]*+(Xi[u>>2]|1|0)}Xi[e>>2]=r;r=0}}while(0);Ue=h;return r|0}function wg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;l=t;a=i+8|0;f=Xi[a>>2]|0;if((Wi[f>>0]|0)==45){+pT(f,l);f=Xi[l>>2]|0;l=Xi[a>>2]|0;if((f|0)!=(l|0))if((Wi[f>>0]|0)==100?(Wi[f+1>>0]|0)==66:0){Xi[r>>2]=0;f=kg(e,i)|0}else{f=l;n=6}else n=6}else n=6;if((n|0)==6){n=Wi[f>>0]|0;n=(n<<24>>24==43&1)-(n<<24>>24==45&1)|0;Xi[r>>2]=n;Xi[a>>2]=f+(n&1);f=kg(e,i)|0}Ue=t;return f|0}function kg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0.0;v=Ue;Ue=Ue+48|0;b=v+24|0;h=v+16|0;t=v+8|0;a=v;d=v+32|0;w=v+28|0;u=iA(40)|0;Xi[d>>2]=u;k=i+8|0;c=Xi[k>>2]|0;Xi[w>>2]=c;e:do{if(!u)r=-12;else{E=+bg(c,w);s=Xi[d>>2]|0;n=s+8|0;Ae[n>>3]=E;u=Xi[w>>2]|0;o=s;if((u|0)!=(Xi[k>>2]|0)){Xi[s>>2]=0;Xi[k>>2]=u;Xi[e>>2]=o;r=0;break}Ae[n>>3]=1.0;l=Xi[i+16>>2]|0;i:do{if(l|0?(f=Xi[l>>2]|0,f|0):0){r=0;while(1){if(cg(u,f)|0)break;r=r+1|0;f=Xi[l+(r<<2)>>2]|0;if(!f)break i}Xi[k>>2]=u+(wR(f)|0);Xi[s>>2]=1;Xi[s+16>>2]=r;Xi[e>>2]=o;r=0;break e}}while(0);if(!(cg(u,147803)|0))if(!(cg(u,147805)|0))if(!(cg(u,147808)|0))if(!(cg(u,147812)|0)){r=GR(u,40)|0;Xi[k>>2]=r;if(!r){Xi[a>>2]=c;nA(i,16,147822,a);Xi[k>>2]=Xi[w>>2];dg(Xi[d>>2]|0);r=-22;break}Xi[k>>2]=r+1;if((Wi[u>>0]|0)==40){vA(d);r=og(d,i)|0;if((r|0)<0)break;r=Xi[k>>2]|0;if((Wi[r>>0]|0)==41){Xi[k>>2]=r+1;Xi[e>>2]=Xi[d>>2];r=0;break}else{Xi[t>>2]=c;nA(i,16,147865,t);dg(Xi[d>>2]|0);r=-22;break}}r=og(s+20|0,i)|0;if((r|0)<0){dg(Xi[d>>2]|0);break}f=Xi[k>>2]|0;r=Wi[f>>0]|0;if(r<<24>>24==44){Xi[k>>2]=f+1;og((Xi[d>>2]|0)+24|0,i)|0;f=Xi[k>>2]|0;r=Wi[f>>0]|0;if(r<<24>>24==44){Xi[k>>2]=f+1;og((Xi[d>>2]|0)+28|0,i)|0;f=Xi[k>>2]|0;r=Wi[f>>0]|0}}if(r<<24>>24!=41){Xi[h>>2]=c;nA(i,16,147886,h);dg(Xi[d>>2]|0);r=-22;break}Xi[k>>2]=f+1;n=Xi[d>>2]|0;Xi[n>>2]=2;a=Xi[w>>2]|0;do{if(!(cg(a,147924)|0)){if(cg(a,147929)|0){Xi[n+16>>2]=2;break}if(cg(a,147934)|0){Xi[n+16>>2]=3;break}if(cg(a,147939)|0){Xi[n+16>>2]=4;break}if(cg(a,147943)|0){Xi[n+16>>2]=5;break}if(cg(a,147947)|0){Xi[n+16>>2]=6;break}if(cg(a,147951)|0){Xi[n+16>>2]=7;break}if(cg(a,147956)|0){Xi[n+16>>2]=8;break}if(cg(a,147961)|0){Xi[n+16>>2]=9;break}if(cg(a,147966)|0){Xi[n+16>>2]=10;break}if(cg(a,147970)|0){Xi[n+16>>2]=11;break}if(cg(a,147974)|0){Xi[n+16>>2]=12;break}if(cg(a,147978)|0){Xi[n+16>>2]=13;break}if(cg(a,147983)|0){Xi[n>>2]=5;break}if(cg(a,147990)|0){Xi[n>>2]=6;break}if(cg(a,147996)|0){Xi[n>>2]=10;break}if(cg(a,148e3)|0){Xi[n>>2]=11;break}if(cg(a,148004)|0){Xi[n>>2]=12;break}if(cg(a,148008)|0){Xi[n>>2]=13;break}if(cg(a,148011)|0){Xi[n>>2]=15;break}if(cg(a,148015)|0){Xi[n>>2]=14;break}if(cg(a,148018)|0){Xi[n>>2]=16;break}if(cg(a,148022)|0){Xi[n>>2]=17;break}if(cg(a,148025)|0){Xi[n>>2]=7;break}if(cg(a,148028)|0){Xi[n>>2]=8;break}if(cg(a,148034)|0){Xi[n>>2]=9;break}if(cg(a,148040)|0){Xi[n>>2]=23;break}if(cg(a,148043)|0){Xi[n>>2]=24;break}if(cg(a,148049)|0){Xi[n>>2]=25;break}if(cg(a,148056)|0){Xi[n>>2]=26;break}if(cg(a,148061)|0){Xi[n>>2]=27;break}if(cg(a,148067)|0){Xi[n>>2]=28;break}if(cg(a,148072)|0){Xi[n>>2]=29;break}if(cg(a,148078)|0){Xi[n>>2]=30;break}if(cg(a,148083)|0){Xi[n>>2]=31;break}if(cg(a,148087)|0){Xi[n>>2]=18;break}if(cg(a,148091)|0){Xi[n>>2]=37;break}if(cg(a,151306)|0){Xi[n>>2]=32;break}if(cg(a,148097)|0){Xi[n>>2]=33;break}if(cg(a,148103)|0){Xi[n>>2]=34;break}if(cg(a,148107)|0){Xi[n>>2]=35;break}if(cg(a,148110)|0){Xi[n>>2]=36;break}if(cg(a,148116)|0){Xi[n>>2]=38;break}if(cg(a,148123)|0){Xi[n>>2]=39;break}if(cg(a,148129)|0){Xi[n>>2]=40;break}if(cg(a,148137)|0){Xi[n>>2]=41;break}l=Xi[i+24>>2]|0;i:do{if(l|0){r=Xi[l>>2]|0;if(!r)break;else{f=r;r=0}while(1){if(cg(a,f)|0)break;r=r+1|0;f=Xi[l+(r<<2)>>2]|0;if(!f)break i}Xi[n+16>>2]=Xi[(Xi[i+20>>2]|0)+(r<<2)>>2];r=Xi[d>>2]|0;Xi[r>>2]=3;Xi[e>>2]=r;r=0;break e}}while(0);l=Xi[i+32>>2]|0;i:do{if(l|0){r=Xi[l>>2]|0;if(!r)break;else{f=r;r=0}while(1){if(cg(a,f)|0)break;r=r+1|0;f=Xi[l+(r<<2)>>2]|0;if(!f)break i}Xi[n+16>>2]=Xi[(Xi[i+28>>2]|0)+(r<<2)>>2];r=Xi[d>>2]|0;Xi[r>>2]=4;Xi[e>>2]=r;r=0;break e}}while(0);Xi[b>>2]=c;nA(i,16,148142,b);dg(Xi[d>>2]|0);r=-22;break e}else Xi[n+16>>2]=1}while(0);Xi[e>>2]=Xi[d>>2];r=0;break}else{r=147812;f=3}else{r=147808;f=2}else{r=147805;f=1}else{r=147803;f=0}Xi[k>>2]=u+(wR(r)|0);Xi[s>>2]=0;Ae[n>>3]=+Ae[21040+(f<<4)+8>>3];Xi[e>>2]=o;r=0}}while(0);Ue=v;return r|0}function bg(e,i){e=e|0;i=i|0;var r=0.0,f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;n=t;if((Wi[e>>0]|0)==48?(Wi[e+1>>0]|32|0)==120:0)r=+((zR(e,n,16)|0)>>>0);else r=+pT(e,n);l=Xi[n>>2]|0;f=l;if((l|0)!=(e|0)){e=Wi[l>>0]|0;if(e<<24>>24==100)if((Wi[l+1>>0]|0)==66){r=+RT(r/20.0*3.321928094887362);f=l+2|0;Xi[n>>2]=f;e=f}else a=10;else if((e+-69&255)<54)a=10;else e=l;do{if((a|0)==10){e=(e<<24>>24)+-69|0;if(Wi[19744+(e*24|0)+16>>0]|0){f=l+1|0;if((Wi[f>>0]|0)==105){r=r*+Ae[19744+(e*24|0)>>3];f=l+2|0;Xi[n>>2]=f;e=f;break}else{r=r*+Ae[19744+(e*24|0)+8>>3];Xi[n>>2]=f;e=f;break}}else e=l}}while(0);if((Wi[e>>0]|0)==66){f=e+1|0;Xi[n>>2]=f;r=r*8.0}}if(i|0)Xi[i>>2]=f;Ue=t;return+r}function cg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=Wi[i>>0]|0;r=Wi[e>>0]|0;e:do{if(!(f<<24>>24))a=4;else{l=0;while(1){l=l+1|0;if(f<<24>>24!=r<<24>>24){r=0;break e}f=Wi[i+l>>0]|0;r=Wi[e+l>>0]|0;if(!(f<<24>>24)){a=4;break}}}}while(0);if((a|0)==4){a=r<<24>>24;r=r<<24>>24!=95&((a+-48|0)>>>0>9&((a&-33)+-65|0)>>>0>25)&1}return r|0}function dg(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;Xi[i>>2]=e;if(e|0){dg(Xi[e+20>>2]|0);dg(Xi[e+24>>2]|0);dg(Xi[e+28>>2]|0);vA(e+32|0);vA(i)}Ue=r;return}function vg(e){e=+e;var i=0;i=Eg()|0;return+((+(i>>>0)+4294967296.0*+(Ie|0))*1.0e-06)}function Eg(){Ie=-1;return-1}function Sg(e){e=e|0;e:do{if(!e)e=0;else switch(Xi[e>>2]|0){case 1:case 0:{e=1;break e}case 32:case 31:case 30:case 29:case 28:case 27:case 9:case 8:case 6:case 7:case 5:case 3:case 2:{if(!(Sg(Xi[e+20>>2]|0)|0))e=0;else e=(Xi[e+24>>2]|0)==0;e=e&1;break e}case 37:{if(Sg(Xi[e+20>>2]|0)|0){e=Xi[e+24>>2]|0;if(!e)e=1;else e=(Sg(e)|0)!=0}else e=0;e=e&1;break e}case 25:case 36:case 35:{if((Sg(Xi[e+20>>2]|0)|0)!=0?(Sg(Xi[e+24>>2]|0)|0)!=0:0){e=Xi[e+28>>2]|0;if(!e)e=1;else e=(Sg(e)|0)!=0}else e=0;e=e&1;break e}case 41:case 40:{if((Sg(Xi[e+20>>2]|0)|0)!=0?(Sg(Xi[e+24>>2]|0)|0)!=0:0)e=(Sg(Xi[e+28>>2]|0)|0)!=0;else e=0;e=e&1;break e}default:{if((Sg(Xi[e+20>>2]|0)|0)!=0?(Sg(Xi[e+24>>2]|0)|0)!=0:0)e=(Xi[e+28>>2]|0)==0;else e=0;e=e&1;break e}}}while(0);return e|0}function _g(e,i){e=e|0;i=i|0;var r=0.0,f=0,l=0.0,a=0,n=0.0,t=0.0,o=0,s=0,u=0.0,h=0.0,w=0,k=0.0,b=0,c=0.0,d=0.0;b=Ue;Ue=Ue+16|0;a=b;e:do{switch(Xi[i>>2]|0){case 0:{r=+Ae[i+8>>3];break}case 1:{r=+Ae[i+8>>3]*+Ae[(Xi[e+12>>2]|0)+(Xi[i+16>>2]<<3)>>3];break}case 2:{h=+Ae[i+8>>3];w=Xi[i+16>>2]|0;k=+_g(e,Xi[i+20>>2]|0);k=h*+qz[w&15](k);Ue=b;return+k}case 3:{h=+Ae[i+8>>3];s=Xi[i+16>>2]|0;w=Xi[e+36>>2]|0;k=+_g(e,Xi[i+20>>2]|0);k=h*+rV[s&0](w,k);Ue=b;return+k}case 4:{u=+Ae[i+8>>3];s=Xi[i+16>>2]|0;w=Xi[e+36>>2]|0;h=+_g(e,Xi[i+20>>2]|0);k=+_g(e,Xi[i+24>>2]|0);k=u*+iV[s&0](w,h,k);Ue=b;return+k}case 5:{k=1.0/(+Y(+(+_g(e,Xi[i+20>>2]|0)*4.0))+1.0);Ue=b;return+k}case 6:{k=+_g(e,Xi[i+20>>2]|0);k=+Y(+(k*k*-.5))/2.5066282746310002;Ue=b;return+k}case 7:{k=+Ae[i+8>>3];w=~~+_g(e,Xi[i+20>>2]|0);Ue=b;return+(k*+Ae[(Xi[e+48>>2]|0)+(((w|0)<0?0:(w|0)>9?9:w)<<3)>>3])}case 8:{k=+Ae[i+8>>3];h=+_g(e,Xi[i+20>>2]|0);Ae[ee>>3]=h;e=Xi[ee+4>>2]&2147483647;k=k*+((e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0)&1|0);Ue=b;return+k}case 9:{k=+Ae[i+8>>3];h=+_g(e,Xi[i+20>>2]|0);Ae[ee>>3]=h;k=k*+(((Xi[ee>>2]|0)==0?(Xi[ee+4>>2]&2147483647|0)==2146435072:0)&1|0);Ue=b;return+k}case 27:{k=+Ae[i+8>>3]*+L(+ +_g(e,Xi[i+20>>2]|0));Ue=b;return+k}case 28:{k=+Ae[i+8>>3]*+K(+ +_g(e,Xi[i+20>>2]|0));Ue=b;return+k}case 29:{k=+Ae[i+8>>3]*+NT(+_g(e,Xi[i+20>>2]|0));Ue=b;return+k}case 30:{k=+Ae[i+8>>3]*+R(+ +_g(e,Xi[i+20>>2]|0));Ue=b;return+k}case 31:{k=+Ae[i+8>>3]*+(+_g(e,Xi[i+20>>2]|0)==0.0|0);Ue=b;return+k}case 35:{l=+Ae[i+8>>3];if(!(+_g(e,Xi[i+20>>2]|0)!=0.0)){f=Xi[i+28>>2]|0;if(!f)r=0.0;else r=+_g(e,f)}else r=+_g(e,Xi[i+24>>2]|0);r=l*r;break}case 36:{l=+Ae[i+8>>3];if(+_g(e,Xi[i+20>>2]|0)!=0.0){f=Xi[i+28>>2]|0;if(!f)r=0.0;else r=+_g(e,f)}else r=+_g(e,Xi[i+24>>2]|0);r=l*r;break}case 41:{f=i+20|0;r=+_g(e,Xi[f>>2]|0);l=+_g(e,Xi[i+24>>2]|0);n=+_g(e,Xi[i+28>>2]|0);Ae[ee>>3]=l;w=Xi[ee+4>>2]&2147483647;if((!(w>>>0>2146435072|(w|0)==2146435072&(Xi[ee>>2]|0)>>>0>0)?(Ae[ee>>3]=n,w=Xi[ee+4>>2]&2147483647,!(w>>>0>2146435072|(w|0)==2146435072&(Xi[ee>>2]|0)>>>0>0)):0)?(Ae[ee>>3]=r,w=Xi[ee+4>>2]&2147483647,!(w>>>0>2146435072|(w|0)==2146435072&(Xi[ee>>2]|0)>>>0>0|l>n)):0){h=+Ae[i+8>>3];k=+_g(e,Xi[f>>2]|0);Ue=b;return+(h*(k<l?l:k>n?n:k))}else r=D;break}case 40:{r=+_g(e,Xi[i+20>>2]|0);l=+Ae[i+8>>3];if(!(r>=+_g(e,Xi[i+24>>2]|0)))f=0;else f=r<=+_g(e,Xi[i+28>>2]|0);r=l*+(f&1|0);break}case 37:{r=+_g(e,Xi[i+20>>2]|0);f=Xi[i+24>>2]|0;if(!f)f=32;else f=~~+_g(e,f);Ae[a>>3]=r;nA(e,f,148218,a);break}case 32:{f=~~+_g(e,Xi[i+20>>2]|0);f=(Xi[e+48>>2]|0)+(((f|0)<0?0:(f|0)>9?9:f)<<3)|0;r=+Ae[f>>3];Ae[ee>>3]=r;e=Xi[ee+4>>2]&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0)r=1013904223.0;else{e=rN(~~r>>>0|0,(+I(r)>=1.0?r>0.0?~~+W(+L(r/4294967296.0),4294967295.0)>>>0:~~+K((r-+(~~r>>>0))/4294967296.0)>>>0:0)|0,1664525,0)|0;e=WT(e|0,Ie|0,1013904223,0)|0;r=+(e>>>0)+4294967296.0*+(Ie>>>0)}Ae[f>>3]=r;r=r*5.421010862427522e-20*+Ae[i+8>>3];break}case 24:{a=i+20|0;if(+_g(e,Xi[a>>2]|0)!=0.0){f=i+24|0;do{r=+_g(e,Xi[f>>2]|0)}while(+_g(e,Xi[a>>2]|0)!=0.0)}else r=D;break}case 25:{t=+_g(e,Xi[i+24>>2]|0);f=Xi[i+28>>2]|0;if(!f)s=0;else{s=~~+_g(e,f);s=(s|0)<0?0:(s|0)>9?9:s}o=e+48|0;w=Xi[o>>2]|0;u=+Ae[w+(s<<3)>>3];a=i+20|0;Ae[w+(s<<3)>>3]=0.0;r=+_g(e,Xi[a>>2]|0);i:do{if(!(r!=0.0&r==0.0)){f=0;n=1.0;while(1){f=f+1|0;if((f|0)>=1e3)break i;n=n*(t/+(f|0));Ae[(Xi[o>>2]|0)+(s<<3)>>3]=+(f|0);k=+_g(e,Xi[a>>2]|0);l=r+n*k;if(k!=0.0&r==l){r=l;break}else r=l}}}while(0);Ae[(Xi[o>>2]|0)+(s<<3)>>3]=u;break}case 26:{w=e+48|0;k=+Ae[Xi[w>>2]>>3];h=+_g(e,Xi[i+24>>2]|0);o=i+20|0;n=-1.0;u=1797693134862315708145274.0e284;a=-1;l=-1.0;r=-1797693134862315708145274.0e284;while(1){do{if((a|0)>=255){d=h*+T(.9,+ +(a+-255|0));f=Xi[w>>2]|0;i=(a&1|0)==0;c=-d;t=i?d:c;Ae[f>>3]=i?d:c;if(!(a&2)){Ae[f>>3]=n+t;break}else{Ae[f>>3]=l+t;break}}else Ae[Xi[w>>2]>>3]=h*+(qi[146150+(a&255)>>0]|0|0)/255.0}while(0);t=+_g(e,Xi[o>>2]|0);if(t<=0.0&t>r){l=+Ae[Xi[w>>2]>>3];r=t}if(t>=0.0&t<u)n=+Ae[Xi[w>>2]>>3];else t=u;a=a+1|0;if(l>=0.0&n>=0.0){s=61;break}if((a|0)>=1024)break;else u=t}i:do{if((s|0)==61){f=0;do{d=(l+n)*.5;Ae[Xi[w>>2]>>3]=d;if(l==d|n==d)break i;u=+_g(e,Xi[o>>2]|0);if(u<=0.0)l=+Ae[Xi[w>>2]>>3];if(u>=0.0)n=+Ae[Xi[w>>2]>>3];Ae[ee>>3]=u;i=Xi[ee+4>>2]&2147483647;f=f+1|0;if(i>>>0>2146435072|(i|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){n=u;l=u;break i}}while((f|0)<1e3)}}while(0);Ae[Xi[w>>2]>>3]=k;r=t>-r?l:n;break}default:{r=+_g(e,Xi[i+20>>2]|0);l=+_g(e,Xi[i+24>>2]|0);do{switch(Xi[i>>2]|0){case 10:{r=+Ae[i+8>>3]*(r-l*+L(+(r/l)));break e}case 34:{r=+Ae[i+8>>3]*(+((fg(~~r>>>0,+I(r)>=1.0?r>0.0?~~+W(+L(r/4294967296.0),4294967295.0)>>>0:~~+K((r-+(~~r>>>0))/4294967296.0)>>>0:0,~~l>>>0,+I(l)>=1.0?l>0.0?~~+W(+L(l/4294967296.0),4294967295.0)>>>0:~~+K((l-+(~~l>>>0))/4294967296.0)>>>0:0)|0)>>>0)+4294967296.0*+(Ie|0));break e}case 11:{r=(r>l?r:l)*+Ae[i+8>>3];break e}case 12:{r=(r<l?r:l)*+Ae[i+8>>3];break e}case 13:{r=(r==l?1.0:0.0)*+Ae[i+8>>3];break e}case 14:{r=(r>l?1.0:0.0)*+Ae[i+8>>3];break e}case 15:{r=(r>=l?1.0:0.0)*+Ae[i+8>>3];break e}case 17:{r=(r<l?1.0:0.0)*+Ae[i+8>>3];break e}case 16:{r=(r<=l?1.0:0.0)*+Ae[i+8>>3];break e}case 18:{r=+Ae[i+8>>3]*+T(+r,+l);break e}case 19:{r=r*l*+Ae[i+8>>3];break e}case 20:{r=+Ae[i+8>>3]*(r/l);break e}case 21:{r=(r+l)*+Ae[i+8>>3];break e}case 22:{r=l*+Ae[i+8>>3];break e}case 23:{d=+Ae[i+8>>3];w=~~r;Ae[(Xi[e+48>>2]|0)+(((w|0)<0?0:(w|0)>9?9:w)<<3)>>3]=l;r=l*d;break e}case 33:{r=+Ae[i+8>>3]*+vT(r,l);break e}case 38:{Ae[ee>>3]=r;e=Xi[ee+4>>2]&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){r=D;break e}Ae[ee>>3]=l;e=Xi[ee+4>>2]&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){r=D;break e}r=+(~~l&~~r|0)*+Ae[i+8>>3];break e}case 39:{Ae[ee>>3]=r;e=Xi[ee+4>>2]&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){r=D;break e}Ae[ee>>3]=l;e=Xi[ee+4>>2]&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&(Xi[ee>>2]|0)>>>0>0){r=D;break e}r=+(~~l|~~r|0)*+Ae[i+8>>3];break e}default:{r=D;break e}}}while(0)}}}while(0);Ue=b;return+r}function mg(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=Xi[e+12>>2]|0;e:do{if((a|0)>=128){if((a|0)<1146442272){if((a|0)<1112493900){switch(a|0){case 128:break;default:{a=-22;break e}}Ae[r>>3]=+Ae[e+16>>3];a=0;break}if((a|0)<1128811585)switch(a|0){case 1112493900:{n=5;break e}default:{a=-22;break e}}else switch(a|0){case 1128811585:{n=6;break e}default:{a=-22;break e}}}if((a|0)<1346784596)switch(a|0){case 1146442272:{n=6;break e}default:{a=-22;break e}}if((a|0)<1397116244){switch(a|0){case 1346784596:break;default:{a=-22;break e}}e=Xi[i>>2]|0;a=l;Xi[a>>2]=e;Xi[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}else{switch(a|0){case 1397116244:break;default:{a=-22;break e}}e=Xi[i>>2]|0;a=l;Xi[a>>2]=e;Xi[a+4>>2]=((e|0)<0)<<31>>31;a=0;break}}else switch(a|0){case 1:{n=5;break e}case 2:{n=6;break e}case 0:{a=l;Xi[a>>2]=Xi[i>>2];Xi[a+4>>2]=0;a=0;break e}case 4:{Ae[r>>3]=+P[i>>2];a=0;break e}case 3:{Ae[r>>3]=+Ae[i>>3];a=0;break e}case 6:{e=Xi[i>>2]|0;a=l;Xi[a>>2]=e;Xi[a+4>>2]=((e|0)<0)<<31>>31;Xi[f>>2]=Xi[i+4>>2];a=0;break e}default:{a=-22;break e}}}while(0);if((n|0)==5){n=Xi[i>>2]|0;a=l;Xi[a>>2]=n;Xi[a+4>>2]=((n|0)<0)<<31>>31;a=0}else if((n|0)==6){e=i;n=Xi[e+4>>2]|0;a=l;Xi[a>>2]=Xi[e>>2];Xi[a+4>>2]=n;a=0}return a|0}function pg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;e:do{if(e){if(!r)r=0;else r=(r-(Xi[e+4>>2]|0)>>3)+1|0;s=Xi[e>>2]|0;if(r>>>0<s>>>0){o=Xi[e+4>>2]|0;t=(f&1|0)==0;n=(f&2|0)==0;while(1){a=Xi[o+(r<<3)>>2]|0;if(t){l=0;while(1){e=Wi[a+l>>0]|0;h=e<<24>>24;f=Wi[i+l>>0]|0;u=f<<24>>24;if(f<<24>>24==0?1:(((h+-97|0)>>>0<26?h^32:h)|0)!=(((u+-97|0)>>>0<26?u^32:u)|0))break;else l=l+1|0}}else{l=0;while(1){e=Wi[a+l>>0]|0;f=Wi[i+l>>0]|0;if(f<<24>>24==0?1:e<<24>>24!=f<<24>>24)break;else l=l+1|0}}if(!(f<<24>>24!=0|n&e<<24>>24!=0))break;r=r+1|0;if(r>>>0>=s>>>0){r=0;break e}}r=o+(r<<3)|0}else r=0}else r=0}while(0);return r|0}function Fg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+16|0;s=k+8|0;h=k+4|0;o=k;a=Xi[e>>2]|0;t=pg(a,i,0,f)|0;Xi[s>>2]=0;Xi[h>>2]=0;Xi[o>>2]=0;if(!(f&4))n=TA(i)|0;else n=i;Xi[h>>2]=n;if(!(f&8))if(!n)l=0;else{l=TA(r)|0;Xi[o>>2]=l}else{Xi[o>>2]=r;l=r}if(!a){a=iA(8)|0;Xi[e>>2]=a;if(!a)w=30;else{u=a;w=9}}else{u=a;w=9}e:do{if((w|0)==9){do{if((i|0)==0|(n|0)!=0)if((r|0)==0|(l|0)!=0){if(!t){a=u+4|0;n=hA(Xi[a>>2]|0,(Xi[u>>2]<<3)+8|0)|0;if(!n)break;Xi[a>>2]=n}else{if(f&16|0){FA(n);FA(l);l=0;break e}l=Xi[t+4>>2]|0;if(!(f&32))FA(l);else Xi[s>>2]=l;FA(Xi[t>>2]|0);i=(Xi[u>>2]|0)+-1|0;Xi[u>>2]=i;i=(Xi[u+4>>2]|0)+(i<<3)|0;r=Xi[i+4>>2]|0;Xi[t>>2]=Xi[i>>2];Xi[t+4>>2]=r}if(!(Xi[o>>2]|0)){vA(h);l=Xi[u>>2]|0}else{l=Xi[u>>2]|0;i=u+4|0;r=Xi[i>>2]|0;Xi[r+(l<<3)>>2]=Xi[h>>2];Xi[r+(l<<3)+4>>2]=Xi[o>>2];r=Xi[s>>2]|0;if(!((f&32|0)==0|(r|0)==0)){a=wR(r)|0;l=Xi[o>>2]|0;a=a+1+(wR(l)|0)|0;n=iA(a)|0;if(!n)break;gA(n,r,a)|0;vA(s);gA(n,l,a)|0;Xi[(Xi[i>>2]|0)+(Xi[u>>2]<<3)+4>>2]=n;vA(o);l=Xi[u>>2]|0}l=l+1|0;Xi[u>>2]=l}if(l|0){l=0;break e}vA(u+4|0);vA(e);l=0;break e}else l=0}while(0);if(!(Xi[u>>2]|0)){vA(u+4|0);vA(e);w=30}else w=30}}while(0);if((w|0)==30){FA(Xi[h>>2]|0);FA(l);l=-12}Ue=k;return l|0}function yg(e){e=e|0;var i=0,r=0,f=0,l=0;r=Xi[e>>2]|0;if(r|0){l=Xi[r>>2]|0;i=l+-1|0;Xi[r>>2]=i;f=r+4|0;if(l|0)do{vA((Xi[f>>2]|0)+(i<<3)|0);vA((Xi[f>>2]|0)+(Xi[r>>2]<<3)+4|0);l=Xi[r>>2]|0;i=l+-1|0;Xi[r>>2]=i}while((l|0)!=0);vA(f)}vA(e);return}function Og(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=0;do{l=pg(i,237325,l,2)|0;if(!l){f=0;break}f=Fg(e,Xi[l>>2]|0,Xi[l+4>>2]|0,r)|0}while((f|0)>=0);return f|0}function Ag(e,i){e=e|0;i=+i;var r=0,f=0.0;i=i*-3.141592653589793/180.0;f=+N(+i);i=+H(+i);Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;Xi[e+16>>2]=0;Xi[e+20>>2]=0;Xi[e+24>>2]=0;Xi[e+28>>2]=0;r=~~(f*65536.0);Xi[e>>2]=r;Xi[e+4>>2]=~~(i*-65536.0);Xi[e+12>>2]=~~(i*65536.0);Xi[e+16>>2]=r;Xi[e+32>>2]=1073741824;return}function gg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+16|0;f=l;Xi[f>>2]=1-(((i|0)!=0&1)<<1);Xi[f+4>>2]=1-(((r|0)!=0&1)<<1);Xi[f+8>>2]=1;if(r|i|0){i=0;do{r=e+(i<<2)|0;Xi[r>>2]=Zi(Xi[r>>2]|0,Xi[f+(((i|0)%3|0)<<2)>>2]|0)|0;i=i+1|0}while((i|0)!=9)}Ue=l;return}function Mg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+16|0;o=s;n=e+292|0;f=Xi[n>>2]|0;e:do{if((f>>>0<=536870910?(t=e+288|0,a=hA(Xi[t>>2]|0,(f<<2)+4|0)|0,(a|0)!=0):0)?(Xi[t>>2]=a,l=iA(20)|0,Xi[o>>2]=l,(l|0)!=0):0){f=l;do{if((r|0)>0){Xi[l+16>>2]=IA(r)|0;f=Xi[o>>2]|0;l=Xi[f+16>>2]|0;if(!l){vA(o);f=0;break e}else{Xi[f+4>>2]=Xi[l+4>>2];f=Xi[o>>2]|0;Xi[f+8>>2]=r;l=f;break}}}while(0);Xi[l>>2]=i;i=Xi[n>>2]|0;Xi[n>>2]=i+1;Xi[(Xi[t>>2]|0)+(i<<2)>>2]=f;f=Xi[o>>2]|0}else f=0}while(0);Ue=s;return f|0}function Rg(e,i,r){e=e|0;i=i|0;r=r|0;e=e+320|0;Xi[e>>2]=i;Xi[e+4>>2]=r;return}function Tg(e,i,r){e=e|0;i=i|0;r=r|0;e=e+336|0;Xi[e>>2]=i;Xi[e+4>>2]=r;return}function Ng(e,i,r){e=e|0;i=i|0;r=r|0;e=e+328|0;Xi[e>>2]=i;Xi[e+4>>2]=r;return}function Dg(e){e=e|0;return Xi[e+352>>2]|0}function Cg(e,i){e=e|0;i=i|0;Xi[e+352>>2]=i;return}function Pg(e,i){e=e|0;i=i|0;Xi[e+356>>2]=i;return}function Lg(e){e=e|0;return Xi[e+312>>2]|0}function Ig(e,i){e=e|0;i=i|0;Xi[e+312>>2]=i;return}function Hg(e){e=e|0;return Xi[e+300>>2]|0}function Bg(e,i){e=e|0;i=i|0;Xi[e+300>>2]=i;return}function Ug(e){e=e|0;return e+344|0}function xg(){var e=0;e=iA(376)|0;if(!e)e=0;else{Xi[e+64>>2]=0;zg(e)}return e|0}function zg(e){e=e|0;var i=0,r=0;i=e+64|0;if((Xi[i>>2]|0)!=(e|0))vA(i);jT(e|0,0,376)|0;r=e+112|0;Xi[r>>2]=0;Xi[r+4>>2]=-2147483648;r=e+120|0;Xi[r>>2]=0;Xi[r+4>>2]=-2147483648;r=e+104|0;Xi[r>>2]=0;Xi[r+4>>2]=-2147483648;r=e+320|0;Xi[r>>2]=0;Xi[r+4>>2]=-2147483648;r=e+336|0;Xi[r>>2]=0;Xi[r+4>>2]=0;r=e+328|0;Xi[r>>2]=-1;Xi[r+4>>2]=-1;Xi[e+356>>2]=-1;Xi[e+84>>2]=1;Xi[e+92>>2]=0;Xi[e+96>>2]=1;Xi[e+80>>2]=-1;Xi[i>>2]=e;Xi[e+304>>2]=2;Xi[e+308>>2]=2;Xi[e+312>>2]=2;Xi[e+300>>2]=0;Xi[e+316>>2]=0;return}function Vg(e){e=e|0;var i=0;if(e|0?(i=Xi[e>>2]|0,i|0):0){Yg(i);vA(e)}return}function Yg(e){e=e|0;var i=0,r=0,f=0;if(e|0){jg(e);UA(e+248|0);UA(e+252|0);UA(e+256|0);UA(e+260|0);UA(e+264|0);UA(e+268|0);UA(e+272|0);UA(e+276|0);r=e+284|0;i=e+280|0;if((Xi[r>>2]|0)>0){f=0;do{UA((Xi[i>>2]|0)+(f<<2)|0);f=f+1|0}while((f|0)<(Xi[r>>2]|0))}vA(i);yg(e+344|0);UA(e+372|0);zg(e)}return}function jg(e){e=e|0;var i=0,r=0,f=0,l=0;r=e+292|0;e=e+288|0;if((Xi[r>>2]|0)>0){i=0;do{f=(Xi[e>>2]|0)+(i<<2)|0;l=Xi[f>>2]|0;UA(l+16|0);yg(l+12|0);vA(f);i=i+1|0}while((i|0)<(Xi[r>>2]|0))}Xi[r>>2]=0;vA(e);return}function Kg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;h=e+80|0;f=Xi[h>>2]|0;e:do{if((f|0)>=0){a=e+68|0;if((Xi[a>>2]|0)>0?(k=e+72|0,(Xi[k>>2]|0)>0):0){w=Wg(f)|0;if(!w){r=-22;break}r=Gg(Xi[a>>2]|0,Xi[k>>2]|0,0,0)|0;if((r|0)<0)break;l=e+32|0;r=Xi[l>>2]|0;if(!r)if((i|0)>=1){n=i+-1|0;f=1;do{r=Xg(l,Xi[h>>2]|0,f+-1+(Xi[a>>2]|0)&0-f)|0;if((r|0)<0)break e;r=Xi[l>>2]|0;f=f<<1}while(!((f|0)>(i|0)|(r&n|0)==0));a=0-i|0;if(r){r=r+n&a;Xi[l>>2]=r;f=e+36|0;l=Xi[f>>2]|0;if((l|0?(Xi[f>>2]=l+n&a,t=e+40|0,o=Xi[t>>2]|0,o|0):0)?(Xi[t>>2]=o+n&a,s=e+44|0,u=Xi[s>>2]|0,u|0):0)Xi[s>>2]=u+n&a;if(r)b=13;else b=20}else b=20}else b=20;else b=13;i:do{if((b|0)==13){a=w+6|0;l=0;while(1){f=(Xi[k>>2]|0)+31&-32;if((l+-1|0)>>>0<2)f=0-(0-f>>(qi[a>>0]|0))|0;r=IA((Zi(f,r)|0)+31|0)|0;Xi[e+248+(l<<2)>>2]=r;if(!r)break i;Xi[e+(l<<2)>>2]=Xi[r+4>>2];l=l+1|0;if((l|0)>=4){b=20;break i}r=Xi[e+32+(l<<2)>>2]|0;if(!r){b=20;break}}}}while(0);do{if((b|0)==20){if(!(0==0?(Xi[w+8>>2]&66|0)==0:0)){b=e+252|0;UA(b);r=IA(1024)|0;Xi[b>>2]=r;if(!r)break;Xi[e+4>>2]=Xi[r+4>>2]}Xi[e+64>>2]=e;r=0;break e}}while(0);Yg(e);r=-12;break}t=e+76|0;if((Xi[t>>2]|0)>0){n=e+240|0;k=n;l=e+352|0;if((Xi[k>>2]|0)==0&(Xi[k+4>>2]|0)==0?(Xi[l>>2]|0)<=0:0){r=-22;break}a=OA(f)|0;f=Xi[l>>2]|0;if(!f){f=n;f=JA(Xi[f>>2]|0,Xi[f+4>>2]|0)|0;Xi[l>>2]=f}n=a|0?f:1;o=e+32|0;if((Xi[o>>2]|0)==0?(r=yA(o,f,Xi[t>>2]|0,Xi[h>>2]|0,i)|0,(r|0)<0):0)break;t=(n|0)>8;do{if(!t){r=e+64|0;Xi[r>>2]=e;if((n|0)>0)l=n;else{r=0;break e}}else{if(n>>>0<536870911)r=iA(n<<2)|0;else r=0;l=e+64|0;Xi[l>>2]=r;f=n+-8|0;if(f>>>0<536870911){k=iA(f<<2)|0;r=e+280|0;Xi[r>>2]=k;if(!((k|0)==0|(Xi[l>>2]|0)==0)){Xi[e+284>>2]=f;r=l;l=8;break}}else{r=e+280|0;Xi[r>>2]=0}vA(l);vA(r);r=-12;break e}}while(0);a=0;do{f=IA(Xi[o>>2]|0)|0;Xi[e+248+(a<<2)>>2]=f;if(!f){b=48;break}k=Xi[f+4>>2]|0;Xi[e+(a<<2)>>2]=k;Xi[(Xi[r>>2]|0)+(a<<2)>>2]=k;a=a+1|0}while((a|0)<(l|0));if((b|0)==48){Yg(e);r=-12;break}n=n+-8|0;if(t){f=e+280|0;a=0;while(1){l=IA(Xi[o>>2]|0)|0;Xi[(Xi[f>>2]|0)+(a<<2)>>2]=l;l=Xi[(Xi[f>>2]|0)+(a<<2)>>2]|0;if(!l)break;Xi[(Xi[r>>2]|0)+(a+8<<2)>>2]=Xi[l+4>>2];a=a+1|0;if((a|0)>=(n|0)){r=0;break e}}Yg(e);r=-12}else r=0}else r=-22}else r=-22}while(0);return r|0}function Wg(e){e=e|0;return(e>>>0>336?0:21104+(e*152|0)|0)|0}function Gg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0;n=Ue;Ue=Ue+32|0;a=n;l=n+8|0;Xi[l>>2]=90220;Xi[l+4>>2]=r;Xi[l+8>>2]=f;if((e|0)>0&(i|0)>0?(r=rN(i+128|0,0,e+128|0,0)|0,f=Ie,f>>>0<0|(f|0)==0&r>>>0<268435455):0)i=0;else{Xi[a>>2]=e;Xi[a+4>>2]=i;nA(l,16,149950,a);i=-22}Ue=n;return i|0}function Xg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;w=Ue;Ue=Ue+32|0;u=w+16|0;h=w;n=Wg(i)|0;Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;e:do{if((n|0)!=0?(o=Xi[n+8>>2]|0,(o&8|0)==0&0==0):0){Xi[u>>2]=0;Xi[u+4>>2]=0;Xi[u+8>>2]=0;Xi[u+12>>2]=0;Xi[h>>2]=0;Xi[h+4>>2]=0;Xi[h+8>>2]=0;Xi[h+12>>2]=0;a=0;do{i=Xi[n+16+(a<<5)+4>>2]|0;f=Xi[n+16+(a<<5)>>2]|0;l=u+(f<<2)|0;if((i|0)>(Xi[l>>2]|0)){Xi[l>>2]=i;Xi[h+(f<<2)>>2]=a}a=a+1|0}while((a|0)!=4);s=(r|0)<0;t=n+5|0;n=r+-1|0;l=(o&4|0)==0&0==0;a=0;while(1){f=Xi[u+(a<<2)>>2]|0;if(s){i=-22;break e}if(((Xi[h+(a<<2)>>2]|0)+-1|0)>>>0<2)i=qi[t>>0]|0;else i=0;i=n+(1<<i)>>i;if(i|0?(2147483647/(i|0)|0|0)<(f|0):0){i=-22;break e}i=Zi(i,f)|0;i=l?i:i+7>>3;if((i|0)<0)break e;Xi[e+(a<<2)>>2]=i;a=a+1|0;if((a|0)>=4){i=0;break}}}else i=-22}while(0);Ue=w;return i|0}function qg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;Xi[e+80>>2]=Xi[i+80>>2];Xi[e+68>>2]=Xi[i+68>>2];Xi[e+72>>2]=Xi[i+72>>2];n=i+352|0;Xi[e+352>>2]=Xi[n>>2];f=i+240|0;a=Xi[f+4>>2]|0;r=e+240|0;Xi[r>>2]=Xi[f>>2];Xi[r+4>>2]=a;Xi[e+76>>2]=Xi[i+76>>2];r=Jg(e,i,0)|0;e:do{if((r|0)>=0){r=Xi[i+248>>2]|0;if(!r){r=Kg(e,32)|0;if((r|0)<0)break;r=Zg(e,i)|0;if((r|0)>=0)break;Yg(e);break}else f=0;while(1){if(r|0?(a=BA(r)|0,Xi[e+248+(f<<2)>>2]=a,(a|0)==0):0){r=-12;break}f=f+1|0;if(f>>>0>=8){l=10;break}r=Xi[i+248+(f<<2)>>2]|0}i:do{if((l|0)==10){l=i+280|0;r:do{if(Xi[l>>2]|0){a=i+284|0;r=Xi[a>>2]|0;if(r|0?(2147483647/(r>>>0)|0)>>>0>4:0){f=iA(r<<2)|0;r=e+280|0;Xi[r>>2]=f;if(!f){r=-12;break i}Xi[e+284>>2]=Xi[a>>2];if((Xi[a>>2]|0)>0)f=0;else break;while(1){t=BA(Xi[(Xi[l>>2]|0)+(f<<2)>>2]|0)|0;Xi[(Xi[r>>2]|0)+(f<<2)>>2]=t;if(!(Xi[(Xi[r>>2]|0)+(f<<2)>>2]|0)){r=-12;break i}f=f+1|0;if((f|0)>=(Xi[a>>2]|0))break r}}Xi[e+280>>2]=0;r=-12;break i}}while(0);l=i+64|0;if((Xi[l>>2]|0)==(i|0))Xi[e+64>>2]=e;else{r=Xi[n>>2]|0;if(!r){r=-22;break}if((2147483647/(r>>>0)|0)>>>0<5){Xi[e+64>>2]=0;r=-12;break}r=r<<2;f=rA(r)|0;Xi[e+64>>2]=f;if(!f){r=-12;break}qT(f|0,Xi[l>>2]|0,r|0)|0}Xi[e>>2]=Xi[i>>2];Xi[e+4>>2]=Xi[i+4>>2];Xi[e+8>>2]=Xi[i+8>>2];Xi[e+12>>2]=Xi[i+12>>2];Xi[e+16>>2]=Xi[i+16>>2];Xi[e+20>>2]=Xi[i+20>>2];Xi[e+24>>2]=Xi[i+24>>2];Xi[e+28>>2]=Xi[i+28>>2];r=e+32|0;t=i+32|0;Xi[r>>2]=Xi[t>>2];Xi[r+4>>2]=Xi[t+4>>2];Xi[r+8>>2]=Xi[t+8>>2];Xi[r+12>>2]=Xi[t+12>>2];Xi[r+16>>2]=Xi[t+16>>2];Xi[r+20>>2]=Xi[t+20>>2];Xi[r+24>>2]=Xi[t+24>>2];Xi[r+28>>2]=Xi[t+28>>2];r=0;break e}}while(0);Yg(e)}}while(0);return r|0}function Jg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;Xi[e+84>>2]=Xi[i+84>>2];Xi[e+88>>2]=Xi[i+88>>2];f=i+92|0;l=Xi[f+4>>2]|0;a=e+92|0;Xi[a>>2]=Xi[f>>2];Xi[a+4>>2]=l;a=i+104|0;l=Xi[a+4>>2]|0;f=e+104|0;Xi[f>>2]=Xi[a>>2];Xi[f+4>>2]=l;Xi[e+208>>2]=Xi[i+208>>2];Xi[e+212>>2]=Xi[i+212>>2];Xi[e+216>>2]=Xi[i+216>>2];Xi[e+220>>2]=Xi[i+220>>2];Xi[e+232>>2]=Xi[i+232>>2];Xi[e+140>>2]=Xi[i+140>>2];f=i+112|0;l=Xi[f+4>>2]|0;a=e+112|0;Xi[a>>2]=Xi[f>>2];Xi[a+4>>2]=l;a=i+120|0;l=Xi[a+4>>2]|0;f=e+120|0;Xi[f>>2]=Xi[a>>2];Xi[f+4>>2]=l;f=i+328|0;l=Xi[f+4>>2]|0;a=e+328|0;Xi[a>>2]=Xi[f>>2];Xi[a+4>>2]=l;Xi[e+356>>2]=Xi[i+356>>2];a=i+336|0;l=Xi[a+4>>2]|0;f=e+336|0;Xi[f>>2]=Xi[a>>2];Xi[f+4>>2]=l;f=i+224|0;l=Xi[f+4>>2]|0;a=e+224|0;Xi[a>>2]=Xi[f>>2];Xi[a+4>>2]=l;Xi[e+136>>2]=Xi[i+136>>2];a=i+320|0;l=Xi[a+4>>2]|0;f=e+320|0;Xi[f>>2]=Xi[a>>2];Xi[f+4>>2]=l;Xi[e+128>>2]=Xi[i+128>>2];Xi[e+132>>2]=Xi[i+132>>2];Xi[e+296>>2]=Xi[i+296>>2];Xi[e+348>>2]=Xi[i+348>>2];Xi[e+304>>2]=Xi[i+304>>2];Xi[e+308>>2]=Xi[i+308>>2];Xi[e+312>>2]=Xi[i+312>>2];Xi[e+300>>2]=Xi[i+300>>2];Xi[e+316>>2]=Xi[i+316>>2];Og(e+344|0,Xi[i+344>>2]|0,0)|0;f=e+144|0;l=i+144|0;a=f+64|0;do{Xi[f>>2]=Xi[l>>2];f=f+4|0;l=l+4|0}while((f|0)<(a|0));o=i+292|0;f=Xi[o>>2]|0;e:do{if((f|0)>0){s=i+288|0;u=i+68|0;h=e+68|0;w=i+72|0;k=e+72|0;t=(r|0)==0;n=0;while(1){r=Xi[(Xi[s>>2]|0)+(n<<2)>>2]|0;l=Xi[r>>2]|0;if(!l){if((Xi[u>>2]|0)==(Xi[h>>2]|0)?(Xi[w>>2]|0)==(Xi[k>>2]|0):0)b=6}else b=6;if((b|0)==6){b=0;if(t){f=Mg(e,l,0)|0;if(!f){b=11;break}l=BA(Xi[r+16>>2]|0)|0;Xi[f+16>>2]=l;if(!l){b=13;break}Xi[f+4>>2]=Xi[l+4>>2];Xi[f+8>>2]=Xi[l+8>>2]}else{a=r+8|0;f=Mg(e,l,Xi[a>>2]|0)|0;if(!f){b=8;break}qT(Xi[f+4>>2]|0,Xi[r+4>>2]|0,Xi[a>>2]|0)|0}Og(f+12|0,Xi[r+12>>2]|0,0)|0;f=Xi[o>>2]|0}n=n+1|0;if((n|0)>=(f|0)){b=17;break e}}if((b|0)==8){jg(e);f=-12;break}else if((b|0)==11){jg(e);f=-12;break}else if((b|0)==13){jg(e);f=-12;break}}else b=17}while(0);if((b|0)==17){a=e+360|0;Xi[a>>2]=0;r=e+364|0;Xi[r>>2]=0;n=e+368|0;Xi[n>>2]=0;f=e+372|0;UA(f);l=Xi[i+372>>2]|0;if((l|0)!=0?(c=BA(l)|0,Xi[f>>2]=c,(c|0)!=0):0){Xi[a>>2]=Xi[c+4>>2];Xi[r>>2]=Xi[i+364>>2];Xi[n>>2]=Xi[i+368>>2];f=0}else f=0}return f|0}function Zg(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+16|0;o=k;w=e+80|0;n=Xi[w>>2]|0;e:do{if(!((n|0)<0?1:(n|0)!=(Xi[i+80>>2]|0))){a=Xi[e+68>>2]|0;if((a|0)>0?(r=Xi[e+72>>2]|0,(r|0)>0):0){l=i+68|0;i:do{if((a|0)>=(Xi[l>>2]|0)?(t=i+72|0,(r|0)>=(Xi[t>>2]|0)):0){r=Qg(n)|0;if((r|0)>0){f=0;do{if(!(Xi[e+(f<<2)>>2]|0)){r=-22;break i}if(!(Xi[i+(f<<2)>>2]|0)){r=-22;break i}f=f+1|0}while((f|0)<(r|0))}Xi[o>>2]=Xi[i>>2];Xi[o+4>>2]=Xi[i+4>>2];Xi[o+8>>2]=Xi[i+8>>2];Xi[o+12>>2]=Xi[i+12>>2];$g(e,e+32|0,o,i+32|0,Xi[w>>2]|0,Xi[l>>2]|0,Xi[t>>2]|0);r=0}else r=-22}while(0);break}r=e+76|0;if(((((Xi[r>>2]|0)>0?(f=e+240|0,o=f,!((Xi[o>>2]|0)==0&(Xi[o+4>>2]|0)==0)):0)?(s=OA(n)|0,u=Xi[e+352>>2]|0,s=s|0?u:1,h=Xi[r>>2]|0,(h|0)==(Xi[i+76>>2]|0)):0)?(u|0)==(Xi[i+352>>2]|0):0)?(t=f,o=i+240|0,(Xi[t>>2]|0)==(Xi[o>>2]|0)?(Xi[t+4>>2]|0)==(Xi[o+4>>2]|0):0):0){a=Xi[e+64>>2]|0;f=i+64|0;if((s|0)>0){l=0;do{if(!(Xi[a+(l<<2)>>2]|0)){r=-22;break e}r=Xi[f>>2]|0;if(!(Xi[r+(l<<2)>>2]|0)){r=-22;break e}l=l+1|0}while((l|0)<(s|0))}else r=Xi[f>>2]|0;rM(a,r,0,0,h,u,Xi[w>>2]|0)|0;r=0}else r=-22}else r=-22}while(0);Ue=k;return r|0}function Qg(e){e=e|0;var i=0,r=0,f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;Xi[l>>2]=0;Xi[l+4>>2]=0;Xi[l+8>>2]=0;Xi[l+12>>2]=0;if(e>>>0>336|(21104+(e*152|0)|0)==0)i=-22;else{i=Wi[21104+(e*152|0)+4>>0]|0;if(!(i<<24>>24)){r=0;e=0;f=0;i=0}else{i=i&255;r=0;do{Xi[l+(Xi[21104+(e*152|0)+16+(r<<5)>>2]<<2)>>2]=1;r=r+1|0}while((r|0)<(i|0));r=Xi[l+4>>2]|0;e=Xi[l+8>>2]|0;f=Xi[l+12>>2]|0;i=Xi[l>>2]|0}i=f+(e+(r+i))|0}Ue=a;return i|0}function $g(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=Ue;Ue=Ue+16|0;k=b;u=Wg(l)|0;e:do{if(u|0?(t=Xi[u+8>>2]|0,(t&8|0)==0&0==0):0){if(!((t&66|0)==0&0==0)){eM(Xi[e>>2]|0,Xi[i>>2]|0,Xi[r>>2]|0,Xi[f>>2]|0,a,n);qT(Xi[e+4>>2]|0,Xi[r+4>>2]|0,1024)|0;break}t=Wi[u+4>>0]|0;if(t<<24>>24){o=t&255;s=0;t=0;do{w=(Xi[u+16+(s<<5)>>2]|0)+1|0;t=(t|0)>(w|0)?t:w;s=s+1|0}while((s|0)<(o|0));if((t|0)>0){w=0-n|0;o=u+6|0;h=0;while(1){s=iM(l,a,h)|0;if((s|0)<0)break;if((h+-1|0)>>>0<2)u=0-(w>>(qi[o>>0]|0))|0;else u=n;eM(Xi[e+(h<<2)>>2]|0,Xi[i+(h<<2)>>2]|0,Xi[r+(h<<2)>>2]|0,Xi[f+(h<<2)>>2]|0,s,u);h=h+1|0;if((h|0)>=(t|0))break e}nA(0,16,150064,k)}}}}while(0);Ue=b;return}function eM(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=Ue;Ue=Ue+32|0;t=o+16|0;n=o;if((e|0)!=0&(r|0)!=0){if((((f|0)>-1?f:0-f|0)|0)<(l|0)){Xi[n>>2]=149981;Xi[n+4>>2]=150012;Xi[n+8>>2]=293;nA(0,0,150445,n);$e()}if((((i|0)>-1?i:0-i|0)|0)<(l|0)){Xi[t>>2]=150033;Xi[t+4>>2]=150012;Xi[t+8>>2]=294;nA(0,0,150445,t);$e()}if((a|0)>0)while(1){qT(e|0,r|0,l|0)|0;if((a|0)>1){e=e+i|0;r=r+f|0;a=a+-1|0}else break}}Ue=o;return}function iM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+32|0;t=u+16|0;o=u;n=Wg(e)|0;do{if((n|0)!=0?(s=Xi[n+8>>2]|0,(s&8|0)==0&0==0):0){Xi[t>>2]=0;Xi[t+4>>2]=0;Xi[t+8>>2]=0;Xi[t+12>>2]=0;Xi[o>>2]=0;Xi[o+4>>2]=0;Xi[o+8>>2]=0;Xi[o+12>>2]=0;a=0;do{e=Xi[n+16+(a<<5)+4>>2]|0;f=Xi[n+16+(a<<5)>>2]|0;l=t+(f<<2)|0;if((e|0)>(Xi[l>>2]|0)){Xi[l>>2]=e;Xi[o+(f<<2)>>2]=a}a=a+1|0}while((a|0)!=4);f=Xi[t+(r<<2)>>2]|0;if((i|0)>=0){if(((Xi[o+(r<<2)>>2]|0)+-1|0)>>>0<2)e=qi[n+5>>0]|0;else e=0;e=i+-1+(1<<e)>>e;if(e|0?(2147483647/(e|0)|0|0)<(f|0):0){e=-22;break}e=Zi(e,f)|0;e=(s&4|0)==0&0==0?e:e+7>>3}else e=-22}else e=-22}while(0);Ue=u;return e|0}function rM(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0;if(n>>>0>9){s=1;t=a;a=0}else{t=(n+-5|0)>>>0<5;s=t?a:1;t=t?1:a;a=Xi[89688+(n*20|0)+8>>2]>>3}a=Zi(a,t)|0;o=Zi(a,l)|0;r=Zi(a,r)|0;l=Zi(a,f)|0;a=Xi[e>>2]|0;t=Xi[i>>2]|0;f=t;u=a;n=(s|0)>0;if(((a>>>0<t>>>0?f-u|0:u-f|0)|0)<(o|0)){if(n?(JT(a+r|0,t+l|0,o|0)|0,(s|0)!=1):0){a=1;do{JT((Xi[e+(a<<2)>>2]|0)+r|0,(Xi[i+(a<<2)>>2]|0)+l|0,o|0)|0;a=a+1|0}while((a|0)!=(s|0))}}else if(n?(qT(a+r|0,t+l|0,o|0)|0,(s|0)!=1):0){a=1;do{qT((Xi[e+(a<<2)>>2]|0)+r|0,(Xi[i+(a<<2)>>2]|0)+l|0,o|0)|0;a=a+1|0}while((a|0)!=(s|0))}return 0}function fM(e,i){e=e|0;i=i|0;qT(e|0,i|0,376)|0;if((Xi[i+64>>2]|0)==(i|0))Xi[e+64>>2]=e;jT(i|0,0,376)|0;zg(i);return}function lM(e,i){e=e|0;i=i|0;return Jg(e,i,1)|0}function aM(){return iA(88)|0}function nM(e){e=e|0;var i=0;i=e;Xi[i>>2]=0;Xi[i+4>>2]=0;Xi[e+72>>2]=271733878;Xi[e+76>>2]=-1732584194;Xi[e+80>>2]=-271733879;Xi[e+84>>2]=1732584193;return}function tM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=e;u=Xi[s>>2]|0;f=u&63;s=WT(u|0,Xi[s+4>>2]|0,r|0,((r|0)<0)<<31>>31|0)|0;u=e;Xi[u>>2]=s;Xi[u+4>>2]=Ie;if(f){l=64-f|0;l=(l|0)<(r|0)?l:r;qT(e+8+f|0,i|0,l|0)|0;if((l+f|0)>=64){oM(e+72|0,e+8|0,1);i=i+l|0;r=r-l|0;a=4}}else a=4;if((a|0)==4){l=i;f=r&-64;u=i+f|0;if(l&3){if((f|0)>0){o=e+8|0;s=e+72|0;t=i+(r&-64)|0;f=i+64|0;l=(t>>>0>f>>>0?t:f)+~l+64&-64;f=i;do{a=o;n=f;t=a+64|0;do{Wi[a>>0]=Wi[n>>0]|0;a=a+1|0;n=n+1|0}while((a|0)<(t|0));oM(s,o,1);f=f+64|0}while(f>>>0<u>>>0);i=i+l|0}}else{oM(e+72|0,i,(r|0)/64|0);i=u}f=r&63;if(f|0)qT(e+8|0,i|0,f|0)|0}return}function oM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;if((r|0)>0){h=e+12|0;w=e+8|0;k=e+4|0;b=Xi[e>>2]|0;c=Xi[k>>2]|0;d=Xi[w>>2]|0;v=Xi[h>>2]|0;E=0;do{s=E<<4;a=v;n=d;l=c;f=b;u=0;while(1){o=qi[(u&3)+(150094+(u>>4<<2))>>0]|0;t=(Xi[90264+(u<<2)>>2]|0)+a|0;do{if((u|0)<32)if((u|0)<16){a=(Xi[i+((u&15|s)<<2)>>2]|0)+((f^l)&n^f)|0;break}else{a=(Xi[i+(((u*5|0)+1&15|s)<<2)>>2]|0)+(f&n|l&~f)|0;break}else if((u|0)<48){a=(Xi[i+(((u*3|0)+5&15|s)<<2)>>2]|0)+(l^n^f)|0;break}else{a=(Xi[i+((u*7&15|s)<<2)>>2]|0)+((n|~f)^l)|0;break}}while(0);a=t+a|0;a=(a<<o|a>>>(32-o|0))+n|0;u=u+1|0;if((u|0)==64)break;else{t=n;o=f;n=a;f=l;l=t;a=o}}b=b+l|0;Xi[e>>2]=b;c=c+n|0;Xi[k>>2]=c;d=d+a|0;Xi[w>>2]=d;v=v+f|0;Xi[h>>2]=v;E=E+1|0}while((E|0)!=(r|0))}return}function sM(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=Ue;Ue=Ue+16|0;r=f;a=e;a=KT(Xi[a>>2]|0,Xi[a+4>>2]|0,3)|0;l=r;Xi[l>>2]=a;Xi[l+4>>2]=Ie;tM(e,150110,1);if(!(0==0?(Xi[e>>2]&63|0)==56:0))do{tM(e,237325,1)}while(!(0==0?(Xi[e>>2]&63|0)==56:0));tM(e,r,8);l=Xi[e+84>>2]|0;Wi[i>>0]=l;Wi[i+1>>0]=l>>8;Wi[i+2>>0]=l>>16;Wi[i+3>>0]=l>>24;l=Xi[e+80>>2]|0;a=i+4|0;Wi[a>>0]=l;Wi[a+1>>0]=l>>8;Wi[a+2>>0]=l>>16;Wi[a+3>>0]=l>>24;a=Xi[e+76>>2]|0;l=i+8|0;Wi[l>>0]=a;Wi[l+1>>0]=a>>8;Wi[l+2>>0]=a>>16;Wi[l+3>>0]=a>>24;l=Xi[e+72>>2]|0;a=i+12|0;Wi[a>>0]=l;Wi[a+1>>0]=l>>8;Wi[a+2>>0]=l>>16;Wi[a+3>>0]=l>>24;Ue=f;return}function uM(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+16|0;s=u;Xi[s>>2]=0;Xi[s+4>>2]=0;Xi[s+8>>2]=0;Xi[s+12>>2]=0;i=Wg(i)|0;Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;e:do{if(((i|0)!=0?(n=Xi[i+8>>2]|0,(n&8|0)==0&0==0):0)?(Xi[e>>2]=f,a=Xi[l>>2]|0,(a|0)<=(2147482623/(r|0)|0|0)):0){a=Zi(a,r)|0;if(!((n&66|0)==0&0==0)){Xi[e+4>>2]=f+a;i=a+1024|0;break}Xi[s+(Xi[i+16>>2]<<2)>>2]=1;Xi[s+(Xi[i+48>>2]<<2)>>2]=1;Xi[s+(Xi[i+80>>2]<<2)>>2]=1;Xi[s+(Xi[i+112>>2]<<2)>>2]=1;o=r+-1|0;t=i+6|0;n=a;r=1;i=a;do{if(!(Xi[s+(r<<2)>>2]|0))break e;if((r+-1|0)>>>0<2)a=qi[t>>0]|0;else a=0;f=f+n|0;Xi[e+(r<<2)>>2]=f;a=o+(1<<a)>>a;n=Xi[l+(r<<2)>>2]|0;if((n|0)>(2147483647/(a|0)|0|0)){i=-22;break e}n=Zi(a,n)|0;if((i|0)>(2147483647-n|0)){i=-22;break e}i=n+i|0;r=r+1|0}while((r|0)<4)}else i=-22}while(0);Ue=u;return i|0}function hM(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;l=0;e:while(1){switch(i|0){case 22:{r=(l&3)*85|0;f=(l>>>2&7)*36|0;a=(l>>5)*36|0;break}case 19:{r=(l>>6)*85|0;f=(l>>>3&7)*36|0;a=(l&7)*36|0;break}case 24:{r=0-(l&1)&255;f=(l>>>1&3)*85|0;a=(l>>3)*255|0;break}case 21:{r=(l>>3)*255|0;f=(l>>>1&3)*85|0;a=0-(l&1)&255;break}case 8:{r=l;f=l;a=l;break}default:{r=-22;break e}}Xi[e+(l<<2)>>2]=(a<<16)+-16777216+(f<<8)+r;l=l+1|0;if((l|0)>=256){r=0;break}}return r|0}function wM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Xi[r+4>>2]|0;if((f|0)>=1?(l=Xi[r>>2]|0,(l|0)>=0):0)if((l|0)==0|(l|0)==(f|0))f=0;else{if((l|0)<(f|0)){l=kM(e,0,l,((l|0)<0)<<31>>31,f,((f|0)<0)<<31>>31,0)|0;f=Ie}else{l=kM(i,0,f,((f|0)<0)<<31>>31,l,((l|0)<0)<<31>>31,0)|0;f=Ie}f=(f|0)>0|(f|0)==0&l>>>0>0?0:-22}else f=-22;return f|0}function kM(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0;do{if(!((f|0)<0|((a|0)<0|(a|0)==0&l>>>0<1))?(s=n&-8193,!(s>>>0>5|(s|0)==4)):0){if(n&8192){s=WT(e|0,i|0,1,-2147483648)|0;o=Ie;if(o>>>0<0|(o|0)==0&s>>>0<2)break;n=n+-8192|0}if((i|0)<0){s=(i|0)>-2147483648|(i|0)==-2147483648&e>>>0>1;o=YT(0,0,e|0,i|0)|0;a=kM(s?o:-1,s?Ie:2147483647,r,f,l,a,n>>>1&1^n)|0;a=YT(0,0,a|0,Ie|0)|0;return a|0}if((n|0)==5){n=eN(l|0,a|0,2,0)|0;t=Ie}else{t=(n&1|0)==0;n=WT(l|0,a|0,-1,-1)|0;n=t?0:n;t=t?0:Ie}if(!(((f|0)<0|(f|0)==0&r>>>0<2147483648)&((a|0)<0|(a|0)==0&l>>>0<2147483648))){u=GT(e|0,i|0,32)|0;i=Ie;w=GT(r|0,f|0,32)|0;h=Ie;s=rN(w|0,h|0,e|0,0)|0;o=Ie;f=rN(r|0,0,u|0,i|0)|0;f=WT(s|0,o|0,f|0,Ie|0)|0;o=Ie;r=rN(r|0,0,e|0,0)|0;r=WT(0,f|0,r|0,Ie|0)|0;s=Ie;e=rN(w|0,h|0,u|0,i|0)|0;e=WT(o|0,0,e|0,Ie|0)|0;e=WT(e|0,Ie|0,(s>>>0<f>>>0|(s|0)==(f|0)&r>>>0<0)&1|0,0)|0;i=Ie;s=WT(n|0,t|0,r|0,s|0)|0;r=Ie;i=WT(e|0,i|0,(r>>>0<t>>>0|(r|0)==(t|0)&s>>>0<n>>>0)&1|0,0)|0;t=Ie;n=f;e=o;o=63;while(1){u=XT(s|0,r|0,o|0)|0;w=KT(i|0,t|0,1)|0;h=Ie;u=w|u&1;n=KT(n|0,e|0,1)|0;e=Ie;w=h>>>0<a>>>0|(h|0)==(a|0)&u>>>0<l>>>0;i=YT(u|0,h|0,(w?0:l)|0,(w?0:a)|0)|0;n=(w&1|n)^1;if((o|0)<=0){i=e;break}else{t=Ie;o=o+-1|0}}w=(i|0)<0;i=w?-2147483648:e;e=w?0:n;break}if((i|0)<0|(i|0)==0&e>>>0<2147483648){e=rN(r|0,f|0,e|0,i|0)|0;e=WT(n|0,t|0,e|0,Ie|0)|0;e=eN(e|0,Ie|0,l|0,a|0)|0;i=Ie;break}o=eN(e|0,i|0,l|0,a|0)|0;s=Ie;e=iN(e|0,i|0,l|0,a|0)|0;e=rN(e|0,Ie|0,r|0,f|0)|0;e=WT(e|0,Ie|0,n|0,t|0)|0;e=eN(e|0,Ie|0,l|0,a|0)|0;i=Ie;if(((r|0)!=0|(f|0)!=0)&((s|0)>0|(s|0)==0&o>>>0>2147483646)?(w=YT(-1,2147483647,e|0,i|0)|0,w=eN(w|0,Ie|0,r|0,f|0)|0,h=Ie,(s|0)>(h|0)|(s|0)==(h|0)&o>>>0>w>>>0):0){i=-2147483648;e=0;break}w=rN(o|0,s|0,r|0,f|0)|0;e=WT(e|0,i|0,w|0,Ie|0)|0;i=Ie}else{i=-2147483648;e=0}}while(0);Ie=i;return e|0}function bM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Ue;Ue=Ue+16|0;l=f;Xi[l>>2]=r;cM(1,e,i,l);Ue=f;return}function cM(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;a=Ue;Ue=Ue+16|0;l=Xi[22292]|0;if(l|0)nV[l&255](i,24,r,f);nA(i,24,150112,a);if(e|0)nA(i,24,150288,a+8|0);Ue=a;return}function dM(e){e=e|0;var i=0,r=0;e=Mg(e,11,88)|0;if(!e)e=0;else{e=e+4|0;i=Xi[e>>2]|0;r=i+88|0;do{Wi[i>>0]=0;i=i+1|0}while((i|0)<(r|0));e=Xi[e>>2]|0}return e|0}function vM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=i+4|0;a=Xi[i>>2]|0;l=Xi[r>>2]|0;a=rN(l|0,((l|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;l=Ie;f=Xi[n>>2]|0;r=Xi[r+4>>2]|0;f=rN(r|0,((r|0)<0)<<31>>31|0,f|0,((f|0)<0)<<31>>31|0)|0;rg(i,n,a,l,f,Ie,2147483647,0)|0;f=i;i=Xi[f+4>>2]|0;r=e;Xi[r>>2]=Xi[f>>2];Xi[r+4>>2]=i;return}function EM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Zi(r,i)|0;if((r|0)!=0&(r|i)>>>0>65535?((f>>>0)/(r>>>0)|0|0)!=(i|0):0){IT(e);r=0}else{if(((Xi[22291]|0)+-32|0)>>>0<f>>>0)r=0;else r=HT(e,((f|0)==0&1)+f|0)|0;if((f|0)!=0&(r|0)==0){IT(e);r=0}}return r|0}function SM(e,i){e=e|0;i=i|0;var r=0;r=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;e:do{if(!i){Wi[e>>0]=0;Wi[e+1>>0]=0;Wi[e+2>>0]=0;Wi[e+3>>0]=0;IT(r);r=0}else{do{if(((Xi[22291]|0)+-32|0)>>>0>=i>>>0){r=HT(r,i)|0;if(!r){r=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;break}else{Wi[e>>0]=r;Wi[e+1>>0]=r>>8;Wi[e+2>>0]=r>>16;Wi[e+3>>0]=r>>24;r=0;break e}}}while(0);Wi[e>>0]=0;Wi[e+1>>0]=0;Wi[e+2>>0]=0;Wi[e+3>>0]=0;IT(r);r=-12}}while(0);return r|0}function _M(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(((r|0)!=0?(2147483647/(r>>>0)|0)>>>0>i>>>0:0)?(f=Zi(r,i)|0,((Xi[22291]|0)+-32|0)>>>0>=f>>>0):0)f=HT(e,((f|0)==0&1)+f|0)|0;else f=0;return f|0}function mM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=EM(qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24,i,r)|0;Wi[e>>0]=f;Wi[e+1>>0]=f>>8;Wi[e+2>>0]=f>>16;Wi[e+3>>0]=f>>24;return((r|0)!=0&((i|0)!=0&(f|0)==0)?-12:0)|0}function pM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+16|0;f=l;if((Xi[i>>2]|0)>>>0>=r>>>0){if(r|0?(qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24|0)==0:0){Xi[f>>2]=150475;Xi[f+4>>2]=150492;Xi[f+8>>2]=33;nA(0,0,150445,f);$e()}}else{f=r+32+(r>>>4)|0;f=f>>>0>r>>>0?f:r;r=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;Wi[e>>0]=0;Wi[e+1>>0]=0;Wi[e+2>>0]=0;Wi[e+3>>0]=0;IT(r);r=rA(f)|0;Wi[e>>0]=r;Wi[e+1>>0]=r>>8;Wi[e+2>>0]=r>>16;Wi[e+3>>0]=r>>24;Xi[i>>2]=(r|0)==0?0:f}Ue=l;return}function FM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+16|0;f=l;if((Xi[i>>2]|0)>>>0>=r>>>0){if(r|0?(qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24|0)==0:0){Xi[f>>2]=150475;Xi[f+4>>2]=150492;Xi[f+8>>2]=33;nA(0,0,150445,f);$e()}}else{f=r+32+(r>>>4)|0;f=f>>>0>r>>>0?f:r;r=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;Wi[e>>0]=0;Wi[e+1>>0]=0;Wi[e+2>>0]=0;Wi[e+3>>0]=0;IT(r);r=rA(f)|0;if(!r)r=0;else jT(r|0,0,f|0)|0;Wi[e>>0]=r;Wi[e+1>>0]=r>>8;Wi[e+2>>0]=r>>16;Wi[e+3>>0]=r>>24;Xi[i>>2]=(r|0)==0?0:f}Ue=l;return}function yM(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0.0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=Ue;Ue=Ue+48|0;n=c+24|0;b=c+16|0;w=c+8|0;h=c;s=c+32|0;t=c+28|0;a=lg(e,i,0,0,f,t)|0;f=Xi[t>>2]|0;e:do{if((a|0)!=0&(f|0)!=0){l=(r|0)!=0;i:do{if(!l){i=Xi[a+12>>2]|0;if((i|0)<1146442272)if((i|0)<1128811585)if((i|0)<1112493900)switch(i|0){case 5:break i;default:{i=-22;break e}}else switch(i|0){case 1112493900:break i;default:{i=-22;break e}}else if((i|0)<1129270354)switch(i|0){case 1128811585:break i;default:{i=-22;break e}}else switch(i|0){case 1129270354:break i;default:{i=-22;break e}}if((i|0)<1397116244)if((i|0)<1346784596)switch(i|0){case 1146442272:break i;default:{i=-22;break e}}else switch(i|0){case 1346784596:break i;default:{i=-22;break e}}if((i|0)<1397316165)switch(i|0){case 1397116244:break i;default:{i=-22;break e}}if((i|0)<1448231252)switch(i|0){case 1397316165:break i;default:{i=-22;break e}}else switch(i|0){case 1448231252:break i;default:{i=-22;break e}}}}while(0);if(!(Xi[a+40>>2]&128)){t=f+(Xi[a+8>>2]|0)|0;i=Xi[a+12>>2]|0;i:do{if((i|0)<1112493900)switch(i|0){case 5:{vA(t);i=TA(r)|0;Xi[t>>2]=i;i=i|0?0:-12;break e}case 7:{i=OM(r,t)|0;break e}case 6:case 3:case 4:case 2:case 1:case 0:{i=$A(e,f,a,r,t)|0;break e}default:break i}else{if((i|0)>=1346784596)if((i|0)<1397316165)if((i|0)<1397116244){switch(i|0){case 1346784596:break;default:break i}i=CM(e,a,r,t,337,14,151057)|0;break e}else{switch(i|0){case 1397116244:break;default:break i}i=CM(e,a,r,t,10,15,151173)|0;break e}else if((i|0)<1448231252){switch(i|0){case 1397316165:break;default:break i}i=AM(e,r,t)|0;break e}else{switch(i|0){case 1448231252:break;default:break i}i=MM(e,r,t)|0;break e}if((i|0)>=1129270354){if((i|0)<1146442272){switch(i|0){case 1129270354:break;default:break i}i=BM(e,r,t)|0;break e}switch(i|0){case 1146442272:break;default:break i}if(!l){i=t;Xi[i>>2]=0;Xi[i+4>>2]=0;i=0;break e}i=LM(t,r,1)|0;if((i|0)>=0)break e;Xi[w>>2]=r;nA(e,16,151256,w);break e}if((i|0)>=1128811585){switch(i|0){case 1128811585:break;default:break i}if(l?PR(r,147789)|0:0){f=XA(r)|0;l=Ie;if((f|0)==0&(l|0)==0){Xi[b>>2]=r;nA(e,16,152883,b);i=-22}else i=0;r=t;Xi[r>>2]=f;Xi[r+4>>2]=l;break e}r=t;Xi[r>>2]=0;Xi[r+4>>2]=0;break}switch(i|0){case 1112493900:break;default:break i}do{if(!r)i=0;else{if(PR(r,150517)|0)if(!(NA(r,150522)|0))if(!(NA(r,150551)|0)){Xi[s>>2]=0;i=OT(r,s,10)|0;b=r+(wR(r)|0)|0;if((b|0)==(Xi[s>>2]|0)){u=i;k=11}}else{u=0;k=11}else{u=1;k=11}else{u=-1;k=11}if(((k|0)==11?(o=+(u|0),!(o<+Ae[a+24>>3])):0)?!(o>+Ae[a+32>>3]):0){Xi[t>>2]=u;i=0;break}Xi[h>>2]=r;nA(e,16,150583,h);i=-22}}while(0);break e}}while(0);nA(e,16,152936,n);i=-22}else i=-22}else i=-1414549496}while(0);Ue=c;return i|0}function OM(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=i+4|0;vA(i);Xi[s>>2]=0;e:do{if((e|0)!=0?(r=wR(e)|0,(r|0)!=0):0)if(!(r&1)){t=(r|0)/2|0;o=rA(t)|0;if(!o)r=-12;else{r=Wi[e>>0]|0;i:do{if(r<<24>>24){n=o;while(1){l=e+1|0;f=r<<24>>24;do{if((r+-48&255)>=10)if((r+-97&255)<6){a=f+-87|0;break}else{a=(r+-65&255)<6?f+-55|0:-1;break}else a=f+-48|0}while(0);r=Wi[l>>0]|0;f=r<<24>>24;do{if((r+-48&255)>=10)if((r+-97&255)<6){r=f+-87|0;break}else{r=(r+-65&255)<6?f+-55|0:-1;break}else r=f+-48|0}while(0);if((r|a|0)<0)break;e=e+2|0;Wi[n>>0]=r|a<<4;r=Wi[e>>0]|0;if(!(r<<24>>24))break i;else n=n+1|0}FA(o);r=-22;break e}}while(0);Xi[i>>2]=o;Xi[s>>2]=t;r=0}}else r=-22;else r=0}while(0);return r|0}function AM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+16|0;f=l;if((i|0)!=0?(PR(i,147789)|0)!=0:0){r=gM(r,r+4|0,i)|0;if((r|0)<0){Xi[f>>2]=i;nA(e,16,150931,f)}}else{Xi[r+4>>2]=0;Xi[r>>2]=0;r=0}Ue=l;return r|0}function gM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=Ue;Ue=Ue+16|0;l=n;f=0;while(1){if(!(PR(Xi[90520+(f*12|0)>>2]|0,r)|0)){a=3;break}f=f+1|0;if((f|0)>=53){a=5;break}}if((a|0)==3){r=Xi[90520+(f*12|0)+8>>2]|0;f=Xi[90520+(f*12|0)+4>>2]|0;a=9}else if((a|0)==5)if((f|0)==53){f=OT(r,l,10)|0;r=Xi[l>>2]|0;if(Wi[r>>0]|0){r=r+1|0;Xi[l>>2]=r}r=OT(r,l,10)|0;if(!(Wi[Xi[l>>2]>>0]|0))a=9;else f=-22}else f=-22;if((a|0)==9)if((f|0)<1|(r|0)<1)f=-22;else{Xi[e>>2]=f;Xi[i>>2]=r;f=0}Ue=n;return f|0}function MM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;f=a;if(i){r=RM(r,i)|0;if((r|0)<0)l=3}else{r=-22;l=3}if((l|0)==3){Xi[f>>2]=i;nA(e,16,150988,f)}Ue=a;return r|0}function RM(e,i){e=e|0;i=i|0;var r=0,f=0;r=0;while(1){if(!(PR(Xi[91156+(r*12|0)>>2]|0,i)|0)){f=3;break}r=r+1|0;if((r|0)>=8){f=5;break}}if((f|0)==3){i=91156+(r*12|0)+4|0;f=Xi[i+4>>2]|0;r=e;Xi[r>>2]=Xi[i>>2];Xi[r+4>>2]=f;r=0}else if((f|0)==5){r=TM(e,i,1001e3,64,0)|0;if((r|0)>=0)if((Xi[e>>2]|0)<1)r=-22;else return((Xi[e+4>>2]|0)<1?-22:0)|0}return r|0}function TM(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;o=Ue;Ue=Ue+32|0;s=o+16|0;t=o+8|0;n=o;a=e+4|0;Xi[s>>2]=e;Xi[s+4>>2]=a;Xi[s+8>>2]=o+28;if((qR(i,150980,s)|0)!=2){a=ng(t,i,0,0,0,0,0,0,0,f,l)|0;if((a|0)>=0){ig(n,+Ae[t>>3],r);r=n;s=Xi[r+4>>2]|0;a=e;Xi[a>>2]=Xi[r>>2];Xi[a+4>>2]=s;a=0}}else{t=Xi[e>>2]|0;s=Xi[a>>2]|0;rg(e,a,t,((t|0)<0)<<31>>31,s,((s|0)<0)<<31>>31,r,((r|0)<0)<<31>>31)|0;a=0}Ue=o;return a|0}function NM(e){e=e|0;var i=0,r=0,f=0,l=0;l=Ue;Ue=Ue+48|0;f=l;r=l+8|0;if(!(PR(e,151037)|0))i=148474;else{i=(PR(e,151043)|0)==0;i=i?148464:e}e=DM(i)|0;if((e|0)==-1){Xi[f>>2]=i;Xi[f+4>>2]=151054;cR(r,32,151049,f)|0;e=DM(r)|0}Ue=l;return e|0}function DM(e){e=e|0;var i=0;i=0;while(1){if((i+-129|0)>>>0>=166){if(!(PR(Xi[21104+(i*152|0)>>2]|0,e)|0))break;if(NA(e,Xi[21104+(i*152|0)+144>>2]|0)|0)break}i=i+1|0;if((i|0)>=337){i=-1;break}}return i|0}function CM(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0.0,b=0.0;w=Ue;Ue=Ue+32|0;h=w+8|0;s=w;t=w+28|0;if((r|0)!=0?(PR(r,147789)|0)!=0:0){o=Yz[a&15](r)|0;if((o|0)==-1){o=OT(r,t,0)|0;if(o>>>0<l>>>0?(Wi[Xi[t>>2]>>0]|0)==0:0)u=6;else{Xi[s>>2]=r;Xi[s+4>>2]=n;nA(e,16,151070,s);a=-22}}else u=6}else{o=-1;u=6}do{if((u|0)==6){k=+Ae[i+24>>3];t=k>-1.0?~~k:-1;k=+Ae[i+32>>3];u=l+-1|0;b=+(u|0);a=~~(k>b?b:k);l=(a|t|0)==0;t=l?-1:t;a=l?u:a;if((o|0)<(t|0)|(o|0)>(a|0)){i=Xi[i>>2]|0;Xi[h>>2]=o;Xi[h+4>>2]=i;Xi[h+8>>2]=n;Xi[h+12>>2]=t;Xi[h+16>>2]=a;nA(e,16,151111,h);a=-34;break}else{Xi[f>>2]=o;a=0;break}}}while(0);Ue=w;return a|0}function PM(e){e=e|0;var i=0;i=0;while(1){if(!(PR(89688+(i*20|0)|0,e)|0))break;i=i+1|0;if((i|0)>=10){i=-1;break}}return i|0}function LM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=Ue;Ue=Ue+144|0;h=b+92|0;u=b+96|0;w=b+48|0;a=b+44|0;k=b;f=u;l=f+44|0;do{Xi[f>>2]=0;f=f+4|0}while((f|0)<(l|0));o=e;Xi[o>>2]=0;Xi[o+4>>2]=-2147483648;o=(r|0)!=0;do{if(o){r=(Wi[i>>0]|0)==45;l=r?i+1|0:i;i=r&1;r=IM(l,151227,u)|0;if(!r){r=IM(l,151236,u)|0;f=u+8|0;Xi[f>>2]=0;if(!r){Xi[u>>2]=OT(l,a,10)|0;r=Xi[a>>2]|0;if((r|0)!=(l|0)?(Xi[u+4>>2]=0,Xi[f>>2]=0,(r|0)!=0):0){s=i;l=0;n=17}else r=-22}else{s=i;l=0;n=17}}else{s=i;l=0;n=17}}else{r=Eg()|0;f=Ie;s=eN(r|0,f|0,1e6,0)|0;Xi[h>>2]=s;if(!(MA(i,151187)|0)){Xi[e>>2]=r;Xi[e+4>>2]=f;r=0;break}r=IM(i,151191,u)|0;if(!r)r=IM(i,151213,u)|0;l=(r|0)==0;i=l?i:r;l=l&1;r=Wi[i>>0]|0;e:do{switch(r<<24>>24){case 116:case 84:{r=i+1|0;break}default:{f=(r<<24>>24)+-9|0;if(f>>>0<24){r=i;do{if(!(8388639>>>(f&16777215)&1))break e;r=r+1|0;f=(Wi[r>>0]|0)+-9|0}while(f>>>0<24)}else r=i}}}while(0);f=IM(r,151204,u)|0;if(!f){r=IM(r,151220,u)|0;if(!r)r=-22;else{s=0;n=17}}else{s=0;r=f;n=17}}}while(0);e:do{if((n|0)==17){f=Wi[r>>0]|0;if(f<<24>>24==46){f=r+1|0;r=(Wi[f>>0]|0)+-48|0;if(r>>>0<10){i=r*1e5|0;r=f+1|0;f=(Wi[r>>0]|0)+-48|0;if(f>>>0<10){i=(f*1e4|0)+i|0;r=r+1|0;f=(Wi[r>>0]|0)+-48|0;if(f>>>0<10){i=(f*1e3|0)+i|0;r=r+1|0;f=(Wi[r>>0]|0)+-48|0;if(f>>>0<10){i=(f*100|0)+i|0;r=r+1|0;f=(Wi[r>>0]|0)+-48|0;if(f>>>0<10){i=(f*10|0)+i|0;r=r+1|0;f=(Wi[r>>0]|0)+-48|0;if(f>>>0<10){i=f+i|0;r=r+1|0}}}}}}else{i=0;r=f}while(1){f=Wi[r>>0]|0;if(((f<<24>>24)+-48|0)>>>0<10)r=r+1|0;else{t=i;a=r;break}}}else{t=0;a=r}if(o){i=((Xi[u+4>>2]|0)*60|0)+((Xi[u+8>>2]|0)*3600|0)+(Xi[u>>2]|0)|0;f=i;i=((i|0)<0)<<31>>31;r=a}else{o=(f&-33)<<24>>24==90;f=o&1;r=a+f|0;n=(l|0)!=0;i:do{if(n|o){i=0;l=0}else{switch(Wi[r>>0]|0){case 45:case 43:break;default:{i=0;l=0;break i}}f=k;l=f+44|0;do{Xi[f>>2]=0;f=f+4|0}while((f|0)<(l|0));i=(Wi[r>>0]|0)==43;f=a+1|0;r=IM(f,151242,k)|0;if(!r){r=IM(f,151248,k)|0;if(!r){r=IM(f,151253,k)|0;if(!r){r=-22;break e}}}l=Zi(i?-60:60,((Xi[k+8>>2]|0)*60|0)+(Xi[k+4>>2]|0)|0)|0;i=l;l=((l|0)<0)<<31>>31;f=1}}while(0);if(n){if(!f){w=(De(h|0,w|0)|0)+12|0;Xi[k>>2]=Xi[w>>2];Xi[k+4>>2]=Xi[w+4>>2];Xi[k+8>>2]=Xi[w+8>>2];Xi[k+12>>2]=Xi[w+12>>2];Xi[k+16>>2]=Xi[w+16>>2];Xi[k+20>>2]=Xi[w+20>>2];Xi[k+24>>2]=Xi[w+24>>2];Xi[k+28>>2]=Xi[w+28>>2]}else{w=(Je(h|0,w|0)|0)+12|0;Xi[k>>2]=Xi[w>>2];Xi[k+4>>2]=Xi[w+4>>2];Xi[k+8>>2]=Xi[w+8>>2];Xi[k+12>>2]=Xi[w+12>>2];Xi[k+16>>2]=Xi[w+16>>2];Xi[k+20>>2]=Xi[w+20>>2];Xi[k+24>>2]=Xi[w+24>>2];Xi[k+28>>2]=Xi[w+28>>2]}w=u+12|0;Xi[w>>2]=Xi[k>>2];Xi[w+4>>2]=Xi[k+4>>2];Xi[w+8>>2]=Xi[k+8>>2];Xi[w+12>>2]=Xi[k+12>>2];Xi[w+16>>2]=Xi[k+16>>2];Xi[w+20>>2]=Xi[k+20>>2];Xi[w+24>>2]=Xi[k+24>>2];Xi[w+28>>2]=Xi[k+28>>2]}if(!f)f=ze(u|0)|0;else f=HM(u)|0;f=WT(f|0,((f|0)<0)<<31>>31|0,i|0,l|0)|0;i=Ie}if(!(Wi[r>>0]|0)){h=rN(f|0,i|0,1e6,0)|0;h=WT(h|0,Ie|0,t|0,((t|0)<0)<<31>>31|0)|0;k=Ie;w=(s|0)!=0;u=YT(0,0,h|0,k|0)|0;r=e;Xi[r>>2]=w?u:h;Xi[r+4>>2]=w?Ie:k;r=0}else r=-22}}while(0);Ue=b;return r|0}function IM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=r+8|0;o=r+4|0;s=r+20|0;u=r+16|0;h=r+12|0;e:while(1){l=i+1|0;f=Wi[i>>0]|0;switch(f<<24>>24){case 0:break e;case 37:break;default:{n=(f<<24>>24)+-9|0;if(n>>>0<24?8388639>>>(n&16777215)&1|0:0){i=Wi[e>>0]|0;if(!(i<<24>>24)){i=l;continue e}while(1){i=(i<<24>>24)+-9|0;if(i>>>0>=24){i=l;continue e}if(!(8388639>>>(i&16777215)&1)){i=l;continue e}e=e+1|0;i=Wi[e>>0]|0;if(!(i<<24>>24)){i=l;continue e}}}if((Wi[e>>0]|0)!=f<<24>>24){e=0;break e}i=l;e=e+1|0;continue e}}i=i+2|0;n=Wi[l>>0]|0;switch(n<<24>>24|0){case 74:case 72:{f=(Wi[e>>0]|0)+-48|0;if(f>>>0>=10){e=0;break e}l=e+1|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){e=e+2|0;f=(f*10|0)+-48+a|0}else e=l;if((f|0)==-1?1:f>>>0>(n<<24>>24==72?23:2147483647)>>>0){e=0;break e}Xi[t>>2]=f;continue e}case 77:{f=(Wi[e>>0]|0)+-48|0;if(f>>>0>=10){e=0;break e}l=e+1|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){e=e+2|0;f=(f*10|0)+-48+a|0}else e=l;if(f>>>0>59){e=0;break e}Xi[o>>2]=f;continue e}case 83:{f=(Wi[e>>0]|0)+-48|0;if(f>>>0>=10){e=0;break e}l=e+1|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){e=e+2|0;f=(f*10|0)+-48+a|0}else e=l;if(f>>>0>59){e=0;break e}Xi[r>>2]=f;continue e}case 89:{f=(Wi[e>>0]|0)+-48|0;if(f>>>0>=10){e=0;break e}l=e+1|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){f=(f*10|0)+-48+a|0;l=e+2|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){f=(f*10|0)+-48+a|0;l=e+3|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){e=e+4|0;f=(f*10|0)+-48+a|0}else e=l}else e=l}else e=l;if(f>>>0>9999){e=0;break e}Xi[s>>2]=f+-1900;continue e}case 109:{l=(Wi[e>>0]|0)+-48|0;if(l>>>0>=10){e=0;break e}f=e+1|0;a=Wi[f>>0]|0;if((a+-48|0)>>>0<10){e=e+2|0;l=(l*10|0)+-48+a|0}else e=f;f=l+-1|0;if((l|0)==-1|f>>>0>11){e=0;break e}Xi[u>>2]=f;continue e}case 100:{f=(Wi[e>>0]|0)+-48|0;if(f>>>0>=10){e=0;break e}l=e+1|0;a=Wi[l>>0]|0;if((a+-48|0)>>>0<10){e=e+2|0;f=(f*10|0)+-48+a|0}else e=l;if((f|0)==-1|(f+-1|0)>>>0>30){e=0;break e}Xi[h>>2]=f;continue e}case 84:{e=IM(e,151204,r)|0;if(!e){e=0;break e}else continue e}case 37:if((Wi[e>>0]|0)==37){e=e+1|0;continue e}else{e=0;break e}default:{e=0;break e}}}return e|0}function HM(e){e=e|0;var i=0,r=0,f=0,l=0;f=Xi[e+16>>2]|0;r=f+1|0;l=(r|0)<3;i=(l?1899:1900)+(Xi[e+20>>2]|0)|0;return((Xi[e+8>>2]|0)*3600|0)+-2032579456+((Xi[e+4>>2]|0)*60|0)+(Xi[e>>2]|0)+((((((l?f+13|0:r)*153|0)+-457|0)/5|0)+(Xi[e+12>>2]|0)+((i|0)/4|0)+((i|0)/-100|0)+(i*365|0)+((i|0)/400|0)|0)*86400|0)|0}function BM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+16|0;f=l;if(i){r=UM(r,i,-1,e)|0;if((r|0)<0){Xi[f>>2]=i;nA(e,16,152839,f)}}else r=0;Ue=l;return r|0}function UM(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0.0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+160|0;c=d+16|0;h=d+8|0;u=d;b=d+28|0;w=d+32|0;s=d+24|0;if((Wi[i>>0]|0)==35)n=1;else{n=(UR(i,151303,2)|0)==0;n=n?2:0}if((r|0)<0)r=wR(i)|0;r=r-n+1|0;AA(w,i+n|0,r>>>0>128?128:r)|0;r=GR(w,64)|0;Xi[b>>2]=r;if(!r)o=0;else{o=r+1|0;Xi[b>>2]=o;Wi[r>>0]=0}a=wR(w)|0;t=e+3|0;Wi[t>>0]=-1;e:do{if((MA(w,151306)|0)!=0?(MA(w,151313)|0)!=0:0){if((n|0)==0?(kT(w,151322)|0)!=(a|0):0){r=AT(w,91252,140,8,7)|0;if(!r){Xi[h>>2]=w;nA(f,16,152771,h);r=-22;break}else{k=r+4|0;Wi[e>>0]=Wi[k>>0]|0;Wi[e+1>>0]=Wi[k+1>>0]|0;Wi[e+2>>0]=Wi[k+2>>0]|0;k=20;break}}r=zR(w,s,16)|0;i:do{if(!(Wi[Xi[s>>2]>>0]|0)){switch(a|0){case 8:{Wi[t>>0]=r;r=r>>>8;break}case 6:break;default:break i}Wi[e>>0]=r>>>16;Wi[e+1>>0]=r>>>8;Wi[e+2>>0]=r;k=20;break e}}while(0);Xi[u>>2]=w;nA(f,16,151345,u);r=-22}else k=9}while(0);if((k|0)==9){w=fA()|0;Wi[e>>0]=w>>>24;Wi[e+1>>0]=w>>>16;Wi[e+2>>0]=w>>>8;Wi[t>>0]=w;k=20}do{if((k|0)==20)if(!o)r=0;else{if(!(UR(o,151303,2)|0))l=+((zR(o,b,16)|0)>>>0);else{l=+pT(o,b);l=l<0.0|l>1.0?256.0:l*255.0}b=Xi[b>>2]|0;if((b|0)!=(o|0)?!(l<0.0|(l>255.0|(Wi[b>>0]|0)!=0)):0){Wi[t>>0]=~~l;r=0;break}Xi[c>>2]=o;Xi[c+4>>2]=i;nA(f,16,152795,c);r=-22}}while(0);Ue=d;return r|0}function xM(e,i){e=e|0;i=i|0;return MA(e,Xi[i>>2]|0)|0}function zM(e){e=e|0;if(e>>>0<337)e=Xi[21104+(e*152|0)>>2]|0;else e=0;return e|0}function VM(e){e=e|0;return(e>>>0>9?0:89688+(e*20|0)|0)|0}function YM(e){e=e|0;jM(e,0,0);return}function jM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+16|0;s=u;t=u+8|0;f=ag(e,0)|0;if(f|0){o=t+4|0;do{a=e+(Xi[f+8>>2]|0)|0;n=Xi[f+40>>2]|0;e:do{if((n&i|0)==(r|0)&(n&128|0)==0){l=Xi[f+12>>2]|0;i:do{if((l|0)>=128){if((l|0)<1146442272){if((l|0)<1128811585)if((l|0)<1112493900)switch(l|0){case 128:break e;default:{n=13;break i}}else switch(l|0){case 1112493900:{n=5;break i}default:{n=13;break i}}if((l|0)<1129270354)switch(l|0){case 1128811585:{n=5;break i}default:{n=13;break i}}switch(l|0){case 1129270354:break;default:{n=13;break i}}BM(e,Xi[f+16>>2]|0,a)|0;break e}if((l|0)<1397116244)if((l|0)<1346784596)switch(l|0){case 1146442272:{n=5;break i}default:{n=13;break i}}else switch(l|0){case 1346784596:{n=5;break i}default:{n=13;break i}}if((l|0)<1397316165)switch(l|0){case 1397116244:{n=5;break i}default:{n=13;break i}}if((l|0)<1448231252){switch(l|0){case 1397316165:break;default:{n=13;break i}}AM(e,Xi[f+16>>2]|0,a)|0;break e}else{switch(l|0){case 1448231252:break;default:{n=13;break i}}MM(e,Xi[f+16>>2]|0,a)|0;break e}}else switch(l|0){case 8:break e;case 2:case 1:case 0:{n=5;break i}case 4:case 3:{eg(e,f,a,+Ae[f+16>>3],1,1,0)|0;break e}case 6:{ig(t,+Ae[f+16>>3],2147483647);n=Xi[t>>2]|0;eg(e,f,a,1.0,Xi[o>>2]|0,n,((n|0)<0)<<31>>31)|0;break e}case 5:{n=Xi[f+16>>2]|0;vA(a);Xi[a>>2]=TA(n)|0;break e}case 7:{OM(Xi[f+16>>2]|0,a)|0;break e}default:{n=13;break i}}}while(0);if((n|0)==5){n=f+16|0;eg(e,f,a,1.0,1,Xi[n>>2]|0,Xi[n+4>>2]|0)|0;break}else if((n|0)==13){n=Xi[f>>2]|0;Xi[s>>2]=l;Xi[s+4>>2]=n;nA(e,48,152958,s);break}}}while(0);f=ag(e,f)|0}while((f|0)!=0)}Ue=u;return}function KM(e){e=e|0;var i=0;i=ag(e,0)|0;e:do{if(i|0)while(1){switch(Xi[i+12>>2]|0){case 7:case 5:{vA(e+(Xi[i+8>>2]|0)|0);break}case 8:{yg(e+(Xi[i+8>>2]|0)|0);break}default:{}}i=ag(e,i)|0;if(!i)break e}}while(0);return}function WM(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+16|0;t=o;n=o+8|0;Xi[n>>2]=0;do{if(i){f=0;while(1){a=pg(Xi[i>>2]|0,237325,f,2)|0;if(!a){r=7;break}l=a+4|0;f=yM(e,Xi[a>>2]|0,Xi[l>>2]|0,r)|0;if((f|0)==-1414549496)f=Fg(n,Xi[a>>2]|0,Xi[l>>2]|0,0)|0;if((f|0)<0){r=6;break}else f=a}if((r|0)==6){i=Xi[l>>2]|0;Xi[t>>2]=Xi[a>>2];Xi[t+4>>2]=i;nA(e,16,153009,t);yg(n);break}else if((r|0)==7){yg(i);Xi[i>>2]=Xi[n>>2];f=0;break}}else f=0}while(0);Ue=o;return f|0}function GM(e,i){e=e|0;i=i|0;return WM(e,i,0)|0}function XM(e,i,r){e=e|0;i=i|0;r=r|0;if(e>>>0>336|(21104+(e*152|0)|0)==0)i=-38;else{Xi[i>>2]=qi[21104+(e*152|0)+5>>0];Xi[r>>2]=qi[21104+(e*152|0)+6>>0];i=0}return i|0}function qM(e){e=e|0;if(e>>>0<=9){if((e+-5|0)>>>0>=5)e=Xi[89688+(e*20|0)+16>>2]|0}else e=-1;return e|0}function JM(e){e=e|0;var i=0,r=0;e=Mg(e,2,8)|0;if(!e)e=0;else{e=e+4|0;i=Xi[e>>2]|0;r=i;Wi[r>>0]=0;Wi[r+1>>0]=0;Wi[r+2>>0]=0;Wi[r+3>>0]=0;i=i+4|0;Wi[i>>0]=0;Wi[i+1>>0]=0;Wi[i+2>>0]=0;Wi[i+3>>0]=0;e=Xi[e>>2]|0}return e|0}function ZM(e){e=e|0;switch(e|0){case 1:{e=73;break}case 2:{e=80;break}case 3:{e=66;break}case 4:{e=83;break}case 5:{e=105;break}case 6:{e=112;break}case 7:{e=98;break}default:e=63}return e|0}function QM(){eA();return}function $M(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;k=Ue;Ue=Ue+128|0;l=k+112|0;c=k+108|0;b=k+104|0;a=k+100|0;t=k+96|0;n=k+88|0;w=k+84|0;o=k;s=k+80|0;u=k+76|0;h=k+72|0;Xi[l>>2]=e;Xi[c>>2]=i;Xi[b>>2]=r;Xi[a>>2]=f;Xi[w>>2]=xg()|0;cN(o);Xi[o+24>>2]=Xi[c>>2];Xi[o+28>>2]=Xi[b>>2];Xi[k+92>>2]=DO(Xi[l>>2]|0,Xi[w>>2]|0,t,o)|0;i=Xi[(Xi[l>>2]|0)+124>>2]|0;do{if(((Xi[(Xi[l>>2]|0)+124>>2]|0)%16|0|0)!=8)if(((i|0)%16|0|0)==4){Xi[(Xi[l>>2]|0)+124>>2]=(Xi[(Xi[l>>2]|0)+124>>2]|0)+12;Xi[n>>2]=1;break}else{Xi[n>>2]=0;break}else{Xi[(Xi[l>>2]|0)+124>>2]=i+8;Xi[n>>2]=1}}while(0);if(!(Xi[t>>2]|0)){vN(o);Vg(w);c=Xi[n>>2]|0;Ue=k;return c|0}Xi[s>>2]=Zi(Xi[(Xi[l>>2]|0)+124>>2]|0,Xi[(Xi[l>>2]|0)+128>>2]|0)|0;Xi[u>>2]=(Zi(Xi[(Xi[l>>2]|0)+124>>2]|0,Xi[(Xi[l>>2]|0)+128>>2]|0)|0)/4|0;Xi[h>>2]=(Zi(Xi[(Xi[l>>2]|0)+124>>2]|0,Xi[(Xi[l>>2]|0)+128>>2]|0)|0)/4|0;qT(Xi[a>>2]|0,Xi[Xi[w>>2]>>2]|0,Xi[s>>2]|0)|0;qT((Xi[a>>2]|0)+(Xi[s>>2]|0)|0,Xi[(Xi[w>>2]|0)+4>>2]|0,Xi[u>>2]|0)|0;qT((Xi[a>>2]|0)+((Xi[s>>2]|0)+(Xi[u>>2]|0))|0,Xi[(Xi[w>>2]|0)+8>>2]|0,Xi[h>>2]|0)|0;vN(o);Vg(w);c=Xi[n>>2]|0;Ue=k;return c|0}function eR(e){e=e|0;var i=0,r=0,f=0,l=0;l=Ue;Ue=Ue+16|0;i=l+8|0;r=l+4|0;f=l;Xi[i>>2]=e;if((Xi[i>>2]|0)!=264){if((Xi[i>>2]|0)==265)Xi[r>>2]=NO(174)|0}else Xi[r>>2]=NO(28)|0;Xi[f>>2]=oO(Xi[r>>2]|0)|0;gO(Xi[f>>2]|0,Xi[r>>2]|0,0)|0;Ue=l;return Xi[f>>2]|0}function iR(e){e=e|0;var i=0,r=0;i=Ue;Ue=Ue+16|0;r=i;Xi[r>>2]=e;sO(r);Ue=i;return 0}function rR(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;Xi[i>>2]=e;Ue=r;return Xi[(Xi[i>>2]|0)+124>>2]|0}function fR(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;Xi[i>>2]=e;Ue=r;return Xi[(Xi[i>>2]|0)+128>>2]|0}function lR(e){e=e|0;var i=0,r=0;i=Ue;Ue=Ue+16|0;r=i;Xi[r>>2]=Xi[e+60>>2];e=aR(ge(6,r|0)|0)|0;Ue=i;return e|0}function aR(e){e=e|0;if(e>>>0>4294963200){Xi[(nR()|0)>>2]=0-e;e=-1}return e|0}function nR(){var e=0;if(!(Xi[40134]|0))e=160580;else e=Xi[(Ke()|0)+64>>2]|0;return e|0}function tR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=Ue;Ue=Ue+48|0;h=b+16|0;u=b;f=b+32|0;w=e+28|0;l=Xi[w>>2]|0;Xi[f>>2]=l;k=e+20|0;l=(Xi[k>>2]|0)-l|0;Xi[f+4>>2]=l;Xi[f+8>>2]=i;Xi[f+12>>2]=r;o=e+60|0;s=e+44|0;i=2;l=l+r|0;while(1){if(!(Xi[40134]|0)){Xi[h>>2]=Xi[o>>2];Xi[h+4>>2]=f;Xi[h+8>>2]=i;n=aR(fi(146,h|0)|0)|0}else{Re(23,e|0);Xi[u>>2]=Xi[o>>2];Xi[u+4>>2]=f;Xi[u+8>>2]=i;n=aR(fi(146,u|0)|0)|0;_e(0)}if((l|0)==(n|0)){l=6;break}if((n|0)<0){l=8;break}l=l-n|0;a=Xi[f+4>>2]|0;if(n>>>0<=a>>>0)if((i|0)==2){Xi[w>>2]=(Xi[w>>2]|0)+n;t=a;i=2}else t=a;else{t=Xi[s>>2]|0;Xi[w>>2]=t;Xi[k>>2]=t;t=Xi[f+12>>2]|0;n=n-a|0;f=f+8|0;i=i+-1|0}Xi[f>>2]=(Xi[f>>2]|0)+n;Xi[f+4>>2]=t-n}if((l|0)==6){h=Xi[s>>2]|0;Xi[e+16>>2]=h+(Xi[e+48>>2]|0);e=h;Xi[w>>2]=e;Xi[k>>2]=e}else if((l|0)==8){Xi[e+16>>2]=0;Xi[w>>2]=0;Xi[k>>2]=0;Xi[e>>2]=Xi[e>>2]|32;if((i|0)==2)r=0;else r=r-(Xi[f+4>>2]|0)|0}Ue=b;return r|0}function oR(e){e=e|0;if(!(Xi[e+68>>2]|0))sR(e);return}function sR(e){e=e|0;return}function uR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=Ue;Ue=Ue+32|0;a=l;f=l+20|0;Xi[a>>2]=Xi[e+60>>2];Xi[a+4>>2]=0;Xi[a+8>>2]=i;Xi[a+12>>2]=f;Xi[a+16>>2]=r;if((aR(ri(140,a|0)|0)|0)<0){Xi[f>>2]=-1;e=-1}else e=Xi[f>>2]|0;Ue=l;return e|0}function hR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;l=Ue;Ue=Ue+80|0;f=l;Xi[e+36>>2]=1;if((Xi[e>>2]&64|0)==0?(Xi[f>>2]=Xi[e+60>>2],Xi[f+4>>2]=21505,Xi[f+8>>2]=l+12,Ge(54,f|0)|0):0)Wi[e+75>>0]=-1;f=tR(e,i,r)|0;Ue=l;return f|0}function wR(e){e=e|0;var i=0,r=0,f=0;f=e;e:do{if(!(f&3))r=4;else{i=e;e=f;while(1){if(!(Wi[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;r=4;break}}}}while(0);if((r|0)==4){while(1){i=Xi[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do{e=e+1|0}while((Wi[e>>0]|0)!=0)}return e-f|0}function kR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;e:do{if(!r)r=0;else{l=r;f=e;while(1){e=Wi[f>>0]|0;r=Wi[i>>0]|0;if(e<<24>>24!=r<<24>>24)break;l=l+-1|0;if(!l){r=0;break e}else{f=f+1|0;i=i+1|0}}r=(e&255)-(r&255)|0}}while(0);return r|0}function bR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+32|0;l=f;a=f+16|0;Xi[a>>2]=r;n=(Xi[a>>2]|0)+(4-1)&~(4-1);r=Xi[n>>2]|0;Xi[a>>2]=n+4;Xi[l>>2]=e;Xi[l+4>>2]=i|32768;Xi[l+8>>2]=r;r=aR(ei(5,l|0)|0)|0;Ue=f;return r|0}function cR(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;l=Ue;Ue=Ue+16|0;a=l;Xi[a>>2]=f;f=dR(e,i,r,a)|0;Ue=l;return f|0}function dR(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Ue;Ue=Ue+128|0;l=u+112|0;s=u;a=s;n=92808;t=a+112|0;do{Xi[a>>2]=Xi[n>>2];a=a+4|0;n=n+4|0}while((a|0)<(t|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;o=4}else{Xi[(nR()|0)>>2]=75;i=-1}else{l=e;o=4}if((o|0)==4){o=-2-l|0;o=i>>>0>o>>>0?o:i;Xi[s+48>>2]=o;e=s+20|0;Xi[e>>2]=l;Xi[s+44>>2]=l;i=l+o|0;l=s+16|0;Xi[l>>2]=i;Xi[s+28>>2]=i;i=ER(s,r,f)|0;if(o){r=Xi[e>>2]|0;Wi[r+(((r|0)==(Xi[l>>2]|0))<<31>>31)>>0]=0}}Ue=u;return i|0}function vR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=e+20|0;l=Xi[f>>2]|0;e=(Xi[e+16>>2]|0)-l|0;e=e>>>0>r>>>0?r:e;qT(l|0,i|0,e|0)|0;Xi[f>>2]=(Xi[f>>2]|0)+e;return r|0}function ER(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=Ue;Ue=Ue+224|0;h=c+120|0;b=c+80|0;k=c;w=c+136|0;f=b;l=f+40|0;do{Xi[f>>2]=0;f=f+4|0}while((f|0)<(l|0));Xi[h>>2]=Xi[r>>2];if((SR(0,i,h,k,b)|0)<0)r=-1;else{if((Xi[e+76>>2]|0)>-1)s=NR(e)|0;else s=0;r=Xi[e>>2]|0;u=r&32;if((Wi[e+74>>0]|0)<1)Xi[e>>2]=r&-33;r=e+48|0;if(!(Xi[r>>2]|0)){l=e+44|0;a=Xi[l>>2]|0;Xi[l>>2]=w;n=e+28|0;Xi[n>>2]=w;t=e+20|0;Xi[t>>2]=w;Xi[r>>2]=80;o=e+16|0;Xi[o>>2]=w+80;f=SR(e,i,h,k,b)|0;if(a){Wz[Xi[e+36>>2]&7](e,0,0)|0;f=(Xi[t>>2]|0)==0?-1:f;Xi[l>>2]=a;Xi[r>>2]=0;Xi[o>>2]=0;Xi[n>>2]=0;Xi[t>>2]=0}}else f=SR(e,i,h,k,b)|0;r=Xi[e>>2]|0;Xi[e>>2]=r|u;if(s|0)sR(e);r=(r&32|0)==0?f:-1}Ue=c;return r|0}function SR(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0.0,u=0,h=0,w=0,k=0,b=0,c=0,d=0.0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0;$=Ue;Ue=Ue+624|0;X=$+24|0;J=$+16|0;q=$+588|0;K=$+576|0;G=$;x=$+536|0;Q=$+8|0;Z=$+528|0;T=(e|0)!=0;N=x+40|0;U=N;x=x+39|0;z=Q+4|0;V=q;Y=0-V|0;j=K+12|0;K=K+11|0;W=j;D=W-V|0;C=-2-V|0;P=W+2|0;L=X+288|0;I=q+9|0;H=I;B=q+8|0;a=0;t=0;n=0;v=i;e:while(1){do{if((a|0)>-1)if((t|0)>(2147483647-a|0)){Xi[(nR()|0)>>2]=75;a=-1;break}else{a=t+a|0;break}}while(0);i=Wi[v>>0]|0;if(!(i<<24>>24)){R=244;break}else t=v;i:while(1){switch(i<<24>>24){case 37:{i=t;R=9;break i}case 0:{i=t;break i}default:{}}M=t+1|0;i=Wi[M>>0]|0;t=M}i:do{if((R|0)==9)while(1){R=0;if((Wi[i+1>>0]|0)!=37)break i;t=t+1|0;i=i+2|0;if((Wi[i>>0]|0)==37)R=9;else break}}while(0);c=t-v|0;if(T?(Xi[e>>2]&32|0)==0:0)_R(v,c,e)|0;if((t|0)!=(v|0)){t=c;v=i;continue}u=i+1|0;t=Wi[u>>0]|0;o=(t<<24>>24)+-48|0;if(o>>>0<10){M=(Wi[i+2>>0]|0)==36;u=M?i+3|0:u;t=Wi[u>>0]|0;k=M?o:-1;n=M?1:n}else k=-1;i=t<<24>>24;i:do{if((i&-32|0)==32){o=0;while(1){if(!(1<<i+-32&75913)){h=o;break i}o=1<<(t<<24>>24)+-32|o;u=u+1|0;t=Wi[u>>0]|0;i=t<<24>>24;if((i&-32|0)!=32){h=o;break}}}else h=0}while(0);do{if(t<<24>>24==42){t=u+1|0;i=(Wi[t>>0]|0)+-48|0;if(i>>>0<10?(Wi[u+2>>0]|0)==36:0){Xi[l+(i<<2)>>2]=10;n=1;u=u+3|0;i=Xi[f+((Wi[t>>0]|0)+-48<<3)>>2]|0}else{if(n|0){a=-1;break e}if(!T){b=h;n=0;u=t;M=0;break}n=(Xi[r>>2]|0)+(4-1)&~(4-1);i=Xi[n>>2]|0;Xi[r>>2]=n+4;n=0;u=t}if((i|0)<0){b=h|8192;M=0-i|0}else{b=h;M=i}}else{o=(t<<24>>24)+-48|0;if(o>>>0<10){i=u;t=0;do{t=(t*10|0)+o|0;i=i+1|0;o=(Wi[i>>0]|0)+-48|0}while(o>>>0<10);if((t|0)<0){a=-1;break e}else{b=h;u=i;M=t}}else{b=h;M=0}}}while(0);i:do{if((Wi[u>>0]|0)==46){i=u+1|0;t=Wi[i>>0]|0;if(t<<24>>24!=42){o=(t<<24>>24)+-48|0;if(o>>>0<10)t=0;else{h=0;break}while(1){t=(t*10|0)+o|0;i=i+1|0;o=(Wi[i>>0]|0)+-48|0;if(o>>>0>=10){h=t;break i}}}i=u+2|0;t=(Wi[i>>0]|0)+-48|0;if(t>>>0<10?(Wi[u+3>>0]|0)==36:0){Xi[l+(t<<2)>>2]=10;h=Xi[f+((Wi[i>>0]|0)+-48<<3)>>2]|0;i=u+4|0;break}if(n|0){a=-1;break e}if(T){g=(Xi[r>>2]|0)+(4-1)&~(4-1);h=Xi[g>>2]|0;Xi[r>>2]=g+4}else h=0}else{h=-1;i=u}}while(0);w=0;while(1){t=(Wi[i>>0]|0)+-65|0;if(t>>>0>57){a=-1;break e}o=i+1|0;t=Wi[153047+(w*58|0)+t>>0]|0;u=t&255;if((u+-1|0)>>>0<8){i=o;w=u}else{g=o;break}}if(!(t<<24>>24)){a=-1;break}o=(k|0)>-1;do{if(t<<24>>24==19)if(o){a=-1;break e}else R=52;else{if(o){Xi[l+(k<<2)>>2]=u;O=f+(k<<3)|0;A=Xi[O+4>>2]|0;R=G;Xi[R>>2]=Xi[O>>2];Xi[R+4>>2]=A;R=52;break}if(!T){a=0;break e}pR(G,u,r)}}while(0);if((R|0)==52?(R=0,!T):0){t=c;v=g;continue}k=Wi[i>>0]|0;k=(w|0)!=0&(k&15|0)==3?k&-33:k;o=b&-65537;A=(b&8192|0)==0?b:o;i:do{switch(k|0){case 110:switch(w|0){case 0:{Xi[Xi[G>>2]>>2]=a;t=c;v=g;continue e}case 1:{Xi[Xi[G>>2]>>2]=a;t=c;v=g;continue e}case 2:{t=Xi[G>>2]|0;Xi[t>>2]=a;Xi[t+4>>2]=((a|0)<0)<<31>>31;t=c;v=g;continue e}case 3:{Gi[Xi[G>>2]>>1]=a;t=c;v=g;continue e}case 4:{Wi[Xi[G>>2]>>0]=a;t=c;v=g;continue e}case 6:{Xi[Xi[G>>2]>>2]=a;t=c;v=g;continue e}case 7:{t=Xi[G>>2]|0;Xi[t>>2]=a;Xi[t+4>>2]=((a|0)<0)<<31>>31;t=c;v=g;continue e}default:{t=c;v=g;continue e}}case 112:{w=A|8;h=h>>>0>8?h:8;k=120;R=64;break}case 88:case 120:{w=A;R=64;break}case 111:{o=G;t=Xi[o>>2]|0;o=Xi[o+4>>2]|0;if((t|0)==0&(o|0)==0)i=N;else{i=N;do{i=i+-1|0;Wi[i>>0]=t&7|48;t=XT(t|0,o|0,3)|0;o=Ie}while(!((t|0)==0&(o|0)==0))}if(!(A&8)){t=A;w=0;u=153527;R=77}else{w=U-i|0;t=A;h=(h|0)>(w|0)?h:w+1|0;w=0;u=153527;R=77}break}case 105:case 100:{t=G;i=Xi[t>>2]|0;t=Xi[t+4>>2]|0;if((t|0)<0){i=YT(0,0,i|0,t|0)|0;t=Ie;o=G;Xi[o>>2]=i;Xi[o+4>>2]=t;o=1;u=153527;R=76;break i}if(!(A&2048)){u=A&1;o=u;u=(u|0)==0?153527:153529;R=76}else{o=1;u=153528;R=76}break}case 117:{t=G;i=Xi[t>>2]|0;t=Xi[t+4>>2]|0;o=0;u=153527;R=76;break}case 99:{Wi[x>>0]=Xi[G>>2];i=x;k=1;c=0;b=153527;t=N;break}case 109:{t=yR(Xi[(nR()|0)>>2]|0)|0;R=82;break}case 115:{t=Xi[G>>2]|0;t=t|0?t:155429;R=82;break}case 67:{Xi[Q>>2]=Xi[G>>2];Xi[z>>2]=0;Xi[G>>2]=Q;i=Q;h=-1;R=86;break}case 83:{i=Xi[G>>2]|0;if(!h){AR(e,32,M,0,A);i=0;R=97}else R=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{s=+Ae[G>>3];Xi[J>>2]=0;Ae[ee>>3]=s;if((Xi[ee+4>>2]|0)>=0)if(!(A&2048)){O=A&1;y=O;O=(O|0)==0?155437:155442}else{y=1;O=155439}else{s=-s;y=1;O=155436}Ae[ee>>3]=s;F=Xi[ee+4>>2]&2146435072;do{if(F>>>0<2146435072|(F|0)==2146435072&0<0){d=+RR(s,J)*2.0;t=d!=0.0;if(t)Xi[J>>2]=(Xi[J>>2]|0)+-1;m=k|32;if((m|0)==97){b=k&32;v=(b|0)==0?O:O+9|0;c=y|2;i=12-h|0;do{if(!(h>>>0>11|(i|0)==0)){s=8.0;do{i=i+-1|0;s=s*16.0}while((i|0)!=0);if((Wi[v>>0]|0)==45){s=-(s+(-d-s));break}else{s=d+s-s;break}}else s=d}while(0);t=Xi[J>>2]|0;i=(t|0)<0?0-t|0:t;i=FR(i,((i|0)<0)<<31>>31,j)|0;if((i|0)==(j|0)){Wi[K>>0]=48;i=K}Wi[i+-1>>0]=(t>>31&2)+43;w=i+-2|0;Wi[w>>0]=k+15;u=(h|0)<1;o=(A&8|0)==0;t=q;while(1){O=~~s;i=t+1|0;Wi[t>>0]=qi[153511+O>>0]|b;s=(s-+(O|0))*16.0;do{if((i-V|0)==1){if(o&(u&s==0.0))break;Wi[i>>0]=46;i=t+2|0}}while(0);if(!(s!=0.0))break;else t=i}o=w;h=(h|0)!=0&(C+i|0)<(h|0)?P+h-o|0:D-o+i|0;u=h+c|0;AR(e,32,M,u,A);if(!(Xi[e>>2]&32))_R(v,c,e)|0;AR(e,48,M,u,A^65536);t=i-V|0;if(!(Xi[e>>2]&32))_R(q,t,e)|0;i=W-o|0;AR(e,48,h-(t+i)|0,0,0);if(!(Xi[e>>2]&32))_R(w,i,e)|0;AR(e,32,M,u,A^8192);i=(u|0)<(M|0)?M:u;break}i=(h|0)<0?6:h;if(t){t=(Xi[J>>2]|0)+-28|0;Xi[J>>2]=t;s=d*268435456.0}else{s=d;t=Xi[J>>2]|0}F=(t|0)<0?X:L;p=F;t=F;do{_=~~s>>>0;Xi[t>>2]=_;t=t+4|0;s=(s-+(_>>>0))*1.0e9}while(s!=0.0);o=t;t=Xi[J>>2]|0;if((t|0)>0){h=F;while(1){w=(t|0)>29?29:t;u=o+-4|0;do{if(u>>>0<h>>>0)u=h;else{t=0;do{_=KT(Xi[u>>2]|0,0,w|0)|0;_=WT(_|0,Ie|0,t|0,0)|0;t=Ie;S=lN(_|0,t|0,1e9,0)|0;Xi[u>>2]=S;t=fN(_|0,t|0,1e9,0)|0;u=u+-4|0}while(u>>>0>=h>>>0);if(!t){u=h;break}u=h+-4|0;Xi[u>>2]=t}}while(0);while(1){if(o>>>0<=u>>>0)break;t=o+-4|0;if(!(Xi[t>>2]|0))o=t;else break}t=(Xi[J>>2]|0)-w|0;Xi[J>>2]=t;if((t|0)>0)h=u;else break}}else u=F;if((t|0)<0){v=((i+25|0)/9|0)+1|0;E=(m|0)==102;b=u;while(1){c=0-t|0;c=(c|0)>9?9:c;do{if(b>>>0<o>>>0){t=(1<<c)+-1|0;h=1e9>>>c;u=0;w=b;do{_=Xi[w>>2]|0;Xi[w>>2]=(_>>>c)+u;u=Zi(_&t,h)|0;w=w+4|0}while(w>>>0<o>>>0);t=(Xi[b>>2]|0)==0?b+4|0:b;if(!u){u=t;break}Xi[o>>2]=u;u=t;o=o+4|0}else u=(Xi[b>>2]|0)==0?b+4|0:b}while(0);t=E?F:u;o=(o-t>>2|0)>(v|0)?t+(v<<2)|0:o;t=(Xi[J>>2]|0)+c|0;Xi[J>>2]=t;if((t|0)>=0){E=u;break}else b=u}}else E=u;do{if(E>>>0<o>>>0){t=(p-E>>2)*9|0;h=Xi[E>>2]|0;if(h>>>0<10)break;else u=10;do{u=u*10|0;t=t+1|0}while(h>>>0>=u>>>0)}else t=0}while(0);S=(m|0)==103;_=(i|0)!=0;u=i-((m|0)!=102?t:0)+((_&S)<<31>>31)|0;if((u|0)<(((o-p>>2)*9|0)+-9|0)){w=u+9216|0;u=F+4+(((w|0)/9|0)+-1024<<2)|0;w=((w|0)%9|0)+1|0;if((w|0)<9){h=10;do{h=h*10|0;w=w+1|0}while((w|0)!=9)}else h=10;c=Xi[u>>2]|0;v=(c>>>0)%(h>>>0)|0;w=(u+4|0)==(o|0);do{if(w&(v|0)==0)h=E;else{d=(((c>>>0)/(h>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;b=(h|0)/2|0;if(v>>>0<b>>>0)s=.5;else s=w&(v|0)==(b|0)?1.0:1.5;do{if(y){if((Wi[O>>0]|0)!=45)break;d=-d;s=-s}}while(0);w=c-v|0;Xi[u>>2]=w;if(!(d+s!=d)){h=E;break}m=w+h|0;Xi[u>>2]=m;if(m>>>0>999999999){t=E;while(1){h=u+-4|0;Xi[u>>2]=0;if(h>>>0<t>>>0){t=t+-4|0;Xi[t>>2]=0}m=(Xi[h>>2]|0)+1|0;Xi[h>>2]=m;if(m>>>0>999999999)u=h;else{b=t;u=h;break}}}else b=E;t=(p-b>>2)*9|0;w=Xi[b>>2]|0;if(w>>>0<10){h=b;break}else h=10;do{h=h*10|0;t=t+1|0}while(w>>>0>=h>>>0);h=b}}while(0);m=u+4|0;E=h;o=o>>>0>m>>>0?m:o}c=0-t|0;while(1){if(o>>>0<=E>>>0){v=0;m=o;break}u=o+-4|0;if(!(Xi[u>>2]|0))o=u;else{v=1;m=o;break}}do{if(S){i=(_&1^1)+i|0;if((i|0)>(t|0)&(t|0)>-5){k=k+-1|0;i=i+-1-t|0}else{k=k+-2|0;i=i+-1|0}o=A&8;if(o|0)break;do{if(v){o=Xi[m+-4>>2]|0;if(!o){u=9;break}if(!((o>>>0)%10|0)){h=10;u=0}else{u=0;break}do{h=h*10|0;u=u+1|0}while(!((o>>>0)%(h>>>0)|0|0))}else u=9}while(0);o=((m-p>>2)*9|0)+-9|0;if((k|32|0)==102){o=o-u|0;o=(o|0)<0?0:o;i=(i|0)<(o|0)?i:o;o=0;break}else{o=o+t-u|0;o=(o|0)<0?0:o;i=(i|0)<(o|0)?i:o;o=0;break}}else o=A&8}while(0);b=i|o;h=(b|0)!=0&1;w=(k|32|0)==102;if(w){t=(t|0)>0?t:0;k=0}else{u=(t|0)<0?c:t;u=FR(u,((u|0)<0)<<31>>31,j)|0;if((W-u|0)<2)do{u=u+-1|0;Wi[u>>0]=48}while((W-u|0)<2);Wi[u+-1>>0]=(t>>31&2)+43;p=u+-2|0;Wi[p>>0]=k;t=W-p|0;k=p}c=y+1+i+h+t|0;AR(e,32,M,c,A);if(!(Xi[e>>2]&32))_R(O,y,e)|0;AR(e,48,M,c,A^65536);do{if(w){u=E>>>0>F>>>0?F:E;t=u;do{o=FR(Xi[t>>2]|0,0,I)|0;do{if((t|0)==(u|0)){if((o|0)!=(I|0))break;Wi[B>>0]=48;o=B}else{if(o>>>0<=q>>>0)break;jT(q|0,48,o-V|0)|0;do{o=o+-1|0}while(o>>>0>q>>>0)}}while(0);if(!(Xi[e>>2]&32))_R(o,H-o|0,e)|0;t=t+4|0}while(t>>>0<=F>>>0);do{if(b|0){if(Xi[e>>2]&32|0)break;_R(155467,1,e)|0}}while(0);if((i|0)>0&t>>>0<m>>>0){o=t;while(1){t=FR(Xi[o>>2]|0,0,I)|0;if(t>>>0>q>>>0){jT(q|0,48,t-V|0)|0;do{t=t+-1|0}while(t>>>0>q>>>0)}if(!(Xi[e>>2]&32))_R(t,(i|0)>9?9:i,e)|0;o=o+4|0;t=i+-9|0;if(!((i|0)>9&o>>>0<m>>>0)){i=t;break}else i=t}}AR(e,48,i+9|0,9,0)}else{w=v?m:E+4|0;if((i|0)>-1){h=(o|0)==0;u=E;do{t=FR(Xi[u>>2]|0,0,I)|0;if((t|0)==(I|0)){Wi[B>>0]=48;t=B}do{if((u|0)==(E|0)){o=t+1|0;if(!(Xi[e>>2]&32))_R(t,1,e)|0;if(h&(i|0)<1){t=o;break}if(Xi[e>>2]&32|0){t=o;break}_R(155467,1,e)|0;t=o}else{if(t>>>0<=q>>>0)break;jT(q|0,48,t+Y|0)|0;do{t=t+-1|0}while(t>>>0>q>>>0)}}while(0);o=H-t|0;if(!(Xi[e>>2]&32))_R(t,(i|0)>(o|0)?o:i,e)|0;i=i-o|0;u=u+4|0}while(u>>>0<w>>>0&(i|0)>-1)}AR(e,48,i+18|0,18,0);if(Xi[e>>2]&32|0)break;_R(k,W-k|0,e)|0}}while(0);AR(e,32,M,c,A^8192);i=(c|0)<(M|0)?M:c}else{w=(k&32|0)!=0;h=s!=s|0.0!=0.0;t=h?0:y;u=t+3|0;AR(e,32,M,u,o);i=Xi[e>>2]|0;if(!(i&32)){_R(O,t,e)|0;i=Xi[e>>2]|0}if(!(i&32))_R(h?w?155744:155463:w?155455:155459,3,e)|0;AR(e,32,M,u,A^8192);i=(u|0)<(M|0)?M:u}}while(0);t=i;v=g;continue e}default:{i=v;o=A;k=h;c=0;b=153527;t=N}}}while(0);i:do{if((R|0)==64){o=G;t=Xi[o>>2]|0;o=Xi[o+4>>2]|0;u=k&32;if(!((t|0)==0&(o|0)==0)){i=N;do{i=i+-1|0;Wi[i>>0]=qi[153511+(t&15)>>0]|u;t=XT(t|0,o|0,4)|0;o=Ie}while(!((t|0)==0&(o|0)==0));R=G;if((w&8|0)==0|(Xi[R>>2]|0)==0&(Xi[R+4>>2]|0)==0){t=w;w=0;u=153527;R=77}else{t=w;w=2;u=153527+(k>>4)|0;R=77}}else{i=N;t=w;w=0;u=153527;R=77}}else if((R|0)==76){i=FR(i,t,N)|0;t=A;w=o;R=77}else if((R|0)==82){R=0;A=OR(t,0,h)|0;O=(A|0)==0;i=t;k=O?h:A-t|0;c=0;b=153527;t=O?t+h|0:A}else if((R|0)==86){R=0;o=0;t=0;w=i;while(1){u=Xi[w>>2]|0;if(!u)break;t=gR(Z,u)|0;if((t|0)<0|t>>>0>(h-o|0)>>>0)break;o=t+o|0;if(h>>>0>o>>>0)w=w+4|0;else break}if((t|0)<0){a=-1;break e}AR(e,32,M,o,A);if(!o){i=0;R=97}else{u=0;while(1){t=Xi[i>>2]|0;if(!t){i=o;R=97;break i}t=gR(Z,t)|0;u=t+u|0;if((u|0)>(o|0)){i=o;R=97;break i}if(!(Xi[e>>2]&32))_R(Z,t,e)|0;if(u>>>0>=o>>>0){i=o;R=97;break}else i=i+4|0}}}}while(0);if((R|0)==97){R=0;AR(e,32,M,i,A^8192);t=(M|0)>(i|0)?M:i;v=g;continue}if((R|0)==77){R=0;o=(h|0)>-1?t&-65537:t;t=G;t=(Xi[t>>2]|0)!=0|(Xi[t+4>>2]|0)!=0;if((h|0)!=0|t){k=(t&1^1)+(U-i)|0;k=(h|0)>(k|0)?h:k;c=w;b=u;t=N}else{i=N;k=0;c=w;b=u;t=N}}w=t-i|0;u=(k|0)<(w|0)?w:k;h=c+u|0;t=(M|0)<(h|0)?h:M;AR(e,32,t,h,o);if(!(Xi[e>>2]&32))_R(b,c,e)|0;AR(e,48,t,h,o^65536);AR(e,48,u,w,0);if(!(Xi[e>>2]&32))_R(i,w,e)|0;AR(e,32,t,h,o^8192);v=g}e:do{if((R|0)==244)if(!e)if(n){a=1;while(1){n=Xi[l+(a<<2)>>2]|0;if(!n)break;pR(f+(a<<3)|0,n,r);a=a+1|0;if((a|0)>=10){a=1;break e}}if((a|0)<10)while(1){if(Xi[l+(a<<2)>>2]|0){a=-1;break e}a=a+1|0;if((a|0)>=10){a=1;break}}else a=1}else a=0}while(0);Ue=$;return a|0}function _R(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=r+16|0;l=Xi[f>>2]|0;if(!l)if(!(mR(r)|0)){l=Xi[f>>2]|0;a=5}else f=0;else a=5;e:do{if((a|0)==5){n=r+20|0;f=Xi[n>>2]|0;a=f;if((l-f|0)>>>0<i>>>0){f=Wz[Xi[r+36>>2]&7](r,e,i)|0;break}i:do{if((Wi[r+75>>0]|0)>-1){f=i;while(1){if(!f){l=a;f=0;break i}l=f+-1|0;if((Wi[e+l>>0]|0)==10)break;else f=l}if((Wz[Xi[r+36>>2]&7](r,e,f)|0)>>>0<f>>>0)break e;i=i-f|0;e=e+f|0;l=Xi[n>>2]|0}else{l=a;f=0}}while(0);qT(l|0,e|0,i|0)|0;Xi[n>>2]=(Xi[n>>2]|0)+i;f=f+i|0}}while(0);return f|0}function mR(e){e=e|0;var i=0,r=0;i=e+74|0;r=Wi[i>>0]|0;Wi[i>>0]=r+255|r;i=Xi[e>>2]|0;if(!(i&8)){Xi[e+8>>2]=0;Xi[e+4>>2]=0;i=Xi[e+44>>2]|0;Xi[e+28>>2]=i;Xi[e+20>>2]=i;Xi[e+16>>2]=i+(Xi[e+48>>2]|0);i=0}else{Xi[e>>2]=i|32;i=-1}return i|0}function pR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0.0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{f=(Xi[r>>2]|0)+(4-1)&~(4-1);i=Xi[f>>2]|0;Xi[r>>2]=f+4;Xi[e>>2]=i;break e}case 10:{f=(Xi[r>>2]|0)+(4-1)&~(4-1);i=Xi[f>>2]|0;Xi[r>>2]=f+4;f=e;Xi[f>>2]=i;Xi[f+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{f=(Xi[r>>2]|0)+(4-1)&~(4-1);i=Xi[f>>2]|0;Xi[r>>2]=f+4;f=e;Xi[f>>2]=i;Xi[f+4>>2]=0;break e}case 12:{f=(Xi[r>>2]|0)+(8-1)&~(8-1);i=f;l=Xi[i>>2]|0;i=Xi[i+4>>2]|0;Xi[r>>2]=f+8;f=e;Xi[f>>2]=l;Xi[f+4>>2]=i;break e}case 13:{l=(Xi[r>>2]|0)+(4-1)&~(4-1);f=Xi[l>>2]|0;Xi[r>>2]=l+4;f=(f&65535)<<16>>16;l=e;Xi[l>>2]=f;Xi[l+4>>2]=((f|0)<0)<<31>>31;break e}case 14:{l=(Xi[r>>2]|0)+(4-1)&~(4-1);f=Xi[l>>2]|0;Xi[r>>2]=l+4;l=e;Xi[l>>2]=f&65535;Xi[l+4>>2]=0;break e}case 15:{l=(Xi[r>>2]|0)+(4-1)&~(4-1);f=Xi[l>>2]|0;Xi[r>>2]=l+4;f=(f&255)<<24>>24;l=e;Xi[l>>2]=f;Xi[l+4>>2]=((f|0)<0)<<31>>31;break e}case 16:{l=(Xi[r>>2]|0)+(4-1)&~(4-1);f=Xi[l>>2]|0;Xi[r>>2]=l+4;l=e;Xi[l>>2]=f&255;Xi[l+4>>2]=0;break e}case 17:{l=(Xi[r>>2]|0)+(8-1)&~(8-1);a=+Ae[l>>3];Xi[r>>2]=l+8;Ae[e>>3]=a;break e}case 18:{l=(Xi[r>>2]|0)+(8-1)&~(8-1);a=+Ae[l>>3];Xi[r>>2]=l+8;Ae[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function FR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){f=lN(e|0,i|0,10,0)|0;r=r+-1|0;Wi[r>>0]=f|48;f=fN(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=f;i=Ie}else{e=f;break}}if(e)while(1){r=r+-1|0;Wi[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function yR(e){e=e|0;var i=0,r=0;i=0;while(1){if((qi[153537+i>>0]|0)==(e|0)){r=2;break}i=i+1|0;if((i|0)==87){i=87;e=153625;r=5;break}}if((r|0)==2)if(!i)e=153625;else{e=153625;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(Wi[r>>0]|0))break;else r=e}i=i+-1|0;if(!i)break;else r=5}return e|0}function OR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=i&255;f=(r|0)!=0;e:do{if(f&(e&3|0)!=0){l=i&255;while(1){if((Wi[e>>0]|0)==l<<24>>24){n=6;break e}e=e+1|0;r=r+-1|0;f=(r|0)!=0;if(!(f&(e&3|0)!=0)){n=5;break}}}else n=5}while(0);if((n|0)==5)if(f)n=6;else r=0;e:do{if((n|0)==6){l=i&255;if((Wi[e>>0]|0)!=l<<24>>24){f=Zi(a,16843009)|0;i:do{if(r>>>0>3)while(1){a=Xi[e>>2]^f;if((a&-2139062144^-2139062144)&a+-16843009|0)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){n=11;break i}}else n=11}while(0);if((n|0)==11)if(!r){r=0;break}while(1){if((Wi[e>>0]|0)==l<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return(r|0?e:0)|0}function AR(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;t=Ue;Ue=Ue+256|0;n=t;do{if((r|0)>(f|0)&(l&73728|0)==0){l=r-f|0;jT(n|0,i|0,(l>>>0>256?256:l)|0)|0;i=Xi[e>>2]|0;a=(i&32|0)==0;if(l>>>0>255){f=r-f|0;do{if(a){_R(n,256,e)|0;i=Xi[e>>2]|0}l=l+-256|0;a=(i&32|0)==0}while(l>>>0>255);if(a)l=f&255;else break}else if(!a)break;_R(n,l,e)|0}}while(0);Ue=t;return}function gR(e,i){e=e|0;i=i|0;if(!e)e=0;else e=MR(e,i,0)|0;return e|0}function MR(e,i,r){e=e|0;i=i|0;r=r|0;do{if(e){if(i>>>0<128){Wi[e>>0]=i;e=1;break}if(i>>>0<2048){Wi[e>>0]=i>>>6|192;Wi[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){Wi[e>>0]=i>>>12|224;Wi[e+1>>0]=i>>>6&63|128;Wi[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){Wi[e>>0]=i>>>18|240;Wi[e+1>>0]=i>>>12&63|128;Wi[e+2>>0]=i>>>6&63|128;Wi[e+3>>0]=i&63|128;e=4;break}else{Xi[(nR()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function RR(e,i){e=+e;i=i|0;return+ +TR(e,i)}function TR(e,i){e=+e;i=i|0;var r=0,f=0,l=0;Ae[ee>>3]=e;r=Xi[ee>>2]|0;f=Xi[ee+4>>2]|0;l=XT(r|0,f|0,52)|0;l=l&2047;switch(l|0){case 0:{if(e!=0.0){e=+TR(e*18446744073709551616.0,i);r=(Xi[i>>2]|0)+-64|0}else r=0;Xi[i>>2]=r;break}case 2047:break;default:{Xi[i>>2]=l+-1022;Xi[ee>>2]=r;Xi[ee+4>>2]=f&-2146435073|1071644672;e=+Ae[ee>>3]}}return+e}function NR(e){e=e|0;return 0}function DR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=Ue;Ue=Ue+192|0;t=d+152|0;n=d+136|0;c=d+120|0;b=d+104|0;k=d+96|0;u=d+80|0;s=d+64|0;l=d+48|0;h=d+32|0;a=d+16|0;f=d;v=d+176|0;o=d+168|0;Xi[v>>2]=r;r=(Xi[v>>2]|0)+(4-1)&~(4-1);w=Xi[r>>2]|0;Xi[v>>2]=r+4;w=(i|0)==4?w|32768:w;e:do{switch(i|0){case 14:{Xi[f>>2]=e;Xi[f+4>>2]=14;Xi[f+8>>2]=w;r=aR(Ye(221,f|0)|0)|0;break}case 9:{Xi[a>>2]=e;Xi[a+4>>2]=16;Xi[a+8>>2]=o;r=Ye(221,a|0)|0;switch(r|0){case-22:{Xi[h>>2]=e;Xi[h+4>>2]=9;Xi[h+8>>2]=w;r=Ye(221,h|0)|0;break}case 0:{r=Xi[o+4>>2]|0;r=(Xi[o>>2]|0)==2?0-r|0:r;break}default:r=aR(r)|0}break}case 1030:{Xi[l>>2]=e;Xi[l+4>>2]=1030;Xi[l+8>>2]=w;r=Ye(221,l|0)|0;if((r|0)!=-22){if((r|0)>-1){Xi[s>>2]=r;Xi[s+4>>2]=2;Xi[s+8>>2]=1;Ye(221,s|0)|0}r=aR(r)|0;break e}Xi[u>>2]=e;Xi[u+4>>2]=1030;Xi[u+8>>2]=0;r=Ye(221,u|0)|0;if((r|0)==-22){Xi[b>>2]=e;Xi[b+4>>2]=0;Xi[b+8>>2]=w;r=Ye(221,b|0)|0;if((r|0)>-1){Xi[c>>2]=r;Xi[c+4>>2]=2;Xi[c+8>>2]=1;Ye(221,c|0)|0}r=aR(r)|0;break e}else{if((r|0)>-1){Xi[k>>2]=r;ge(6,k|0)|0}r=aR(-22)|0;break e}}default:if((i+-12|0)>>>0<5){Xi[n>>2]=e;Xi[n+4>>2]=i;Xi[n+8>>2]=w;r=aR(Ye(221,n|0)|0)|0;break e}else{Xi[t>>2]=e;Xi[t+4>>2]=i;Xi[t+8>>2]=w;r=aR(Ye(221,t|0)|0)|0;break e}}}while(0);Ue=d;return r|0}function CR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=Ue;Ue=Ue+32|0;l=f;a=f+16|0;Xi[a>>2]=r;n=(Xi[a>>2]|0)+(4-1)&~(4-1);r=Xi[n>>2]|0;Xi[a>>2]=n+4;Xi[l>>2]=e;Xi[l+4>>2]=i;Xi[l+8>>2]=r;r=aR(Ge(54,l|0)|0)|0;Ue=f;return r|0}function PR(e,i){e=e|0;i=i|0;var r=0,f=0;f=Wi[e>>0]|0;r=Wi[i>>0]|0;if(f<<24>>24==0?1:f<<24>>24!=r<<24>>24)i=f;else{do{e=e+1|0;i=i+1|0;f=Wi[e>>0]|0;r=Wi[i>>0]|0}while(!(f<<24>>24==0?1:f<<24>>24!=r<<24>>24));i=f}return(i&255)-(r&255)|0}function LR(e,i){e=e|0;i=i|0;IR(e,i)|0;return e|0}function IR(e,i){e=e|0;i=i|0;var r=0,f=0;r=i;e:do{if(!((r^e)&3)){if(r&3)do{r=Wi[i>>0]|0;Wi[e>>0]=r;if(!(r<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);r=Xi[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009)){f=e;while(1){i=i+4|0;e=f+4|0;Xi[f>>2]=r;r=Xi[i>>2]|0;if((r&-2139062144^-2139062144)&r+-16843009|0)break;else f=e}}f=8}else f=8}while(0);if((f|0)==8){f=Wi[i>>0]|0;Wi[e>>0]=f;if(f<<24>>24)do{i=i+1|0;e=e+1|0;f=Wi[i>>0]|0;Wi[e>>0]=f}while(f<<24>>24!=0)}return e|0}function HR(e){e=e|0;var i=0,r=0;r=Ue;Ue=Ue+16|0;i=r;if((Xi[e+8>>2]|0)==0?(BR(e)|0)!=0:0)i=-1;else if((Wz[Xi[e+32>>2]&7](e,i,1)|0)==1)i=qi[i>>0]|0;else i=-1;Ue=r;return i|0}function BR(e){e=e|0;var i=0,r=0;i=e+74|0;r=Wi[i>>0]|0;Wi[i>>0]=r+255|r;i=e+20|0;r=e+44|0;if((Xi[i>>2]|0)>>>0>(Xi[r>>2]|0)>>>0)Wz[Xi[e+36>>2]&7](e,0,0)|0;Xi[e+16>>2]=0;Xi[e+28>>2]=0;Xi[i>>2]=0;i=Xi[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{Xi[e>>2]=i|32;i=-1}else{i=Xi[r>>2]|0;Xi[e+8>>2]=i;Xi[e+4>>2]=i;i=0}return i|0}function UR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;if(!r)i=0;else{f=Wi[e>>0]|0;e:do{if(!(f<<24>>24))f=0;else while(1){r=r+-1|0;l=Wi[i>>0]|0;if(!(f<<24>>24==l<<24>>24&((r|0)!=0&l<<24>>24!=0)))break e;e=e+1|0;i=i+1|0;f=Wi[e>>0]|0;if(!(f<<24>>24)){f=0;break}}}while(0);i=(f&255)-(qi[i>>0]|0)|0}return i|0}function xR(e){e=e|0;return((e|0)==32|(e+-9|0)>>>0<5)&1|0}function zR(e,i,r){e=e|0;i=i|0;r=r|0;e=VR(e,i,r,-1,0)|0;return e|0}function VR(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+112|0;t=o;Xi[t>>2]=0;a=t+4|0;Xi[a>>2]=e;Xi[t+44>>2]=e;n=t+8|0;Xi[n>>2]=(e|0)<0?-1:e+2147483647|0;Xi[t+76>>2]=-1;YR(t,0);f=jR(t,r,1,f,l)|0;if(i|0)Xi[i>>2]=e+((Xi[a>>2]|0)+(Xi[t+108>>2]|0)-(Xi[n>>2]|0));Ue=o;return f|0}function YR(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;Xi[e+104>>2]=i;r=Xi[e+8>>2]|0;f=Xi[e+4>>2]|0;l=r-f|0;Xi[e+108>>2]=l;if((i|0)!=0&(l|0)>(i|0))Xi[e+100>>2]=f+i;else Xi[e+100>>2]=r;return}function jR(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;e:do{if(i>>>0>36){Xi[(nR()|0)>>2]=22;l=0;f=0}else{b=e+4|0;k=e+100|0;do{a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0}while((xR(a)|0)!=0);i:do{switch(a|0){case 43:case 45:{n=((a|0)==45)<<31>>31;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0;w=n;break i}else{a=KR(e)|0;w=n;break i}}default:w=0}}while(0);n=(i|0)==0;do{if((i|16|0)==16&(a|0)==48){a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;if((a|32|0)!=120)if(n){i=8;u=46;break}else{u=32;break}i=Xi[b>>2]|0;if(i>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=i+1;a=qi[i>>0]|0}else a=KR(e)|0;if((qi[155470+a>>0]|0)>15){f=(Xi[k>>2]|0)==0;if(!f)Xi[b>>2]=(Xi[b>>2]|0)+-1;if(!r){YR(e,0);l=0;f=0;break e}if(f){l=0;f=0;break e}Xi[b>>2]=(Xi[b>>2]|0)+-1;l=0;f=0;break e}else{i=16;u=46}}else{i=n?10:i;if((qi[155470+a>>0]|0)>>>0<i>>>0)u=32;else{if(Xi[k>>2]|0)Xi[b>>2]=(Xi[b>>2]|0)+-1;YR(e,0);Xi[(nR()|0)>>2]=22;l=0;f=0;break e}}}while(0);if((u|0)==32)if((i|0)==10){i=a+-48|0;if(i>>>0<10){a=0;while(1){n=(a*10|0)+i|0;i=Xi[b>>2]|0;if(i>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=i+1;a=qi[i>>0]|0}else a=KR(e)|0;i=a+-48|0;if(!(i>>>0<10&n>>>0<429496729)){i=n;break}else a=n}n=0}else{i=0;n=0}r=a+-48|0;if(r>>>0<10){while(1){t=rN(i|0,n|0,10,0)|0;o=Ie;s=((r|0)<0)<<31>>31;h=~s;if(o>>>0>h>>>0|(o|0)==(h|0)&t>>>0>~r>>>0){t=i;break}i=WT(t|0,o|0,r|0,s|0)|0;n=Ie;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;r=a+-48|0;if(!(r>>>0<10&(n>>>0<429496729|(n|0)==429496729&i>>>0<2576980378))){t=i;break}}if(r>>>0>9){a=t;i=w}else{i=10;u=72}}else{a=i;i=w}}else u=46;i:do{if((u|0)==46){if(!(i+-1&i)){u=Wi[155726+((i*23|0)>>>5&7)>>0]|0;n=Wi[155470+a>>0]|0;r=n&255;if(r>>>0<i>>>0){a=0;while(1){t=r|a<<u;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;n=Wi[155470+a>>0]|0;r=n&255;if(!(t>>>0<134217728&r>>>0<i>>>0))break;else a=t}r=0}else{r=0;t=0}o=XT(-1,-1,u|0)|0;s=Ie;if((n&255)>>>0>=i>>>0|(r>>>0>s>>>0|(r|0)==(s|0)&t>>>0>o>>>0)){n=r;u=72;break}else a=r;while(1){t=KT(t|0,a|0,u|0)|0;r=Ie;t=n&255|t;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;n=Wi[155470+a>>0]|0;if((n&255)>>>0>=i>>>0|(r>>>0>s>>>0|(r|0)==(s|0)&t>>>0>o>>>0)){n=r;u=72;break i}else a=r}}n=Wi[155470+a>>0]|0;r=n&255;if(r>>>0<i>>>0){a=0;while(1){t=r+(Zi(a,i)|0)|0;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;n=Wi[155470+a>>0]|0;r=n&255;if(!(t>>>0<119304647&r>>>0<i>>>0))break;else a=t}r=0}else{t=0;r=0}if((n&255)>>>0<i>>>0){u=fN(-1,-1,i|0,0)|0;h=Ie;s=r;while(1){if(s>>>0>h>>>0|(s|0)==(h|0)&t>>>0>u>>>0){n=s;u=72;break i}r=rN(t|0,s|0,i|0,0)|0;o=Ie;n=n&255;if(o>>>0>4294967295|(o|0)==-1&r>>>0>~n>>>0){n=s;u=72;break i}t=WT(n|0,0,r|0,o|0)|0;r=Ie;a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;n=Wi[155470+a>>0]|0;if((n&255)>>>0>=i>>>0){n=r;u=72;break}else s=r}}else{n=r;u=72}}}while(0);if((u|0)==72)if((qi[155470+a>>0]|0)>>>0<i>>>0){do{a=Xi[b>>2]|0;if(a>>>0<(Xi[k>>2]|0)>>>0){Xi[b>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0}while((qi[155470+a>>0]|0)>>>0<i>>>0);Xi[(nR()|0)>>2]=34;n=l;a=f;i=(f&1|0)==0&0==0?w:0}else{a=t;i=w}if(Xi[k>>2]|0)Xi[b>>2]=(Xi[b>>2]|0)+-1;if(!(n>>>0<l>>>0|(n|0)==(l|0)&a>>>0<f>>>0)){if(!((f&1|0)!=0|0!=0|(i|0)!=0)){Xi[(nR()|0)>>2]=34;f=WT(f|0,l|0,-1,-1)|0;l=Ie;break}if(n>>>0>l>>>0|(n|0)==(l|0)&a>>>0>f>>>0){Xi[(nR()|0)>>2]=34;break}}f=((i|0)<0)<<31>>31;f=YT(a^i|0,n^f|0,i|0,f|0)|0;l=Ie}}while(0);Ie=l;return f|0}function KR(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;r=e+104|0;a=Xi[r>>2]|0;if((a|0)!=0?(Xi[e+108>>2]|0)>=(a|0):0)n=4;else{i=HR(e)|0;if((i|0)>=0){r=Xi[r>>2]|0;a=Xi[e+8>>2]|0;if(r){l=Xi[e+4>>2]|0;r=r-(Xi[e+108>>2]|0)|0;f=a;if((a-l|0)<(r|0))n=9;else Xi[e+100>>2]=l+(r+-1)}else{f=a;n=9}if((n|0)==9)Xi[e+100>>2]=a;r=e+4|0;if(!f)r=Xi[r>>2]|0;else{r=Xi[r>>2]|0;e=e+108|0;Xi[e>>2]=f+1-r+(Xi[e>>2]|0)}r=r+-1|0;if((qi[r>>0]|0|0)!=(i|0))Wi[r>>0]=i}else n=4}if((n|0)==4){Xi[e+100>>2]=0;i=-1}return i|0}function WR(e){e=e|0;var i=0,r=0;i=Ue;Ue=Ue+16|0;r=i;Xi[r>>2]=e;e=ge(6,r|0)|0;e=aR((e|0)==-4?-115:e)|0;Ue=i;return e|0}function GR(e,i){e=e|0;i=i|0;e=XR(e,i)|0;return((Wi[e>>0]|0)==(i&255)<<24>>24?e:0)|0}function XR(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;f=i&255;e:do{if(!f)e=e+(wR(e)|0)|0;else{if(e&3){r=i&255;do{l=Wi[e>>0]|0;if(l<<24>>24==0?1:l<<24>>24==r<<24>>24)break e;e=e+1|0}while((e&3|0)!=0)}f=Zi(f,16843009)|0;r=Xi[e>>2]|0;i:do{if(!((r&-2139062144^-2139062144)&r+-16843009))do{l=r^f;if((l&-2139062144^-2139062144)&l+-16843009|0)break i;e=e+4|0;r=Xi[e>>2]|0}while(!((r&-2139062144^-2139062144)&r+-16843009|0))}while(0);r=i&255;while(1){l=Wi[e>>0]|0;if(l<<24>>24==0?1:l<<24>>24==r<<24>>24)break;else e=e+1|0}}}while(0);return e|0}function qR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Ue;Ue=Ue+16|0;l=f;Xi[l>>2]=r;r=JR(e,i,l)|0;Ue=f;return r|0}function JR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=Ue;Ue=Ue+112|0;f=a;l=f;n=l+112|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(n|0));Xi[f+32>>2]=6;Xi[f+44>>2]=e;Xi[f+76>>2]=-1;Xi[f+84>>2]=e;n=$R(f,i,r)|0;Ue=a;return n|0}function ZR(e,i,r){e=e|0;i=i|0;r=r|0;return QR(e,i,r)|0}function QR(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=e+84|0;a=Xi[f>>2]|0;n=r+256|0;l=OR(a,0,n)|0;l=(l|0)==0?n:l-a|0;r=l>>>0<r>>>0?l:r;qT(i|0,a|0,r|0)|0;Xi[e+4>>2]=a+r;i=a+l|0;Xi[e+8>>2]=i;Xi[f>>2]=i;return r|0}function $R(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0.0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;C=Ue;Ue=Ue+304|0;O=C+16|0;g=C+8|0;A=C+33|0;M=C;v=C+32|0;if((Xi[e+76>>2]|0)>-1)D=NR(e)|0;else D=0;f=Wi[i>>0]|0;e:do{if(f<<24>>24){R=e+4|0;T=e+100|0;y=e+108|0;E=e+8|0;S=A+10|0;_=A+33|0;m=g+4|0;p=A+46|0;F=A+94|0;a=f;f=0;n=i;h=0;l=0;i=0;i:while(1){r:do{if(!(xR(a&255)|0)){a=(Wi[n>>0]|0)==37;f:do{if(a){s=n+1|0;t=Wi[s>>0]|0;l:do{switch(t<<24>>24){case 37:break f;case 42:{d=0;t=n+2|0;break}default:{t=(t&255)+-48|0;if(t>>>0<10?(Wi[n+2>>0]|0)==36:0){Xi[O>>2]=Xi[r>>2];while(1){d=(Xi[O>>2]|0)+(4-1)&~(4-1);a=Xi[d>>2]|0;Xi[O>>2]=d+4;if(t>>>0>1)t=t+-1|0;else break}d=a;t=n+3|0;break l}t=(Xi[r>>2]|0)+(4-1)&~(4-1);d=Xi[t>>2]|0;Xi[r>>2]=t+4;t=s}}}while(0);a=Wi[t>>0]|0;n=a&255;if((n+-48|0)>>>0<10){a=0;while(1){s=(a*10|0)+-48+n|0;t=t+1|0;a=Wi[t>>0]|0;n=a&255;if((n+-48|0)>>>0>=10)break;else a=s}}else s=0;if(a<<24>>24==109){t=t+1|0;u=Wi[t>>0]|0;a=(d|0)!=0&1;l=0;i=0}else{u=a;a=0}n=t+1|0;switch(u&255|0){case 104:{c=(Wi[n>>0]|0)==104;n=c?t+2|0:n;t=c?-2:-1;break}case 108:{c=(Wi[n>>0]|0)==108;n=c?t+2|0:n;t=c?3:1;break}case 106:{t=3;break}case 116:case 122:{t=1;break}case 76:{t=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{n=t;t=0;break}default:{N=154;break i}}u=qi[n>>0]|0;w=(u&47|0)==3;u=w?u|32:u;w=w?1:t;switch(u|0){case 99:{c=h;b=(s|0)<1?1:s;break}case 91:{c=h;b=s;break}case 110:{if(!d){t=h;break r}switch(w|0){case-2:{Wi[d>>0]=h;t=h;break r}case-1:{Gi[d>>1]=h;t=h;break r}case 0:{Xi[d>>2]=h;t=h;break r}case 1:{Xi[d>>2]=h;t=h;break r}case 3:{t=d;Xi[t>>2]=h;Xi[t+4>>2]=((h|0)<0)<<31>>31;t=h;break r}default:{t=h;break r}}}default:{YR(e,0);do{t=Xi[R>>2]|0;if(t>>>0<(Xi[T>>2]|0)>>>0){Xi[R>>2]=t+1;t=qi[t>>0]|0}else t=KR(e)|0}while((xR(t)|0)!=0);if(!(Xi[T>>2]|0))t=Xi[R>>2]|0;else{t=(Xi[R>>2]|0)+-1|0;Xi[R>>2]=t}c=(Xi[y>>2]|0)+h+t-(Xi[E>>2]|0)|0;b=s}}YR(e,b);t=Xi[R>>2]|0;s=Xi[T>>2]|0;if(t>>>0<s>>>0)Xi[R>>2]=t+1;else{if((KR(e)|0)<0){N=154;break i}s=Xi[T>>2]|0}if(s|0)Xi[R>>2]=(Xi[R>>2]|0)+-1;l:do{switch(u|0){case 91:case 99:case 115:{k=(u|0)==99;a:do{if((u|16|0)==115){jT(A|0,-1,257)|0;Wi[A>>0]=0;if((u|0)==115){Wi[_>>0]=0;Wi[S>>0]=0;Wi[S+1>>0]=0;Wi[S+2>>0]=0;Wi[S+3>>0]=0;Wi[S+4>>0]=0}}else{u=n+1|0;h=(Wi[u>>0]|0)==94;t=h&1;n=h?n+2|0:u;jT(A|0,h&1|0,257)|0;Wi[A>>0]=0;switch(Wi[n>>0]|0){case 45:{h=(t^1)&255;Wi[p>>0]=h;n=n+1|0;break}case 93:{h=(t^1)&255;Wi[F>>0]=h;n=n+1|0;break}default:h=(t^1)&255}while(1){t=Wi[n>>0]|0;n:do{switch(t<<24>>24){case 0:{N=154;break i}case 93:break a;case 45:{u=n+1|0;t=Wi[u>>0]|0;switch(t<<24>>24){case 93:case 0:{t=45;break n}default:{}}n=Wi[n+-1>>0]|0;if((n&255)<(t&255)){n=n&255;do{n=n+1|0;Wi[A+n>>0]=h;t=Wi[u>>0]|0}while((n|0)<(t&255|0));n=u}else n=u;break}default:{}}}while(0);Wi[A+((t&255)+1)>>0]=h;n=n+1|0}}}while(0);u=k?b+1|0:31;h=(w|0)==1;w=(a|0)!=0;a:do{if(h){if(w){i=LT(u<<2)|0;if(!i){l=0;N=154;break i}}else i=d;Xi[g>>2]=0;Xi[m>>2]=0;l=0;n:while(1){s=(i|0)==0;do{t:while(1){t=Xi[R>>2]|0;if(t>>>0<(Xi[T>>2]|0)>>>0){Xi[R>>2]=t+1;t=qi[t>>0]|0}else t=KR(e)|0;if(!(Wi[A+(t+1)>>0]|0))break n;Wi[v>>0]=t;switch(eT(M,v,1,g)|0){case-1:{l=0;N=154;break i}case-2:break;default:break t}}if(!s){Xi[i+(l<<2)>>2]=Xi[M>>2];l=l+1|0}}while(!(w&(l|0)==(u|0)));l=u<<1|1;t=HT(i,l<<2)|0;if(!t){l=0;N=154;break i}else{s=u;u=l;i=t;l=s}}if(!(iT(g)|0)){l=0;N=154;break i}else{s=l;l=0}}else{if(w){l=LT(u)|0;if(!l){l=0;i=0;N=154;break i}else t=0;while(1){do{i=Xi[R>>2]|0;if(i>>>0<(Xi[T>>2]|0)>>>0){Xi[R>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if(!(Wi[A+(i+1)>>0]|0)){s=t;i=0;break a}Wi[l+t>>0]=i;t=t+1|0}while((t|0)!=(u|0));i=u<<1|1;t=HT(l,i)|0;if(!t){i=0;N=154;break i}else{s=u;u=i;l=t;t=s}}}if(!d){l=s;while(1){i=Xi[R>>2]|0;if(i>>>0<l>>>0){Xi[R>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if(!(Wi[A+(i+1)>>0]|0)){s=0;l=0;i=0;break a}l=Xi[T>>2]|0}}else{l=0;while(1){i=Xi[R>>2]|0;if(i>>>0<s>>>0){Xi[R>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if(!(Wi[A+(i+1)>>0]|0)){s=l;l=d;i=0;break a}Wi[d+l>>0]=i;s=Xi[T>>2]|0;l=l+1|0}}}}while(0);if(!(Xi[T>>2]|0))t=Xi[R>>2]|0;else{t=(Xi[R>>2]|0)+-1|0;Xi[R>>2]=t}t=t-(Xi[E>>2]|0)+(Xi[y>>2]|0)|0;if(!t)break i;if(!((t|0)==(b|0)|k^1))break i;do{if(w)if(h){Xi[d>>2]=i;break}else{Xi[d>>2]=l;break}}while(0);if(!k){if(i|0)Xi[i+(s<<2)>>2]=0;if(!l){l=0;break l}Wi[l+s>>0]=0}break}case 120:case 88:case 112:{t=16;N=136;break}case 111:{t=8;N=136;break}case 117:case 100:{t=10;N=136;break}case 105:{t=0;N=136;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{o=+rT(e,w,0);if((Xi[y>>2]|0)==((Xi[E>>2]|0)-(Xi[R>>2]|0)|0))break i;if(d)switch(w|0){case 0:{P[d>>2]=o;break l}case 1:{Ae[d>>3]=o;break l}case 2:{Ae[d>>3]=o;break l}default:break l}break}default:{}}}while(0);l:do{if((N|0)==136){N=0;t=jR(e,t,0,-1,-1)|0;if((Xi[y>>2]|0)==((Xi[E>>2]|0)-(Xi[R>>2]|0)|0))break i;if((d|0)!=0&(u|0)==112){Xi[d>>2]=t;break}if(d)switch(w|0){case-2:{Wi[d>>0]=t;break l}case-1:{Gi[d>>1]=t;break l}case 0:{Xi[d>>2]=t;break l}case 1:{Xi[d>>2]=t;break l}case 3:{b=d;Xi[b>>2]=t;Xi[b+4>>2]=Ie;break l}default:break l}}}while(0);f=((d|0)!=0&1)+f|0;t=(Xi[y>>2]|0)+c+(Xi[R>>2]|0)-(Xi[E>>2]|0)|0;break r}}while(0);n=n+(a&1)|0;YR(e,0);a=Xi[R>>2]|0;if(a>>>0<(Xi[T>>2]|0)>>>0){Xi[R>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0;if((a|0)!=(qi[n>>0]|0)){N=22;break i}t=h+1|0}else{while(1){a=n+1|0;if(!(xR(qi[a>>0]|0)|0))break;else n=a}YR(e,0);do{a=Xi[R>>2]|0;if(a>>>0<(Xi[T>>2]|0)>>>0){Xi[R>>2]=a+1;a=qi[a>>0]|0}else a=KR(e)|0}while((xR(a)|0)!=0);if(!(Xi[T>>2]|0))a=Xi[R>>2]|0;else{a=(Xi[R>>2]|0)+-1|0;Xi[R>>2]=a}t=(Xi[y>>2]|0)+h+a-(Xi[E>>2]|0)|0}}while(0);n=n+1|0;a=Wi[n>>0]|0;if(!(a<<24>>24))break e;else h=t}if((N|0)==22){if(Xi[T>>2]|0)Xi[R>>2]=(Xi[R>>2]|0)+-1;if((f|0)!=0|(a|0)>-1)break;else{f=0;N=155}}else if((N|0)==154)if(!f){f=a;N=155}if((N|0)==155){a=f;f=-1}if(a){IT(l);IT(i)}}else f=0}while(0);if(D|0)sR(e);Ue=C;return f|0}function eT(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;o=Ue;Ue=Ue+16|0;l=o;n=(f|0)==0?160584:f;f=Xi[n>>2]|0;e:do{if(!i)if(!f)f=0;else t=15;else{a=(e|0)==0?l:e;if(!r)f=-2;else{if(!f){f=Wi[i>>0]|0;l=f&255;if(f<<24>>24>-1){Xi[a>>2]=l;f=f<<24>>24!=0&1;break}f=l+-194|0;if(f>>>0>50){t=15;break}f=Xi[92604+(f<<2)>>2]|0;l=r+-1|0;if(l){i=i+1|0;t=9}}else{l=r;t=9}i:do{if((t|0)==9){e=Wi[i>>0]|0;s=(e&255)>>>3;if((s+-16|s+(f>>26))>>>0>7){t=15;break e}while(1){i=i+1|0;f=(e&255)+-128|f<<6;l=l+-1|0;if((f|0)>=0)break;if(!l)break i;e=Wi[i>>0]|0;if((e&-64)<<24>>24!=-128){t=15;break e}}Xi[n>>2]=0;Xi[a>>2]=f;f=r-l|0;break e}}while(0);Xi[n>>2]=f;f=-2}}}while(0);if((t|0)==15){Xi[n>>2]=0;Xi[(nR()|0)>>2]=84;f=-1}Ue=o;return f|0}function iT(e){e=e|0;if(!e)e=1;else e=(Xi[e>>2]|0)==0;return e&1|0}function rT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,l=0,a=0.0,n=0,t=0,o=0.0,s=0,u=0,h=0,w=0.0,k=0.0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0.0;T=Ue;Ue=Ue+512|0;A=T;switch(i|0){case 0:{R=24;M=-149;_=4;break}case 1:{R=53;M=-1074;_=4;break}case 2:{R=53;M=-1074;_=4;break}default:f=0.0}e:do{if((_|0)==4){F=e+4|0;p=e+100|0;do{i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0}while((xR(i)|0)!=0);i:do{switch(i|0){case 43:case 45:{l=1-(((i|0)==45&1)<<1)|0;i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0;g=l;break i}else{i=KR(e)|0;g=l;break i}}default:g=1}}while(0);l=i;i=0;do{if((l|32|0)!=(Wi[155735+i>>0]|0))break;do{if(i>>>0<7){l=Xi[F>>2]|0;if(l>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=l+1;l=qi[l>>0]|0;break}else{l=KR(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<8);i:do{switch(i|0){case 8:break;case 3:{_=23;break}default:{n=(r|0)!=0;if(n&i>>>0>3)if((i|0)==8)break i;else{_=23;break i}r:do{if(!i){i=0;do{if((l|32|0)!=(Wi[155744+i>>0]|0))break r;do{if(i>>>0<2){l=Xi[F>>2]|0;if(l>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=l+1;l=qi[l>>0]|0;break}else{l=KR(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<3)}}while(0);switch(i|0){case 3:{i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if((i|0)==40)i=1;else{if(!(Xi[p>>2]|0)){f=D;break e}Xi[F>>2]=(Xi[F>>2]|0)+-1;f=D;break e}while(1){l=Xi[F>>2]|0;if(l>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=l+1;l=qi[l>>0]|0}else l=KR(e)|0;if(!((l+-48|0)>>>0<10|(l+-65|0)>>>0<26)?!((l|0)==95|(l+-97|0)>>>0<26):0)break;i=i+1|0}if((l|0)==41){f=D;break e}l=(Xi[p>>2]|0)==0;if(!l)Xi[F>>2]=(Xi[F>>2]|0)+-1;if(!n){Xi[(nR()|0)>>2]=22;YR(e,0);f=0.0;break e}if(!i){f=D;break e}while(1){i=i+-1|0;if(!l)Xi[F>>2]=(Xi[F>>2]|0)+-1;if(!i){f=D;break e}}}case 0:{do{if((l|0)==48){i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if((i|32|0)!=120){if(!(Xi[p>>2]|0)){i=48;break}Xi[F>>2]=(Xi[F>>2]|0)+-1;i=48;break}i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0;n=0}else{i=KR(e)|0;n=0}r:while(1){switch(i|0){case 46:{_=74;break r}case 48:break;default:{E=0;t=0;v=0;l=0;s=n;u=0;d=0;o=1.0;n=0;f=0.0;break r}}i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0;n=1;continue}else{i=KR(e)|0;n=1;continue}}if((_|0)==74){i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if((i|0)==48){n=0;l=0;do{i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;n=WT(n|0,l|0,-1,-1)|0;l=Ie}while((i|0)==48);E=0;t=0;v=n;s=1;u=1;d=0;o=1.0;n=0;f=0.0}else{E=0;t=0;v=0;l=0;s=n;u=1;d=0;o=1.0;n=0;f=0.0}}while(1){b=i+-48|0;h=i|32;if(b>>>0>=10){c=(i|0)==46;if(!(c|(h+-97|0)>>>0<6)){h=v;b=E;break}if(c)if(!u){c=t;l=E;b=E;u=1;h=d;a=o}else{h=v;b=E;i=46;break}else _=86}else _=86;if((_|0)==86){_=0;i=(i|0)>57?h+-87|0:b;do{if(!((E|0)<0|(E|0)==0&t>>>0<8)){if((E|0)<0|(E|0)==0&t>>>0<14){k=o*.0625;h=d;a=k;f=f+k*+(i|0);break}if((d|0)!=0|(i|0)==0){h=d;a=o}else{h=1;a=o;f=f+o*.5}}else{h=d;a=o;n=i+(n<<4)|0}}while(0);t=WT(t|0,E|0,1,0)|0;c=v;b=Ie;s=1}i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;E=b;v=c;i=qi[i>>0]|0;d=h;o=a;continue}else{E=b;v=c;i=KR(e)|0;d=h;o=a;continue}}if(!s){i=(Xi[p>>2]|0)==0;if(!i)Xi[F>>2]=(Xi[F>>2]|0)+-1;if(r){if(!i?(S=Xi[F>>2]|0,Xi[F>>2]=S+-1,u|0):0)Xi[F>>2]=S+-2}else YR(e,0);f=+(g|0)*0.0;break e}s=(u|0)==0;u=s?t:h;s=s?b:l;if((b|0)<0|(b|0)==0&t>>>0<8){l=b;do{n=n<<4;t=WT(t|0,l|0,1,0)|0;l=Ie}while((l|0)<0|(l|0)==0&t>>>0<8)}if((i|32|0)==112){l=fT(e,r)|0;i=Ie;if((l|0)==0&(i|0)==-2147483648){if(!r){YR(e,0);f=0.0;break e}if(!(Xi[p>>2]|0)){l=0;i=0}else{Xi[F>>2]=(Xi[F>>2]|0)+-1;l=0;i=0}}}else if(!(Xi[p>>2]|0)){l=0;i=0}else{Xi[F>>2]=(Xi[F>>2]|0)+-1;l=0;i=0}A=KT(u|0,s|0,2)|0;A=WT(A|0,Ie|0,-32,-1)|0;i=WT(A|0,Ie|0,l|0,i|0)|0;l=Ie;if(!n){f=+(g|0)*0.0;break e}if((l|0)>0|(l|0)==0&i>>>0>(0-M|0)>>>0){Xi[(nR()|0)>>2]=34;f=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break e}A=M+-106|0;O=((A|0)<0)<<31>>31;if((l|0)<(O|0)|(l|0)==(O|0)&i>>>0<A>>>0){Xi[(nR()|0)>>2]=34;f=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break e}if((n|0)>-1){do{O=!(f>=.5);A=O&1|n<<1;n=A^1;f=f+(O?f:f+-1.0);i=WT(i|0,l|0,-1,-1)|0;l=Ie}while((A|0)>-1);t=i;o=f}else{t=i;o=f}i=YT(32,0,M|0,((M|0)<0)<<31>>31|0)|0;i=WT(t|0,l|0,i|0,Ie|0)|0;M=Ie;if(0>(M|0)|0==(M|0)&R>>>0>i>>>0)if((i|0)<0){i=0;_=127}else _=125;else{i=R;_=125}if((_|0)==125)if((i|0)<53)_=127;else{l=i;a=+(g|0);f=0.0}if((_|0)==127){f=+(g|0);l=i;a=f;f=+aT(+lT(1.0,84-i|0),f)}R=(n&1|0)==0&(o!=0.0&(l|0)<32);f=a*(R?0.0:o)+(f+a*+(((R&1)+n|0)>>>0))-f;if(!(f!=0.0))Xi[(nR()|0)>>2]=34;f=+tT(f,t);break e}else i=l}while(0);y=M+R|0;O=0-y|0;n=0;r:while(1){switch(i|0){case 46:{_=138;break r}case 48:break;default:{l=0;h=0;u=0;break r}}i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0;n=1;continue}else{i=KR(e)|0;n=1;continue}}if((_|0)==138){i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if((i|0)==48){l=0;i=0;while(1){l=WT(l|0,i|0,-1,-1)|0;n=Ie;i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;if((i|0)==48)i=n;else{h=n;n=1;u=1;break}}}else{l=0;h=0;u=1}}Xi[A>>2]=0;s=i+-48|0;t=(i|0)==46;r:do{if(t|s>>>0<10){m=A+496|0;E=0;c=0;d=t;_=h;b=n;S=u;n=0;t=0;u=0;f:while(1){do{if(d)if(!S){l=E;h=c;S=1}else{h=_;i=E;s=c;break f}else{d=WT(E|0,c|0,1,0)|0;c=Ie;v=(i|0)!=48;if((t|0)>=125){if(!v){h=_;E=d;break}Xi[m>>2]=Xi[m>>2]|1;h=_;E=d;break}h=A+(t<<2)|0;if(n)s=i+-48+((Xi[h>>2]|0)*10|0)|0;Xi[h>>2]=s;n=n+1|0;s=(n|0)==9;h=_;E=d;b=1;n=s?0:n;t=(s&1)+t|0;u=v?d:u}}while(0);i=Xi[F>>2]|0;if(i>>>0<(Xi[p>>2]|0)>>>0){Xi[F>>2]=i+1;i=qi[i>>0]|0}else i=KR(e)|0;s=i+-48|0;d=(i|0)==46;if(!(d|s>>>0<10)){s=S;_=161;break r}else _=h}b=(b|0)!=0;_=169}else{E=0;c=0;b=n;s=u;n=0;t=0;u=0;_=161}}while(0);do{if((_|0)==161){m=(s|0)==0;l=m?E:l;h=m?c:h;b=(b|0)!=0;if(!((i|32|0)==101&b))if((i|0)>-1){i=E;s=c;_=169;break}else{i=E;s=c;_=171;break}s=fT(e,r)|0;i=Ie;if((s|0)==0&(i|0)==-2147483648){if(!r){YR(e,0);f=0.0;break}if(!(Xi[p>>2]|0)){s=0;i=0}else{Xi[F>>2]=(Xi[F>>2]|0)+-1;s=0;i=0}}l=WT(s|0,i|0,l|0,h|0)|0;b=E;h=Ie;s=c;_=173}}while(0);if((_|0)==169)if(Xi[p>>2]|0){Xi[F>>2]=(Xi[F>>2]|0)+-1;if(b){b=i;_=173}else _=172}else _=171;if((_|0)==171)if(b){b=i;_=173}else _=172;do{if((_|0)==172){Xi[(nR()|0)>>2]=22;YR(e,0);f=0.0}else if((_|0)==173){i=Xi[A>>2]|0;if(!i){f=+(g|0)*0.0;break}if(((s|0)<0|(s|0)==0&b>>>0<10)&((l|0)==(b|0)&(h|0)==(s|0))?R>>>0>30|(i>>>R|0)==0:0){f=+(g|0)*+(i>>>0);break}e=(M|0)/-2|0;F=((e|0)<0)<<31>>31;if((h|0)>(F|0)|(h|0)==(F|0)&l>>>0>e>>>0){Xi[(nR()|0)>>2]=34;f=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}e=M+-106|0;F=((e|0)<0)<<31>>31;if((h|0)<(F|0)|(h|0)==(F|0)&l>>>0<e>>>0){Xi[(nR()|0)>>2]=34;f=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(n){if((n|0)<9){s=A+(t<<2)|0;i=Xi[s>>2]|0;do{i=i*10|0;n=n+1|0}while((n|0)!=9);Xi[s>>2]=i}t=t+1|0}if((u|0)<9?(u|0)<=(l|0)&(l|0)<18:0){if((l|0)==9){f=+(g|0)*+((Xi[A>>2]|0)>>>0);break}if((l|0)<9){f=+(g|0)*+((Xi[A>>2]|0)>>>0)/+(Xi[92920+(8-l<<2)>>2]|0);break}e=R+27+(Zi(l,-3)|0)|0;i=Xi[A>>2]|0;if((e|0)>30|(i>>>e|0)==0){f=+(g|0)*+(i>>>0)*+(Xi[92920+(l+-10<<2)>>2]|0);break}}i=(l|0)%9|0;if(!i){n=0;i=0}else{b=(l|0)>-1?i:i+9|0;s=Xi[92920+(8-b<<2)>>2]|0;if(t){u=1e9/(s|0)|0;n=0;i=0;h=0;do{p=A+(h<<2)|0;F=Xi[p>>2]|0;e=((F>>>0)/(s>>>0)|0)+i|0;Xi[p>>2]=e;i=Zi((F>>>0)%(s>>>0)|0,u)|0;e=(h|0)==(n|0)&(e|0)==0;h=h+1|0;l=e?l+-9|0:l;n=e?h&127:n}while((h|0)!=(t|0));if(i){Xi[A+(t<<2)>>2]=i;t=t+1|0}}else{n=0;t=0}i=0;l=9-b+l|0}r:while(1){c=(l|0)<18;d=(l|0)==18;v=A+(n<<2)|0;do{if(!c){if(!d){E=t;break r}if((Xi[v>>2]|0)>>>0>=9007199){l=18;E=t;break r}}s=0;u=t+127|0;while(1){b=u&127;h=A+(b<<2)|0;u=KT(Xi[h>>2]|0,0,29)|0;u=WT(u|0,Ie|0,s|0,0)|0;s=Ie;if(s>>>0>0|(s|0)==0&u>>>0>1e9){e=fN(u|0,s|0,1e9,0)|0;u=lN(u|0,s|0,1e9,0)|0;s=e}else s=0;Xi[h>>2]=u;e=(b|0)==(n|0);t=(b|0)!=(t+127&127|0)|e?t:(u|0)==0?b:t;if(e)break;else u=b+-1|0}i=i+-29|0}while((s|0)==0);n=n+127&127;if((n|0)==(t|0)){e=t+127&127;t=A+((t+126&127)<<2)|0;Xi[t>>2]=Xi[t>>2]|Xi[A+(e<<2)>>2];t=e}Xi[A+(n<<2)>>2]=s;l=l+9|0}r:while(1){t=E+1&127;v=A+((E+127&127)<<2)|0;while(1){c=(l|0)==18;d=(l|0)>27?9:1;b=c^1;while(1){u=n&127;h=(u|0)==(E|0);do{if(!h){s=Xi[A+(u<<2)>>2]|0;if(s>>>0<9007199){_=219;break}if(s>>>0>9007199)break;s=n+1&127;if((s|0)==(E|0)){_=219;break}s=Xi[A+(s<<2)>>2]|0;if(s>>>0<254740991){_=219;break}if(!(s>>>0>254740991|b)){l=u;t=E;break r}}else _=219}while(0);if((_|0)==219?(_=0,c):0){_=220;break r}i=i+d|0;if((n|0)==(E|0))n=E;else break}b=(1<<d)+-1|0;c=1e9>>>d;u=n;s=0;h=n;while(1){F=A+(h<<2)|0;e=Xi[F>>2]|0;n=(e>>>d)+s|0;Xi[F>>2]=n;s=Zi(e&b,c)|0;n=(h|0)==(u|0)&(n|0)==0;h=h+1&127;l=n?l+-9|0:l;n=n?h:u;if((h|0)==(E|0))break;else u=n}if(!s)continue;if((t|0)!=(n|0))break;Xi[v>>2]=Xi[v>>2]|1}Xi[A+(E<<2)>>2]=s;E=t}if((_|0)==220)if(h){Xi[A+(t+-1<<2)>>2]=0;l=E}else{l=u;t=E}f=+((Xi[A+(l<<2)>>2]|0)>>>0);l=n+1&127;if((l|0)==(t|0)){t=n+2&127;Xi[A+(t+-1<<2)>>2]=0}k=+(g|0);a=k*(f*1.0e9+ +((Xi[A+(l<<2)>>2]|0)>>>0));c=i+53|0;h=c-M|0;b=(h|0)<(R|0);l=b&1;u=b?(h|0)<0?0:h:R;if((u|0)<53){N=+aT(+lT(1.0,105-u|0),a);o=+oT(a,+lT(1.0,53-u|0));w=N;f=o;o=N+(a-o)}else{w=0.0;f=0.0;o=a}s=n+2&127;do{if((s|0)==(t|0))a=f;else{s=Xi[A+(s<<2)>>2]|0;do{if(s>>>0>=5e8){if(s>>>0>5e8){f=k*.75+f;break}if((n+3&127|0)==(t|0)){f=k*.5+f;break}else{f=k*.75+f;break}}else{if((s|0)==0?(n+3&127|0)==(t|0):0)break;f=k*.25+f}}while(0);if((53-u|0)<=1){a=f;break}if(+oT(f,1.0)!=0.0){a=f;break}a=f+1.0}}while(0);f=o+a-w;do{if((c&2147483647|0)>(-2-y|0)){if(+I(+f)>=9007199254740992.0){l=b&(u|0)==(h|0)?0:l;i=i+1|0;f=f*.5}if((i+50|0)<=(O|0)?!(a!=0.0&(l|0)!=0):0)break;Xi[(nR()|0)>>2]=34}}while(0);f=+tT(f,i)}}while(0);break e}default:{if(Xi[p>>2]|0)Xi[F>>2]=(Xi[F>>2]|0)+-1;Xi[(nR()|0)>>2]=22;YR(e,0);f=0.0;break e}}}}}while(0);if((_|0)==23){l=(Xi[p>>2]|0)==0;if(!l)Xi[F>>2]=(Xi[F>>2]|0)+-1;if((r|0)!=0&i>>>0>3)do{if(!l)Xi[F>>2]=(Xi[F>>2]|0)+-1;i=i+-1|0}while(i>>>0>3)}f=+(g|0)*C}}while(0);Ue=T;return+f}function fT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;n=e+4|0;r=Xi[n>>2]|0;t=e+100|0;if(r>>>0<(Xi[t>>2]|0)>>>0){Xi[n>>2]=r+1;r=qi[r>>0]|0}else r=KR(e)|0;switch(r|0){case 43:case 45:{f=(r|0)==45&1;r=Xi[n>>2]|0;if(r>>>0<(Xi[t>>2]|0)>>>0){Xi[n>>2]=r+1;r=qi[r>>0]|0}else r=KR(e)|0;if((i|0)!=0&(r+-48|0)>>>0>9?(Xi[t>>2]|0)!=0:0){Xi[n>>2]=(Xi[n>>2]|0)+-1;a=f}else a=f;break}default:a=0}if((r+-48|0)>>>0>9)if(!(Xi[t>>2]|0)){f=-2147483648;r=0}else{Xi[n>>2]=(Xi[n>>2]|0)+-1;f=-2147483648;r=0}else{f=0;do{f=r+-48+(f*10|0)|0;r=Xi[n>>2]|0;if(r>>>0<(Xi[t>>2]|0)>>>0){Xi[n>>2]=r+1;r=qi[r>>0]|0}else r=KR(e)|0}while((r+-48|0)>>>0<10&(f|0)<214748364);i=((f|0)<0)<<31>>31;if((r+-48|0)>>>0<10){do{i=rN(f|0,i|0,10,0)|0;f=Ie;r=WT(r|0,((r|0)<0)<<31>>31|0,-48,-1)|0;f=WT(r|0,Ie|0,i|0,f|0)|0;i=Ie;r=Xi[n>>2]|0;if(r>>>0<(Xi[t>>2]|0)>>>0){Xi[n>>2]=r+1;r=qi[r>>0]|0}else r=KR(e)|0}while((r+-48|0)>>>0<10&((i|0)<21474836|(i|0)==21474836&f>>>0<2061584302));l=f}else l=f;if((r+-48|0)>>>0<10)do{r=Xi[n>>2]|0;if(r>>>0<(Xi[t>>2]|0)>>>0){Xi[n>>2]=r+1;r=qi[r>>0]|0}else r=KR(e)|0}while((r+-48|0)>>>0<10);if(Xi[t>>2]|0)Xi[n>>2]=(Xi[n>>2]|0)+-1;e=(a|0)!=0;r=YT(0,0,l|0,i|0)|0;f=e?Ie:i;r=e?r:l}Ie=f;return r|0}function lT(e,i){e=+e;i=i|0;var r=0;if((i|0)>1023){e=e*8988465674311579538646525.0e283;r=i+-1023|0;if((r|0)>1023){r=i+-2046|0;r=(r|0)>1023?1023:r;e=e*8988465674311579538646525.0e283}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;r=i+1022|0;if((r|0)<-1022){r=i+2044|0;r=(r|0)<-1022?-1022:r;e=e*2.2250738585072014e-308}}else r=i;r=KT(r+1023|0,0,52)|0;i=Ie;Xi[ee>>2]=r;Xi[ee+4>>2]=i;return+(e*+Ae[ee>>3])}function aT(e,i){e=+e;i=+i;return+ +nT(e,i)}function nT(e,i){e=+e;i=+i;var r=0;Ae[ee>>3]=i;r=Xi[ee+4>>2]|0;i=+I(+e);Ae[ee>>3]=i;r=r&-2147483648|Xi[ee+4>>2];Xi[ee>>2]=Xi[ee>>2];Xi[ee+4>>2]=r;return+ +Ae[ee>>3]}function tT(e,i){e=+e;i=i|0;return+ +lT(e,i)}function oT(e,i){e=+e;i=+i;return+ +sT(e,i)}function sT(e,i){e=+e;i=+i;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0.0;Ae[ee>>3]=e;r=Xi[ee>>2]|0;s=Xi[ee+4>>2]|0;Ae[ee>>3]=i;u=Xi[ee>>2]|0;h=Xi[ee+4>>2]|0;f=XT(r|0,s|0,52)|0;f=f&2047;t=XT(u|0,h|0,52)|0;t=t&2047;w=s&-2147483648;n=KT(u|0,h|0,1)|0;o=Ie;e:do{if(!((n|0)==0&(o|0)==0)?(b=+I(+i),Ae[ee>>3]=b,a=Xi[ee+4>>2]|0,!(a>>>0>2146435072|(a|0)==2146435072&(Xi[ee>>2]|0)>>>0>0|(f|0)==2047)):0){l=KT(r|0,s|0,1)|0;a=Ie;if(!(a>>>0>o>>>0|(a|0)==(o|0)&l>>>0>n>>>0))return+((l|0)==(n|0)&(a|0)==(o|0)?e*0.0:e);if(!f){f=KT(r|0,s|0,12)|0;l=Ie;if((l|0)>-1|(l|0)==-1&f>>>0>4294967295){a=f;f=0;do{f=f+-1|0;a=KT(a|0,l|0,1)|0;l=Ie}while((l|0)>-1|(l|0)==-1&a>>>0>4294967295)}else f=0;r=KT(r|0,s|0,1-f|0)|0;l=Ie}else l=s&1048575|1048576;if(!t){a=KT(u|0,h|0,12)|0;n=Ie;if((n|0)>-1|(n|0)==-1&a>>>0>4294967295){t=0;do{t=t+-1|0;a=KT(a|0,n|0,1)|0;n=Ie}while((n|0)>-1|(n|0)==-1&a>>>0>4294967295)}else t=0;u=KT(u|0,h|0,1-t|0)|0;s=Ie}else s=h&1048575|1048576;o=YT(r|0,l|0,u|0,s|0)|0;n=Ie;a=(n|0)>-1|(n|0)==-1&o>>>0>4294967295;i:do{if((f|0)>(t|0)){while(1){if(a)if((r|0)==(u|0)&(l|0)==(s|0))break;else{r=o;l=n}r=KT(r|0,l|0,1)|0;l=Ie;f=f+-1|0;o=YT(r|0,l|0,u|0,s|0)|0;n=Ie;a=(n|0)>-1|(n|0)==-1&o>>>0>4294967295;if((f|0)<=(t|0))break i}i=e*0.0;break e}}while(0);if(a)if((r|0)==(u|0)&(l|0)==(s|0)){i=e*0.0;break}else{l=n;r=o}if(l>>>0<1048576|(l|0)==1048576&r>>>0<0)do{r=KT(r|0,l|0,1)|0;l=Ie;f=f+-1|0}while(l>>>0<1048576|(l|0)==1048576&r>>>0<0);if((f|0)>0){h=WT(r|0,l|0,0,-1048576)|0;r=Ie;f=KT(f|0,0,52)|0;r=r|Ie;f=h|f}else{f=XT(r|0,l|0,1-f|0)|0;r=Ie}Xi[ee>>2]=f;Xi[ee+4>>2]=r|w;i=+Ae[ee>>3]}else k=3}while(0);if((k|0)==3){i=e*i;i=i/i}return+i}function uT(e){e=e|0;var i=0,r=0;do{if(e){if((Xi[e+76>>2]|0)<=-1){i=hT(e)|0;break}r=(NR(e)|0)==0;i=hT(e)|0;if(!r)sR(e)}else{if(!(Xi[23150]|0))i=0;else i=uT(Xi[23150]|0)|0;Qe(160564);e=Xi[40140]|0;if(e)do{if((Xi[e+76>>2]|0)>-1)r=NR(e)|0;else r=0;if((Xi[e+20>>2]|0)>>>0>(Xi[e+28>>2]|0)>>>0)i=hT(e)|0|i;if(r|0)sR(e);e=Xi[e+56>>2]|0}while((e|0)!=0);Xe(160564)}}while(0);return i|0}function hT(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0;i=e+20|0;a=e+28|0;if((Xi[i>>2]|0)>>>0>(Xi[a>>2]|0)>>>0?(Wz[Xi[e+36>>2]&7](e,0,0)|0,(Xi[i>>2]|0)==0):0)i=-1;else{n=e+4|0;r=Xi[n>>2]|0;f=e+8|0;l=Xi[f>>2]|0;if(r>>>0<l>>>0)Wz[Xi[e+40>>2]&7](e,r-l|0,1)|0;Xi[e+16>>2]=0;Xi[a>>2]=0;Xi[i>>2]=0;Xi[f>>2]=0;Xi[n>>2]=0;i=0}return i|0}function wT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Ue;Ue=Ue+16|0;l=f;Xi[l>>2]=r;r=ER(e,i,l)|0;Ue=f;return r|0}function kT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=Ue;Ue=Ue+32|0;l=a;Xi[l>>2]=0;Xi[l+4>>2]=0;Xi[l+8>>2]=0;Xi[l+12>>2]=0;Xi[l+16>>2]=0;Xi[l+20>>2]=0;Xi[l+24>>2]=0;Xi[l+28>>2]=0;f=Wi[i>>0]|0;do{if(!(f<<24>>24))i=0;else{if(!(Wi[i+1>>0]|0)){i=e;while(1)if((Wi[i>>0]|0)==f<<24>>24)i=i+1|0;else break;i=i-e|0;break}else{r=i;i=f}do{f=l+(((i&255)>>>5&255)<<2)|0;Xi[f>>2]=Xi[f>>2]|1<<(i&31);r=r+1|0;i=Wi[r>>0]|0}while(i<<24>>24!=0);r=Wi[e>>0]|0;e:do{if(!(r<<24>>24))i=e;else{i=e;do{if(!(Xi[l+(((r&255)>>>5&255)<<2)>>2]&1<<(r&31)))break e;i=i+1|0;r=Wi[i>>0]|0}while(r<<24>>24!=0)}}while(0);i=i-e|0}}while(0);Ue=a;return i|0}function bT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+1056|0;d=E+1024|0;v=E;n=Wi[i>>0]|0;do{if(n<<24>>24){c=GR(e,n<<24>>24)|0;if(c){a=Wi[i+1>>0]|0;if(a<<24>>24){r=c+1|0;o=Wi[r>>0]|0;if(o<<24>>24){l=Wi[i+2>>0]|0;if(!(l<<24>>24)){a=a&255|(n&255)<<8;e=o;f=qi[c>>0]<<8|o&255;while(1){f=f&65535;if((f|0)==(a|0))break;r=r+1|0;l=Wi[r>>0]|0;if(!(l<<24>>24)){e=0;break}else{e=l;f=l&255|f<<8}}e=e<<24>>24?r+-1|0:0;break}r=c+2|0;e=Wi[r>>0]|0;if(e<<24>>24){f=Wi[i+3>>0]|0;if(!(f<<24>>24)){l=(a&255)<<16|(n&255)<<24|(l&255)<<8;f=(e&255)<<8|(o&255)<<16|qi[c>>0]<<24;if((f|0)!=(l|0))do{r=r+1|0;e=Wi[r>>0]|0;f=(e&255|f)<<8}while(!(e<<24>>24==0|(f|0)==(l|0)));e=e<<24>>24?r+-2|0:0;break}r=c+3|0;t=Wi[r>>0]|0;if(t<<24>>24){if(!(Wi[i+4>>0]|0)){l=(a&255)<<16|(n&255)<<24|(l&255)<<8|f&255;e=(e&255)<<8|(o&255)<<16|t&255|qi[c>>0]<<24;if((e|0)==(l|0))e=t;else{f=e;do{r=r+1|0;e=Wi[r>>0]|0;f=e&255|f<<8}while(!(e<<24>>24==0|(f|0)==(l|0)))}e=e<<24>>24?r+-3|0:0;break}Xi[d>>2]=0;Xi[d+4>>2]=0;Xi[d+8>>2]=0;Xi[d+12>>2]=0;Xi[d+16>>2]=0;Xi[d+20>>2]=0;Xi[d+24>>2]=0;Xi[d+28>>2]=0;e=n;f=0;while(1){if(!(Wi[c+f>>0]|0)){e=0;break}r=d+(((e&255)>>>5&255)<<2)|0;Xi[r>>2]=Xi[r>>2]|1<<(e&31);r=f+1|0;Xi[v+((e&255)<<2)>>2]=r;e=Wi[i+r>>0]|0;if(!(e<<24>>24)){s=23;break}else f=r}e:do{if((s|0)==23){i:do{if(r>>>0>1){l=1;s=-1;e=0;r:while(1){o=1;while(1){f:while(1){a=1;while(1){n=Wi[i+(a+s)>>0]|0;t=Wi[i+l>>0]|0;if(n<<24>>24!=t<<24>>24){o=l;a=n;l=t;break f}if((a|0)==(o|0))break;a=a+1|0;l=a+e|0;if(l>>>0>=r>>>0){e=s;h=o;break r}}e=e+o|0;l=e+1|0;if(l>>>0>=r>>>0){e=s;h=o;break r}}n=o-s|0;if((a&255)<=(l&255))break;e=o+1|0;if(e>>>0<r>>>0){l=e;e=o;o=n}else{e=s;h=n;break r}}l=e+2|0;if(l>>>0>=r>>>0){h=1;break}else{s=e;e=e+1|0}}a=1;n=-1;l=0;while(1){t=l;l=1;while(1){u=t;r:while(1){t=1;while(1){s=Wi[i+(t+n)>>0]|0;o=Wi[i+a>>0]|0;if(s<<24>>24!=o<<24>>24){t=a;a=u;break r}if((t|0)==(l|0))break;t=t+1|0;a=t+u|0;if(a>>>0>=r>>>0){a=h;break i}}u=u+l|0;a=u+1|0;if(a>>>0>=r>>>0){a=h;break i}}l=t-n|0;if((s&255)>=(o&255)){l=a;break}a=t+1|0;if(a>>>0>=r>>>0){a=h;break i}}a=l+2|0;if(a>>>0>=r>>>0){n=l;a=h;l=1;break}else{n=l;l=l+1|0}}}else{e=-1;n=-1;a=1;l=1}}while(0);k=(n+1|0)>>>0>(e+1|0)>>>0;l=k?l:a;k=k?n:e;w=k+1|0;if(!(kR(i,i+l|0,w)|0))b=r-l|0;else{l=r-k+-1|0;b=0;l=(k>>>0>l>>>0?k:l)+1|0}s=r|63;u=(b|0)!=0;h=r-l|0;e=c;o=0;t=c;i:while(1){a=e;do{if((t-a|0)>>>0<r>>>0){n=OR(t,0,s)|0;if(n)if((n-a|0)>>>0<r>>>0){e=0;break e}else break;else{n=t+s|0;break}}else n=t}while(0);a=Wi[e+f>>0]|0;if(!(1<<(a&31)&Xi[d+(((a&255)>>>5&255)<<2)>>2])){e=e+r|0;o=0;t=n;continue}c=Xi[v+((a&255)<<2)>>2]|0;a=r-c|0;if((r|0)!=(c|0)){e=e+(u&(o|0)!=0&a>>>0<l>>>0?h:a)|0;o=0;t=n;continue}a=w>>>0>o>>>0?w:o;t=Wi[i+a>>0]|0;r:do{if(!(t<<24>>24))a=w;else{while(1){if(t<<24>>24!=(Wi[e+a>>0]|0))break;a=a+1|0;t=Wi[i+a>>0]|0;if(!(t<<24>>24)){a=w;break r}}e=e+(a-k)|0;o=0;t=n;continue i}}while(0);do{if(a>>>0<=o>>>0)break e;a=a+-1|0}while((Wi[i+a>>0]|0)==(Wi[e+a>>0]|0));e=e+l|0;o=b;t=n}}}while(0)}else e=0}else e=0}else e=0}else e=c}else e=0}}while(0);Ue=E;return e|0}function cT(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;l=Zi(r,i)|0;if((Xi[f+76>>2]|0)>-1){a=(NR(f)|0)==0;e=_R(e,l,f)|0;if(!a)sR(f)}else e=_R(e,l,f)|0;if((e|0)!=(l|0))r=(e>>>0)/(i>>>0)|0;return r|0}function dT(e,i){e=e|0;i=i|0;return(cT(e,wR(e)|0,1,i)|0)+-1|0}function vT(e,i){e=+e;i=+i;var r=0.0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0.0,h=0.0,w=0.0,k=0.0;e=+I(+e);Ae[ee>>3]=e;s=Xi[ee>>2]|0;a=Xi[ee+4>>2]|0;e=+I(+i);Ae[ee>>3]=e;f=Xi[ee>>2]|0;l=Xi[ee+4>>2]|0;n=a>>>0<l>>>0|(a|0)==(l|0)&s>>>0<f>>>0;o=n?f:s;t=n?l:a;f=n?s:f;l=n?a:l;a=XT(o|0,t|0,52)|0;n=XT(f|0,l|0,52)|0;Xi[ee>>2]=o;Xi[ee+4>>2]=t;e=+Ae[ee>>3];Xi[ee>>2]=f;Xi[ee+4>>2]=l;i=+Ae[ee>>3];do{if((n|0)!=2047){if(!((f|0)==0&(l|0)==0|(a|0)==2047)){if((a-n|0)>64){e=e+i;break}if(a>>>0<=1533)if(n>>>0<573){e=e*5260135901548373507240989.0e186;i=i*5260135901548373507240989.0e186;r=1.90109156629516e-211}else r=1.0;else{e=e*1.90109156629516e-211;i=i*1.90109156629516e-211;r=5260135901548373507240989.0e186}h=e*134217729.0;h=h+(e-h);u=e-h;e=e*e;k=i*134217729.0;k=k+(i-k);w=i-k;i=i*i;e=r*+R(+(e+(i+(w*w+(k*k-i+k*2.0*w)+(u*u+(h*h-e+h*2.0*u))))))}}else e=i}while(0);return+e}function ET(e){e=+e;var i=0.0,r=0.0,f=0;Ae[ee>>3]=e;r=(Xi[ee+4>>2]|0)<0?-.5:.5;i=+I(+e);Ae[ee>>3]=i;f=Xi[ee+4>>2]|0;do{if(f>>>0<1082535490){i=+ST(i);if(f>>>0>=1072693248){e=r*(i+i/(i+1.0));break}if(f>>>0>=1045430272)e=r*(i*2.0-i*i/(i+1.0))}else e=r*2.0*+_T(i)}while(0);return+e}function ST(e){e=+e;var i=0,r=0,f=0.0,l=0.0,a=0.0,n=0,t=0,o=0.0;Ae[ee>>3]=e;r=Xi[ee+4>>2]|0;i=r&2147483647;r=XT(Xi[ee>>2]|0,r|0,63)|0;do{if(i>>>0>1078159481){a=+I(+e);Ae[ee>>3]=a;n=Xi[ee+4>>2]|0;if(!(n>>>0>2146435072|(n|0)==2146435072&(Xi[ee>>2]|0)>>>0>0))if(!r)if(e>709.782712893384)e=e*8988465674311579538646525.0e283;else t=11;else e=-1.0}else{if(i>>>0<=1071001154)if(i>>>0<1016070144)break;else{a=0.0;n=0;t=14;break}if(i>>>0<1072734898)if(!r){f=e+-.6931471803691238;i=1;l=1.9082149292705877e-10;t=12;break}else{f=e+.6931471803691238;i=-1;l=-1.9082149292705877e-10;t=12;break}else t=11}}while(0);if((t|0)==11){i=~~(e*1.4426950408889634+(r|0?-.5:.5));l=+(i|0);f=e-l*.6931471803691238;l=l*1.9082149292705877e-10;t=12}if((t|0)==12){a=f-l;e=a;a=f-a-l;n=i;t=14}e:do{if((t|0)==14){l=e*.5;f=e*l;o=f*(f*(f*(f*(4.008217827329362e-06-f*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;l=3.0-l*o;l=f*((o-l)/(6.0-e*l));if(!n){e=e-(e*l-f);break}f=e*(l-a)-a-f;switch(n|0){case-1:{e=(e-f)*.5+-.5;break e}case 1:if(e<-.25){e=(f-(e+.5))*-2.0;break e}else{e=(e-f)*2.0+1.0;break e}default:{r=KT(n+1023|0,0,52)|0;t=Ie;Xi[ee>>2]=r;Xi[ee+4>>2]=t;l=+Ae[ee>>3];if(n>>>0>56){e=e-f+1.0;e=((n|0)==1024?e*2.0*8988465674311579538646525.0e283:l*e)+-1.0;break e}i=KT(1023-n|0,0,52)|0;r=Ie;if((n|0)<20){Xi[ee>>2]=i;Xi[ee+4>>2]=r;e=1.0-+Ae[ee>>3]+(e-f)}else{Xi[ee>>2]=i;Xi[ee+4>>2]=r;e=e-(+Ae[ee>>3]+f)+1.0}e=l*e;break e}}}}while(0);return+e}function _T(e){e=+e;return+(+Y(+(e+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function mT(e){e=+e;var i=0;e=+I(+e);Ae[ee>>3]=e;i=Xi[ee+4>>2]|0;do{if(i>>>0<1072049730)if(i>>>0<1045430272)e=1.0;else{e=+ST(e);e=e*e/((e+1.0)*2.0)+1.0}else if(i>>>0<1082535490){e=+Y(+e);e=(e+1.0/e)*.5;break}else{e=+_T(e);break}}while(0);return+e}function pT(e,i){e=e|0;i=i|0;return+ +FT(e,i,1)}function FT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+112|0;n=t;l=n;a=l+112|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(a|0));l=n+4|0;Xi[l>>2]=e;a=n+8|0;Xi[a>>2]=-1;Xi[n+44>>2]=e;Xi[n+76>>2]=-1;YR(n,0);f=+rT(n,r,1);r=(Xi[l>>2]|0)-(Xi[a>>2]|0)+(Xi[n+108>>2]|0)|0;if(i|0)Xi[i>>2]=r|0?e+r|0:e;Ue=t;return+f}function yT(e,i,r){e=e|0;i=i|0;r=r|0;e=VR(e,i,r,0,-2147483648)|0;return e|0}function OT(e,i,r){e=e|0;i=i|0;r=r|0;e=VR(e,i,r,-2147483648,0)|0;return e|0}function AT(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;e:do{if(!r)i=0;else{t=i;while(1){n=r>>>1;i=t+(Zi(n,f)|0)|0;a=eV[l&7](e,i)|0;if(!a)break e;if((r|0)==1){i=0;break e}a=(a|0)<0;r=a?n:r-n|0;if(!r){i=0;break}else t=a?t:i}}}while(0);return i|0}function gT(e){e=+e;var i=0,r=0;Ae[ee>>3]=e;i=Xi[ee+4>>2]|0;r=i&2146435072;if(!(r>>>0>1126170624|(r|0)==1126170624&0>0)){i=(i|0)<0;e=i?e+-4503599627370496.0+4503599627370496.0:e+4503599627370496.0+-4503599627370496.0;if(e==0.0)e=i?-0.0:0.0}return+e}function MT(e){e=+e;e=+gT(e);Ie=+I(e)>=1.0?e>0.0?~~+W(+L(e/4294967296.0),4294967295.0)>>>0:~~+K((e-+(~~e>>>0))/4294967296.0)>>>0:0;return~~e>>>0|0}function RT(e){e=+e;var i=0,r=0,f=0,l=0.0,a=0.0;Ae[ee>>3]=e;i=Xi[ee+4>>2]|0;r=i&2147483647;do{if(r>>>0>1083174911){i=(i|0)>-1|(i|0)==-1&(Xi[ee>>2]|0)>>>0>4294967295;if(i&r>>>0>1083179007){e=e*8988465674311579538646525.0e283;break}if(r>>>0<=2146435071)if(!(e<=-1075.0)|i){f=9;break}else{e=0.0;break}else{e=-1.0/e;break}}else if(r>>>0<1016070144)e=e+1.0;else f=9}while(0);if((f|0)==9){a=e+26388279066624.0;Ae[ee>>3]=a;f=(Xi[ee>>2]|0)+128|0;r=f<<1&510;l=+Ae[72328+(r<<3)>>3];e=e-(a+-26388279066624.0)-+Ae[72328+((r|1)<<3)>>3];e=+lT(l+l*e*(e*(e*(e*(e*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(f&-256|0)/256|0)}return+e}function TT(e){e=+e;var i=0,r=0;Ae[ee>>3]=e;r=Xi[ee+4>>2]|0;e=+I(+e);Ae[ee>>3]=e;i=Xi[ee+4>>2]|0;do{if(i>>>0>1071748074)if(i>>>0>1077149696){e=1.0-0.0/e;break}else{e=1.0-2.0/(+ST(e*2.0)+2.0);break}else{if(i>>>0>1070618798){e=+ST(e*2.0);e=e/(e+2.0);break}if(i>>>0>1048575){e=+ST(e*-2.0);e=-e/(e+2.0)}}}while(0);return+((r|0)<0?-e:e)}function NT(e){e=+e;var i=0,r=0,f=0,l=0,a=0;Ae[ee>>3]=e;i=Xi[ee>>2]|0;r=Xi[ee+4>>2]|0;a=XT(i|0,r|0,52)|0;a=(a&2047)+-1011|0;if((a|0)<=63?(l=(a|0)<12,f=XT(-1,-1,a|0)|0,f=l?-1:f,l=l?2147483647:Ie,!((f&i|0)==0&(l&r|0)==0)):0){Xi[ee>>2]=i&~f;Xi[ee+4>>2]=r&~l;e=+Ae[ee>>3]}return+e}function DT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Ue;Ue=Ue+16|0;l=f;Xi[l>>2]=e;Xi[l+4>>2]=i;Xi[l+8>>2]=r;e=aR(Ze(3,l|0)|0)|0;Ue=f;return e|0}function CT(e){e=e|0;var i=0;i=Ue;Ue=Ue+64|0;e=(PT(e,i)|0)==0&1;Ue=i;return e|0}function PT(e,i){e=e|0;i=i|0;var r=0,f=0;r=Ue;Ue=Ue+16|0;f=r;Xi[f>>2]=i;i=((CR(e,21505,f)|0)!=0)<<31>>31;Ue=r;return i|0}function LT(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0;do{if(e>>>0<245){k=e>>>0<11?16:e+11&-8;e=k>>>3;o=Xi[40147]|0;i=o>>>e;if(i&3|0){i=(i&1^1)+e|0;r=160628+(i<<1<<2)|0;f=r+8|0;l=Xi[f>>2]|0;a=l+8|0;n=Xi[a>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(Xi[40151]|0)>>>0)$e();e=n+12|0;if((Xi[e>>2]|0)==(l|0)){Xi[e>>2]=r;Xi[f>>2]=n;break}else $e()}else Xi[40147]=o&~(1<<i)}while(0);I=i<<3;Xi[l+4>>2]=I|3;I=l+I+4|0;Xi[I>>2]=Xi[I>>2]|1;I=a;return I|0}n=Xi[40149]|0;if(k>>>0>n>>>0){if(i|0){r=2<<e;r=i<<e&(r|0-r);r=(r&0-r)+-1|0;t=r>>>12&16;r=r>>>t;l=r>>>5&8;r=r>>>l;a=r>>>2&4;r=r>>>a;f=r>>>1&2;r=r>>>f;i=r>>>1&1;i=(l|t|a|f|i)+(r>>>i)|0;r=160628+(i<<1<<2)|0;f=r+8|0;a=Xi[f>>2]|0;t=a+8|0;l=Xi[t>>2]|0;do{if((r|0)!=(l|0)){if(l>>>0<(Xi[40151]|0)>>>0)$e();e=l+12|0;if((Xi[e>>2]|0)==(a|0)){Xi[e>>2]=r;Xi[f>>2]=l;s=Xi[40149]|0;break}else $e()}else{Xi[40147]=o&~(1<<i);s=n}}while(0);n=(i<<3)-k|0;Xi[a+4>>2]=k|3;f=a+k|0;Xi[f+4>>2]=n|1;Xi[f+n>>2]=n;if(s|0){l=Xi[40152]|0;i=s>>>3;r=160628+(i<<1<<2)|0;e=Xi[40147]|0;i=1<<i;if(e&i){e=r+8|0;i=Xi[e>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{u=e;h=i}}else{Xi[40147]=e|i;u=r+8|0;h=r}Xi[u>>2]=l;Xi[h+12>>2]=l;Xi[l+8>>2]=h;Xi[l+12>>2]=r}Xi[40149]=n;Xi[40152]=f;I=t;return I|0}e=Xi[40148]|0;if(e){r=(e&0-e)+-1|0;L=r>>>12&16;r=r>>>L;P=r>>>5&8;r=r>>>P;I=r>>>2&4;r=r>>>I;i=r>>>1&2;r=r>>>i;f=r>>>1&1;f=Xi[160892+((P|L|I|i|f)+(r>>>f)<<2)>>2]|0;r=(Xi[f+4>>2]&-8)-k|0;i=f;while(1){e=Xi[i+16>>2]|0;if(!e){e=Xi[i+20>>2]|0;if(!e){o=f;break}}i=(Xi[e+4>>2]&-8)-k|0;I=i>>>0<r>>>0;r=I?i:r;i=e;f=I?e:f}a=Xi[40151]|0;if(o>>>0<a>>>0)$e();t=o+k|0;if(o>>>0>=t>>>0)$e();n=Xi[o+24>>2]|0;f=Xi[o+12>>2]|0;do{if((f|0)==(o|0)){i=o+20|0;e=Xi[i>>2]|0;if(!e){i=o+16|0;e=Xi[i>>2]|0;if(!e){w=0;break}}while(1){f=e+20|0;l=Xi[f>>2]|0;if(l|0){e=l;i=f;continue}f=e+16|0;l=Xi[f>>2]|0;if(!l)break;else{e=l;i=f}}if(i>>>0<a>>>0)$e();else{Xi[i>>2]=0;w=e;break}}else{l=Xi[o+8>>2]|0;if(l>>>0<a>>>0)$e();e=l+12|0;if((Xi[e>>2]|0)!=(o|0))$e();i=f+8|0;if((Xi[i>>2]|0)==(o|0)){Xi[e>>2]=f;Xi[i>>2]=l;w=f;break}else $e()}}while(0);do{if(n|0){e=Xi[o+28>>2]|0;i=160892+(e<<2)|0;if((o|0)==(Xi[i>>2]|0)){Xi[i>>2]=w;if(!w){Xi[40148]=Xi[40148]&~(1<<e);break}}else{if(n>>>0<(Xi[40151]|0)>>>0)$e();e=n+16|0;if((Xi[e>>2]|0)==(o|0))Xi[e>>2]=w;else Xi[n+20>>2]=w;if(!w)break}i=Xi[40151]|0;if(w>>>0<i>>>0)$e();Xi[w+24>>2]=n;e=Xi[o+16>>2]|0;do{if(e|0)if(e>>>0<i>>>0)$e();else{Xi[w+16>>2]=e;Xi[e+24>>2]=w;break}}while(0);e=Xi[o+20>>2]|0;if(e|0)if(e>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[w+20>>2]=e;Xi[e+24>>2]=w;break}}}while(0);if(r>>>0<16){I=r+k|0;Xi[o+4>>2]=I|3;I=o+I+4|0;Xi[I>>2]=Xi[I>>2]|1}else{Xi[o+4>>2]=k|3;Xi[t+4>>2]=r|1;Xi[t+r>>2]=r;e=Xi[40149]|0;if(e|0){l=Xi[40152]|0;i=e>>>3;f=160628+(i<<1<<2)|0;e=Xi[40147]|0;i=1<<i;if(e&i){e=f+8|0;i=Xi[e>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{b=e;c=i}}else{Xi[40147]=e|i;b=f+8|0;c=f}Xi[b>>2]=l;Xi[c+12>>2]=l;Xi[l+8>>2]=c;Xi[l+12>>2]=f}Xi[40149]=r;Xi[40152]=t}I=o+8|0;return I|0}}}else if(e>>>0<=4294967231){e=e+11|0;k=e&-8;o=Xi[40148]|0;if(o){r=0-k|0;e=e>>>8;if(e)if(k>>>0>16777215)t=31;else{c=(e+1048320|0)>>>16&8;R=e<<c;b=(R+520192|0)>>>16&4;R=R<<b;t=(R+245760|0)>>>16&2;t=14-(b|c|t)+(R<<t>>>15)|0;t=k>>>(t+7|0)&1|t<<1}else t=0;i=Xi[160892+(t<<2)>>2]|0;e:do{if(!i){e=0;i=0;R=86}else{l=r;e=0;a=k<<((t|0)==31?0:25-(t>>>1)|0);n=i;i=0;while(1){f=Xi[n+4>>2]&-8;r=f-k|0;if(r>>>0<l>>>0)if((f|0)==(k|0)){e=n;i=n;R=90;break e}else i=n;else r=l;f=Xi[n+20>>2]|0;n=Xi[n+16+(a>>>31<<2)>>2]|0;e=(f|0)==0|(f|0)==(n|0)?e:f;f=(n|0)==0;if(f){R=86;break}else{l=r;a=a<<(f&1^1)}}}}while(0);if((R|0)==86){if((e|0)==0&(i|0)==0){e=2<<t;e=o&(e|0-e);if(!e)break;c=(e&0-e)+-1|0;h=c>>>12&16;c=c>>>h;u=c>>>5&8;c=c>>>u;w=c>>>2&4;c=c>>>w;b=c>>>1&2;c=c>>>b;e=c>>>1&1;e=Xi[160892+((u|h|w|b|e)+(c>>>e)<<2)>>2]|0}if(!e){t=r;o=i}else R=90}if((R|0)==90)while(1){R=0;c=(Xi[e+4>>2]&-8)-k|0;f=c>>>0<r>>>0;r=f?c:r;i=f?e:i;f=Xi[e+16>>2]|0;if(f|0){e=f;R=90;continue}e=Xi[e+20>>2]|0;if(!e){t=r;o=i;break}else R=90}if((o|0)!=0?t>>>0<((Xi[40149]|0)-k|0)>>>0:0){l=Xi[40151]|0;if(o>>>0<l>>>0)$e();n=o+k|0;if(o>>>0>=n>>>0)$e();a=Xi[o+24>>2]|0;r=Xi[o+12>>2]|0;do{if((r|0)==(o|0)){i=o+20|0;e=Xi[i>>2]|0;if(!e){i=o+16|0;e=Xi[i>>2]|0;if(!e){v=0;break}}while(1){r=e+20|0;f=Xi[r>>2]|0;if(f|0){e=f;i=r;continue}r=e+16|0;f=Xi[r>>2]|0;if(!f)break;else{e=f;i=r}}if(i>>>0<l>>>0)$e();else{Xi[i>>2]=0;v=e;break}}else{f=Xi[o+8>>2]|0;if(f>>>0<l>>>0)$e();e=f+12|0;if((Xi[e>>2]|0)!=(o|0))$e();i=r+8|0;if((Xi[i>>2]|0)==(o|0)){Xi[e>>2]=r;Xi[i>>2]=f;v=r;break}else $e()}}while(0);do{if(a|0){e=Xi[o+28>>2]|0;i=160892+(e<<2)|0;if((o|0)==(Xi[i>>2]|0)){Xi[i>>2]=v;if(!v){Xi[40148]=Xi[40148]&~(1<<e);break}}else{if(a>>>0<(Xi[40151]|0)>>>0)$e();e=a+16|0;if((Xi[e>>2]|0)==(o|0))Xi[e>>2]=v;else Xi[a+20>>2]=v;if(!v)break}i=Xi[40151]|0;if(v>>>0<i>>>0)$e();Xi[v+24>>2]=a;e=Xi[o+16>>2]|0;do{if(e|0)if(e>>>0<i>>>0)$e();else{Xi[v+16>>2]=e;Xi[e+24>>2]=v;break}}while(0);e=Xi[o+20>>2]|0;if(e|0)if(e>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[v+20>>2]=e;Xi[e+24>>2]=v;break}}}while(0);do{if(t>>>0>=16){Xi[o+4>>2]=k|3;Xi[n+4>>2]=t|1;Xi[n+t>>2]=t;e=t>>>3;if(t>>>0<256){r=160628+(e<<1<<2)|0;i=Xi[40147]|0;e=1<<e;if(i&e){e=r+8|0;i=Xi[e>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{S=e;_=i}}else{Xi[40147]=i|e;S=r+8|0;_=r}Xi[S>>2]=n;Xi[_+12>>2]=n;Xi[n+8>>2]=_;Xi[n+12>>2]=r;break}e=t>>>8;if(e)if(t>>>0>16777215)r=31;else{L=(e+1048320|0)>>>16&8;I=e<<L;P=(I+520192|0)>>>16&4;I=I<<P;r=(I+245760|0)>>>16&2;r=14-(P|L|r)+(I<<r>>>15)|0;r=t>>>(r+7|0)&1|r<<1}else r=0;f=160892+(r<<2)|0;Xi[n+28>>2]=r;e=n+16|0;Xi[e+4>>2]=0;Xi[e>>2]=0;e=Xi[40148]|0;i=1<<r;if(!(e&i)){Xi[40148]=e|i;Xi[f>>2]=n;Xi[n+24>>2]=f;Xi[n+12>>2]=n;Xi[n+8>>2]=n;break}l=t<<((r|0)==31?0:25-(r>>>1)|0);e=Xi[f>>2]|0;while(1){if((Xi[e+4>>2]&-8|0)==(t|0)){r=e;R=148;break}i=e+16+(l>>>31<<2)|0;r=Xi[i>>2]|0;if(!r){R=145;break}else{l=l<<1;e=r}}if((R|0)==145)if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[i>>2]=n;Xi[n+24>>2]=e;Xi[n+12>>2]=n;Xi[n+8>>2]=n;break}else if((R|0)==148){e=r+8|0;i=Xi[e>>2]|0;I=Xi[40151]|0;if(i>>>0>=I>>>0&r>>>0>=I>>>0){Xi[i+12>>2]=n;Xi[e>>2]=n;Xi[n+8>>2]=i;Xi[n+12>>2]=r;Xi[n+24>>2]=0;break}else $e()}}else{I=t+k|0;Xi[o+4>>2]=I|3;I=o+I+4|0;Xi[I>>2]=Xi[I>>2]|1}}while(0);I=o+8|0;return I|0}}}else k=-1}while(0);r=Xi[40149]|0;if(r>>>0>=k>>>0){e=r-k|0;i=Xi[40152]|0;if(e>>>0>15){I=i+k|0;Xi[40152]=I;Xi[40149]=e;Xi[I+4>>2]=e|1;Xi[I+e>>2]=e;Xi[i+4>>2]=k|3}else{Xi[40149]=0;Xi[40152]=0;Xi[i+4>>2]=r|3;I=i+r+4|0;Xi[I>>2]=Xi[I>>2]|1}I=i+8|0;return I|0}e=Xi[40150]|0;if(e>>>0>k>>>0){P=e-k|0;Xi[40150]=P;I=Xi[40153]|0;L=I+k|0;Xi[40153]=L;Xi[L+4>>2]=P|1;Xi[I+4>>2]=k|3;I=I+8|0;return I|0}do{if(!(Xi[40265]|0)){e=xe(30)|0;if(!(e+-1&e)){Xi[40267]=e;Xi[40266]=e;Xi[40268]=-1;Xi[40269]=-1;Xi[40270]=0;Xi[40258]=0;Xi[40265]=(ii(0)|0)&-16^1431655768;break}else $e()}}while(0);n=k+48|0;a=Xi[40267]|0;t=k+47|0;l=a+t|0;a=0-a|0;o=l&a;if(o>>>0<=k>>>0){I=0;return I|0}e=Xi[40257]|0;if(e|0?(S=Xi[40255]|0,_=S+o|0,_>>>0<=S>>>0|_>>>0>e>>>0):0){I=0;return I|0}e:do{if(!(Xi[40258]&4)){e=Xi[40153]|0;i:do{if(e){r=161036;while(1){i=Xi[r>>2]|0;if(i>>>0<=e>>>0?(d=r+4|0,(i+(Xi[d>>2]|0)|0)>>>0>e>>>0):0){f=r;r=d;break}r=Xi[r+8>>2]|0;if(!r){R=173;break i}}e=l-(Xi[40150]|0)&a;if(e>>>0<2147483647){i=Le(e|0)|0;if((i|0)==((Xi[f>>2]|0)+(Xi[r>>2]|0)|0)){if((i|0)!=(-1|0)){n=i;l=e;R=193;break e}}else R=183}}else R=173}while(0);do{if((R|0)==173?(E=Le(0)|0,(E|0)!=(-1|0)):0){e=E;i=Xi[40266]|0;r=i+-1|0;if(!(r&e))e=o;else e=o-e+(r+e&0-i)|0;i=Xi[40255]|0;r=i+e|0;if(e>>>0>k>>>0&e>>>0<2147483647){_=Xi[40257]|0;if(_|0?r>>>0<=i>>>0|r>>>0>_>>>0:0)break;i=Le(e|0)|0;if((i|0)==(E|0)){n=E;l=e;R=193;break e}else R=183}}}while(0);i:do{if((R|0)==183){r=0-e|0;do{if(n>>>0>e>>>0&(e>>>0<2147483647&(i|0)!=(-1|0))?(m=Xi[40267]|0,m=t-e+m&0-m,m>>>0<2147483647):0)if((Le(m|0)|0)==(-1|0)){Le(r|0)|0;break i}else{e=m+e|0;break}}while(0);if((i|0)!=(-1|0)){n=i;l=e;R=193;break e}}}while(0);Xi[40258]=Xi[40258]|4;R=190}else R=190}while(0);if((((R|0)==190?o>>>0<2147483647:0)?(p=Le(o|0)|0,F=Le(0)|0,p>>>0<F>>>0&((p|0)!=(-1|0)&(F|0)!=(-1|0))):0)?(y=F-p|0,y>>>0>(k+40|0)>>>0):0){n=p;l=y;R=193}if((R|0)==193){e=(Xi[40255]|0)+l|0;Xi[40255]=e;if(e>>>0>(Xi[40256]|0)>>>0)Xi[40256]=e;t=Xi[40153]|0;do{if(t){f=161036;do{e=Xi[f>>2]|0;i=f+4|0;r=Xi[i>>2]|0;if((n|0)==(e+r|0)){O=e;A=i;g=r;M=f;R=203;break}f=Xi[f+8>>2]|0}while((f|0)!=0);if(((R|0)==203?(Xi[M+12>>2]&8|0)==0:0)?t>>>0<n>>>0&t>>>0>=O>>>0:0){Xi[A>>2]=g+l;I=t+8|0;I=(I&7|0)==0?0:0-I&7;L=t+I|0;I=l-I+(Xi[40150]|0)|0;Xi[40153]=L;Xi[40150]=I;Xi[L+4>>2]=I|1;Xi[L+I+4>>2]=40;Xi[40154]=Xi[40269];break}e=Xi[40151]|0;if(n>>>0<e>>>0){Xi[40151]=n;o=n}else o=e;r=n+l|0;e=161036;while(1){if((Xi[e>>2]|0)==(r|0)){i=e;R=211;break}e=Xi[e+8>>2]|0;if(!e){i=161036;break}}if((R|0)==211)if(!(Xi[e+12>>2]&8)){Xi[i>>2]=n;u=e+4|0;Xi[u>>2]=(Xi[u>>2]|0)+l;u=n+8|0;u=n+((u&7|0)==0?0:0-u&7)|0;e=r+8|0;e=r+((e&7|0)==0?0:0-e&7)|0;s=u+k|0;a=e-u-k|0;Xi[u+4>>2]=k|3;do{if((e|0)!=(t|0)){if((e|0)==(Xi[40152]|0)){I=(Xi[40149]|0)+a|0;Xi[40149]=I;Xi[40152]=s;Xi[s+4>>2]=I|1;Xi[s+I>>2]=I;break}i=Xi[e+4>>2]|0;if((i&3|0)==1){t=i&-8;l=i>>>3;e:do{if(i>>>0>=256){n=Xi[e+24>>2]|0;f=Xi[e+12>>2]|0;do{if((f|0)==(e|0)){r=e+16|0;f=r+4|0;i=Xi[f>>2]|0;if(!i){i=Xi[r>>2]|0;if(!i){P=0;break}}else r=f;while(1){f=i+20|0;l=Xi[f>>2]|0;if(l|0){i=l;r=f;continue}f=i+16|0;l=Xi[f>>2]|0;if(!l)break;else{i=l;r=f}}if(r>>>0<o>>>0)$e();else{Xi[r>>2]=0;P=i;break}}else{l=Xi[e+8>>2]|0;if(l>>>0<o>>>0)$e();i=l+12|0;if((Xi[i>>2]|0)!=(e|0))$e();r=f+8|0;if((Xi[r>>2]|0)==(e|0)){Xi[i>>2]=f;Xi[r>>2]=l;P=f;break}else $e()}}while(0);if(!n)break;i=Xi[e+28>>2]|0;r=160892+(i<<2)|0;do{if((e|0)!=(Xi[r>>2]|0)){if(n>>>0<(Xi[40151]|0)>>>0)$e();i=n+16|0;if((Xi[i>>2]|0)==(e|0))Xi[i>>2]=P;else Xi[n+20>>2]=P;if(!P)break e}else{Xi[r>>2]=P;if(P|0)break;Xi[40148]=Xi[40148]&~(1<<i);break e}}while(0);f=Xi[40151]|0;if(P>>>0<f>>>0)$e();Xi[P+24>>2]=n;i=e+16|0;r=Xi[i>>2]|0;do{if(r|0)if(r>>>0<f>>>0)$e();else{Xi[P+16>>2]=r;Xi[r+24>>2]=P;break}}while(0);i=Xi[i+4>>2]|0;if(!i)break;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[P+20>>2]=i;Xi[i+24>>2]=P;break}}else{r=Xi[e+8>>2]|0;f=Xi[e+12>>2]|0;i=160628+(l<<1<<2)|0;do{if((r|0)!=(i|0)){if(r>>>0<o>>>0)$e();if((Xi[r+12>>2]|0)==(e|0))break;$e()}}while(0);if((f|0)==(r|0)){Xi[40147]=Xi[40147]&~(1<<l);break}do{if((f|0)==(i|0))N=f+8|0;else{if(f>>>0<o>>>0)$e();i=f+8|0;if((Xi[i>>2]|0)==(e|0)){N=i;break}$e()}}while(0);Xi[r+12>>2]=f;Xi[N>>2]=r}}while(0);e=e+t|0;a=t+a|0}e=e+4|0;Xi[e>>2]=Xi[e>>2]&-2;Xi[s+4>>2]=a|1;Xi[s+a>>2]=a;e=a>>>3;if(a>>>0<256){r=160628+(e<<1<<2)|0;i=Xi[40147]|0;e=1<<e;do{if(!(i&e)){Xi[40147]=i|e;L=r+8|0;I=r}else{e=r+8|0;i=Xi[e>>2]|0;if(i>>>0>=(Xi[40151]|0)>>>0){L=e;I=i;break}$e()}}while(0);Xi[L>>2]=s;Xi[I+12>>2]=s;Xi[s+8>>2]=I;Xi[s+12>>2]=r;break}e=a>>>8;do{if(!e)r=0;else{if(a>>>0>16777215){r=31;break}L=(e+1048320|0)>>>16&8;I=e<<L;P=(I+520192|0)>>>16&4;I=I<<P;r=(I+245760|0)>>>16&2;r=14-(P|L|r)+(I<<r>>>15)|0;r=a>>>(r+7|0)&1|r<<1}}while(0);f=160892+(r<<2)|0;Xi[s+28>>2]=r;e=s+16|0;Xi[e+4>>2]=0;Xi[e>>2]=0;e=Xi[40148]|0;i=1<<r;if(!(e&i)){Xi[40148]=e|i;Xi[f>>2]=s;Xi[s+24>>2]=f;Xi[s+12>>2]=s;Xi[s+8>>2]=s;break}l=a<<((r|0)==31?0:25-(r>>>1)|0);e=Xi[f>>2]|0;while(1){if((Xi[e+4>>2]&-8|0)==(a|0)){r=e;R=281;break}i=e+16+(l>>>31<<2)|0;r=Xi[i>>2]|0;if(!r){R=278;break}else{l=l<<1;e=r}}if((R|0)==278)if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[i>>2]=s;Xi[s+24>>2]=e;Xi[s+12>>2]=s;Xi[s+8>>2]=s;break}else if((R|0)==281){e=r+8|0;i=Xi[e>>2]|0;I=Xi[40151]|0;if(i>>>0>=I>>>0&r>>>0>=I>>>0){Xi[i+12>>2]=s;Xi[e>>2]=s;Xi[s+8>>2]=i;Xi[s+12>>2]=r;Xi[s+24>>2]=0;break}else $e()}}else{I=(Xi[40150]|0)+a|0;Xi[40150]=I;Xi[40153]=s;Xi[s+4>>2]=I|1}}while(0);I=u+8|0;return I|0}else i=161036;while(1){e=Xi[i>>2]|0;if(e>>>0<=t>>>0?(T=e+(Xi[i+4>>2]|0)|0,T>>>0>t>>>0):0){i=T;break}i=Xi[i+8>>2]|0}a=i+-47|0;r=a+8|0;r=a+((r&7|0)==0?0:0-r&7)|0;a=t+16|0;r=r>>>0<a>>>0?t:r;e=r+8|0;f=n+8|0;f=(f&7|0)==0?0:0-f&7;I=n+f|0;f=l+-40-f|0;Xi[40153]=I;Xi[40150]=f;Xi[I+4>>2]=f|1;Xi[I+f+4>>2]=40;Xi[40154]=Xi[40269];f=r+4|0;Xi[f>>2]=27;Xi[e>>2]=Xi[40259];Xi[e+4>>2]=Xi[40260];Xi[e+8>>2]=Xi[40261];Xi[e+12>>2]=Xi[40262];Xi[40259]=n;Xi[40260]=l;Xi[40262]=0;Xi[40261]=e;e=r+24|0;do{e=e+4|0;Xi[e>>2]=7}while((e+4|0)>>>0<i>>>0);if((r|0)!=(t|0)){n=r-t|0;Xi[f>>2]=Xi[f>>2]&-2;Xi[t+4>>2]=n|1;Xi[r>>2]=n;e=n>>>3;if(n>>>0<256){r=160628+(e<<1<<2)|0;i=Xi[40147]|0;e=1<<e;if(i&e){e=r+8|0;i=Xi[e>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{D=e;C=i}}else{Xi[40147]=i|e;D=r+8|0;C=r}Xi[D>>2]=t;Xi[C+12>>2]=t;Xi[t+8>>2]=C;Xi[t+12>>2]=r;break}e=n>>>8;if(e)if(n>>>0>16777215)r=31;else{L=(e+1048320|0)>>>16&8;I=e<<L;P=(I+520192|0)>>>16&4;I=I<<P;r=(I+245760|0)>>>16&2;r=14-(P|L|r)+(I<<r>>>15)|0;r=n>>>(r+7|0)&1|r<<1}else r=0;l=160892+(r<<2)|0;Xi[t+28>>2]=r;Xi[t+20>>2]=0;Xi[a>>2]=0;e=Xi[40148]|0;i=1<<r;if(!(e&i)){Xi[40148]=e|i;Xi[l>>2]=t;Xi[t+24>>2]=l;Xi[t+12>>2]=t;Xi[t+8>>2]=t;break}f=n<<((r|0)==31?0:25-(r>>>1)|0);e=Xi[l>>2]|0;while(1){if((Xi[e+4>>2]&-8|0)==(n|0)){r=e;R=307;break}i=e+16+(f>>>31<<2)|0;r=Xi[i>>2]|0;if(!r){R=304;break}else{f=f<<1;e=r}}if((R|0)==304)if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[i>>2]=t;Xi[t+24>>2]=e;Xi[t+12>>2]=t;Xi[t+8>>2]=t;break}else if((R|0)==307){e=r+8|0;i=Xi[e>>2]|0;I=Xi[40151]|0;if(i>>>0>=I>>>0&r>>>0>=I>>>0){Xi[i+12>>2]=t;Xi[e>>2]=t;Xi[t+8>>2]=i;Xi[t+12>>2]=r;Xi[t+24>>2]=0;break}else $e()}}}else{I=Xi[40151]|0;if((I|0)==0|n>>>0<I>>>0)Xi[40151]=n;Xi[40259]=n;Xi[40260]=l;Xi[40262]=0;Xi[40156]=Xi[40265];Xi[40155]=-1;e=0;do{I=160628+(e<<1<<2)|0;Xi[I+12>>2]=I;Xi[I+8>>2]=I;e=e+1|0}while((e|0)!=32);I=n+8|0;I=(I&7|0)==0?0:0-I&7;L=n+I|0;I=l+-40-I|0;Xi[40153]=L;Xi[40150]=I;Xi[L+4>>2]=I|1;Xi[L+I+4>>2]=40;Xi[40154]=Xi[40269]}}while(0);e=Xi[40150]|0;if(e>>>0>k>>>0){P=e-k|0;Xi[40150]=P;I=Xi[40153]|0;L=I+k|0;Xi[40153]=L;Xi[L+4>>2]=P|1;Xi[I+4>>2]=k|3;I=I+8|0;return I|0}}Xi[(nR()|0)>>2]=12;I=0;return I|0}function IT(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;if(!e)return;r=e+-8|0;n=Xi[40151]|0;if(r>>>0<n>>>0)$e();e=Xi[e+-4>>2]|0;i=e&3;if((i|0)==1)$e();f=e&-8;h=r+f|0;do{if(!(e&1)){e=Xi[r>>2]|0;if(!i)return;s=r+(0-e)|0;o=e+f|0;if(s>>>0<n>>>0)$e();if((s|0)==(Xi[40152]|0)){e=h+4|0;i=Xi[e>>2]|0;if((i&3|0)!=3){c=s;a=o;break}Xi[40149]=o;Xi[e>>2]=i&-2;Xi[s+4>>2]=o|1;Xi[s+o>>2]=o;return}f=e>>>3;if(e>>>0<256){i=Xi[s+8>>2]|0;r=Xi[s+12>>2]|0;e=160628+(f<<1<<2)|0;if((i|0)!=(e|0)){if(i>>>0<n>>>0)$e();if((Xi[i+12>>2]|0)!=(s|0))$e()}if((r|0)==(i|0)){Xi[40147]=Xi[40147]&~(1<<f);c=s;a=o;break}if((r|0)!=(e|0)){if(r>>>0<n>>>0)$e();e=r+8|0;if((Xi[e>>2]|0)==(s|0))l=e;else $e()}else l=r+8|0;Xi[i+12>>2]=r;Xi[l>>2]=i;c=s;a=o;break}l=Xi[s+24>>2]|0;r=Xi[s+12>>2]|0;do{if((r|0)==(s|0)){i=s+16|0;r=i+4|0;e=Xi[r>>2]|0;if(!e){e=Xi[i>>2]|0;if(!e){t=0;break}}else i=r;while(1){r=e+20|0;f=Xi[r>>2]|0;if(f|0){e=f;i=r;continue}r=e+16|0;f=Xi[r>>2]|0;if(!f)break;else{e=f;i=r}}if(i>>>0<n>>>0)$e();else{Xi[i>>2]=0;t=e;break}}else{f=Xi[s+8>>2]|0;if(f>>>0<n>>>0)$e();e=f+12|0;if((Xi[e>>2]|0)!=(s|0))$e();i=r+8|0;if((Xi[i>>2]|0)==(s|0)){Xi[e>>2]=r;Xi[i>>2]=f;t=r;break}else $e()}}while(0);if(l){e=Xi[s+28>>2]|0;i=160892+(e<<2)|0;if((s|0)==(Xi[i>>2]|0)){Xi[i>>2]=t;if(!t){Xi[40148]=Xi[40148]&~(1<<e);c=s;a=o;break}}else{if(l>>>0<(Xi[40151]|0)>>>0)$e();e=l+16|0;if((Xi[e>>2]|0)==(s|0))Xi[e>>2]=t;else Xi[l+20>>2]=t;if(!t){c=s;a=o;break}}r=Xi[40151]|0;if(t>>>0<r>>>0)$e();Xi[t+24>>2]=l;e=s+16|0;i=Xi[e>>2]|0;do{if(i|0)if(i>>>0<r>>>0)$e();else{Xi[t+16>>2]=i;Xi[i+24>>2]=t;break}}while(0);e=Xi[e+4>>2]|0;if(e)if(e>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[t+20>>2]=e;Xi[e+24>>2]=t;c=s;a=o;break}else{c=s;a=o}}else{c=s;a=o}}else{c=r;a=f}}while(0);if(c>>>0>=h>>>0)$e();e=h+4|0;i=Xi[e>>2]|0;if(!(i&1))$e();if(!(i&2)){if((h|0)==(Xi[40153]|0)){b=(Xi[40150]|0)+a|0;Xi[40150]=b;Xi[40153]=c;Xi[c+4>>2]=b|1;if((c|0)!=(Xi[40152]|0))return;Xi[40152]=0;Xi[40149]=0;return}if((h|0)==(Xi[40152]|0)){b=(Xi[40149]|0)+a|0;Xi[40149]=b;Xi[40152]=c;Xi[c+4>>2]=b|1;Xi[c+b>>2]=b;return}a=(i&-8)+a|0;f=i>>>3;do{if(i>>>0>=256){l=Xi[h+24>>2]|0;e=Xi[h+12>>2]|0;do{if((e|0)==(h|0)){i=h+16|0;r=i+4|0;e=Xi[r>>2]|0;if(!e){e=Xi[i>>2]|0;if(!e){w=0;break}}else i=r;while(1){r=e+20|0;f=Xi[r>>2]|0;if(f|0){e=f;i=r;continue}r=e+16|0;f=Xi[r>>2]|0;if(!f)break;else{e=f;i=r}}if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[i>>2]=0;w=e;break}}else{i=Xi[h+8>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();r=i+12|0;if((Xi[r>>2]|0)!=(h|0))$e();f=e+8|0;if((Xi[f>>2]|0)==(h|0)){Xi[r>>2]=e;Xi[f>>2]=i;w=e;break}else $e()}}while(0);if(l|0){e=Xi[h+28>>2]|0;i=160892+(e<<2)|0;if((h|0)==(Xi[i>>2]|0)){Xi[i>>2]=w;if(!w){Xi[40148]=Xi[40148]&~(1<<e);break}}else{if(l>>>0<(Xi[40151]|0)>>>0)$e();e=l+16|0;if((Xi[e>>2]|0)==(h|0))Xi[e>>2]=w;else Xi[l+20>>2]=w;if(!w)break}r=Xi[40151]|0;if(w>>>0<r>>>0)$e();Xi[w+24>>2]=l;e=h+16|0;i=Xi[e>>2]|0;do{if(i|0)if(i>>>0<r>>>0)$e();else{Xi[w+16>>2]=i;Xi[i+24>>2]=w;break}}while(0);e=Xi[e+4>>2]|0;if(e|0)if(e>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[w+20>>2]=e;Xi[e+24>>2]=w;break}}}else{i=Xi[h+8>>2]|0;r=Xi[h+12>>2]|0;e=160628+(f<<1<<2)|0;if((i|0)!=(e|0)){if(i>>>0<(Xi[40151]|0)>>>0)$e();if((Xi[i+12>>2]|0)!=(h|0))$e()}if((r|0)==(i|0)){Xi[40147]=Xi[40147]&~(1<<f);break}if((r|0)!=(e|0)){if(r>>>0<(Xi[40151]|0)>>>0)$e();e=r+8|0;if((Xi[e>>2]|0)==(h|0))u=e;else $e()}else u=r+8|0;Xi[i+12>>2]=r;Xi[u>>2]=i}}while(0);Xi[c+4>>2]=a|1;Xi[c+a>>2]=a;if((c|0)==(Xi[40152]|0)){Xi[40149]=a;return}}else{Xi[e>>2]=i&-2;Xi[c+4>>2]=a|1;Xi[c+a>>2]=a}e=a>>>3;if(a>>>0<256){r=160628+(e<<1<<2)|0;i=Xi[40147]|0;e=1<<e;if(i&e){e=r+8|0;i=Xi[e>>2]|0;if(i>>>0<(Xi[40151]|0)>>>0)$e();else{k=e;b=i}}else{Xi[40147]=i|e;k=r+8|0;b=r}Xi[k>>2]=c;Xi[b+12>>2]=c;Xi[c+8>>2]=b;Xi[c+12>>2]=r;return}e=a>>>8;if(e)if(a>>>0>16777215)r=31;else{k=(e+1048320|0)>>>16&8;b=e<<k;w=(b+520192|0)>>>16&4;b=b<<w;r=(b+245760|0)>>>16&2;r=14-(w|k|r)+(b<<r>>>15)|0;r=a>>>(r+7|0)&1|r<<1}else r=0;f=160892+(r<<2)|0;Xi[c+28>>2]=r;Xi[c+20>>2]=0;Xi[c+16>>2]=0;e=Xi[40148]|0;i=1<<r;do{if(e&i){l=a<<((r|0)==31?0:25-(r>>>1)|0);e=Xi[f>>2]|0;while(1){if((Xi[e+4>>2]&-8|0)==(a|0)){r=e;f=130;break}i=e+16+(l>>>31<<2)|0;r=Xi[i>>2]|0;if(!r){f=127;break}else{l=l<<1;e=r}}if((f|0)==127)if(i>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[i>>2]=c;Xi[c+24>>2]=e;Xi[c+12>>2]=c;Xi[c+8>>2]=c;break}else if((f|0)==130){e=r+8|0;i=Xi[e>>2]|0;b=Xi[40151]|0;if(i>>>0>=b>>>0&r>>>0>=b>>>0){Xi[i+12>>2]=c;Xi[e>>2]=c;Xi[c+8>>2]=i;Xi[c+12>>2]=r;Xi[c+24>>2]=0;break}else $e()}}else{Xi[40148]=e|i;Xi[f>>2]=c;Xi[c+24>>2]=f;Xi[c+12>>2]=c;Xi[c+8>>2]=c}}while(0);c=(Xi[40155]|0)+-1|0;Xi[40155]=c;if(!c)e=161044;else return;while(1){e=Xi[e>>2]|0;if(!e)break;else e=e+8|0}Xi[40155]=-1;return}function HT(e,i){e=e|0;i=i|0;var r=0,f=0;if(!e){e=LT(i)|0;return e|0}if(i>>>0>4294967231){Xi[(nR()|0)>>2]=12;e=0;return e|0}r=BT(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(r|0){e=r+8|0;return e|0}r=LT(i)|0;if(!r){e=0;return e|0}f=Xi[e+-4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;qT(r|0,e|0,(f>>>0<i>>>0?f:i)|0)|0;IT(e);e=r;return e|0}function BT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;w=e+4|0;k=Xi[w>>2]|0;r=k&-8;s=e+r|0;t=Xi[40151]|0;f=k&3;if(!((f|0)!=1&e>>>0>=t>>>0&e>>>0<s>>>0))$e();l=Xi[s+4>>2]|0;if(!(l&1))$e();if(!f){if(i>>>0<256){e=0;return e|0}if(r>>>0>=(i+4|0)>>>0?(r-i|0)>>>0<=Xi[40267]<<1>>>0:0)return e|0;e=0;return e|0}if(r>>>0>=i>>>0){r=r-i|0;if(r>>>0<=15)return e|0;h=e+i|0;Xi[w>>2]=k&1|i|2;Xi[h+4>>2]=r|3;i=h+r+4|0;Xi[i>>2]=Xi[i>>2]|1;UT(h,r);return e|0}if((s|0)==(Xi[40153]|0)){r=(Xi[40150]|0)+r|0;if(r>>>0<=i>>>0){e=0;return e|0}h=r-i|0;u=e+i|0;Xi[w>>2]=k&1|i|2;Xi[u+4>>2]=h|1;Xi[40153]=u;Xi[40150]=h;return e|0}if((s|0)==(Xi[40152]|0)){f=(Xi[40149]|0)+r|0;if(f>>>0<i>>>0){e=0;return e|0}r=f-i|0;if(r>>>0>15){f=e+i|0;h=f+r|0;Xi[w>>2]=k&1|i|2;Xi[f+4>>2]=r|1;Xi[h>>2]=r;i=h+4|0;Xi[i>>2]=Xi[i>>2]&-2}else{Xi[w>>2]=k&1|f|2;f=e+f+4|0;Xi[f>>2]=Xi[f>>2]|1;f=0;r=0}Xi[40149]=r;Xi[40152]=f;return e|0}if(l&2|0){e=0;return e|0}u=(l&-8)+r|0;if(u>>>0<i>>>0){e=0;return e|0}h=u-i|0;a=l>>>3;do{if(l>>>0>=256){n=Xi[s+24>>2]|0;l=Xi[s+12>>2]|0;do{if((l|0)==(s|0)){f=s+16|0;l=f+4|0;r=Xi[l>>2]|0;if(!r){r=Xi[f>>2]|0;if(!r){o=0;break}}else f=l;while(1){l=r+20|0;a=Xi[l>>2]|0;if(a|0){r=a;f=l;continue}l=r+16|0;a=Xi[l>>2]|0;if(!a)break;else{r=a;f=l}}if(f>>>0<t>>>0)$e();else{Xi[f>>2]=0;o=r;break}}else{a=Xi[s+8>>2]|0;if(a>>>0<t>>>0)$e();r=a+12|0;if((Xi[r>>2]|0)!=(s|0))$e();f=l+8|0;if((Xi[f>>2]|0)==(s|0)){Xi[r>>2]=l;Xi[f>>2]=a;o=l;break}else $e()}}while(0);if(n|0){r=Xi[s+28>>2]|0;f=160892+(r<<2)|0;if((s|0)==(Xi[f>>2]|0)){Xi[f>>2]=o;if(!o){Xi[40148]=Xi[40148]&~(1<<r);break}}else{if(n>>>0<(Xi[40151]|0)>>>0)$e();r=n+16|0;if((Xi[r>>2]|0)==(s|0))Xi[r>>2]=o;else Xi[n+20>>2]=o;if(!o)break}l=Xi[40151]|0;if(o>>>0<l>>>0)$e();Xi[o+24>>2]=n;r=s+16|0;f=Xi[r>>2]|0;do{if(f|0)if(f>>>0<l>>>0)$e();else{Xi[o+16>>2]=f;Xi[f+24>>2]=o;break}}while(0);r=Xi[r+4>>2]|0;if(r|0)if(r>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[o+20>>2]=r;Xi[r+24>>2]=o;break}}}else{f=Xi[s+8>>2]|0;l=Xi[s+12>>2]|0;r=160628+(a<<1<<2)|0;if((f|0)!=(r|0)){if(f>>>0<t>>>0)$e();if((Xi[f+12>>2]|0)!=(s|0))$e()}if((l|0)==(f|0)){Xi[40147]=Xi[40147]&~(1<<a);break}if((l|0)!=(r|0)){if(l>>>0<t>>>0)$e();r=l+8|0;if((Xi[r>>2]|0)==(s|0))n=r;else $e()}else n=l+8|0;Xi[f+12>>2]=l;Xi[n>>2]=f}}while(0);if(h>>>0<16){Xi[w>>2]=u|k&1|2;i=e+u+4|0;Xi[i>>2]=Xi[i>>2]|1;return e|0}else{u=e+i|0;Xi[w>>2]=k&1|i|2;Xi[u+4>>2]=h|3;i=u+h+4|0;Xi[i>>2]=Xi[i>>2]|1;UT(u,h);return e|0}return 0}function UT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;k=e+i|0;r=Xi[e+4>>2]|0;do{if(!(r&1)){l=Xi[e>>2]|0;if(!(r&3))return;u=e+(0-l)|0;s=l+i|0;t=Xi[40151]|0;if(u>>>0<t>>>0)$e();if((u|0)==(Xi[40152]|0)){e=k+4|0;r=Xi[e>>2]|0;if((r&3|0)!=3){d=u;a=s;break}Xi[40149]=s;Xi[e>>2]=r&-2;Xi[u+4>>2]=s|1;Xi[u+s>>2]=s;return}f=l>>>3;if(l>>>0<256){e=Xi[u+8>>2]|0;i=Xi[u+12>>2]|0;r=160628+(f<<1<<2)|0;if((e|0)!=(r|0)){if(e>>>0<t>>>0)$e();if((Xi[e+12>>2]|0)!=(u|0))$e()}if((i|0)==(e|0)){Xi[40147]=Xi[40147]&~(1<<f);d=u;a=s;break}if((i|0)!=(r|0)){if(i>>>0<t>>>0)$e();r=i+8|0;if((Xi[r>>2]|0)==(u|0))n=r;else $e()}else n=i+8|0;Xi[e+12>>2]=i;Xi[n>>2]=e;d=u;a=s;break}l=Xi[u+24>>2]|0;i=Xi[u+12>>2]|0;do{if((i|0)==(u|0)){e=u+16|0;i=e+4|0;r=Xi[i>>2]|0;if(!r){r=Xi[e>>2]|0;if(!r){o=0;break}}else e=i;while(1){i=r+20|0;f=Xi[i>>2]|0;if(f|0){r=f;e=i;continue}i=r+16|0;f=Xi[i>>2]|0;if(!f)break;else{r=f;e=i}}if(e>>>0<t>>>0)$e();else{Xi[e>>2]=0;o=r;break}}else{f=Xi[u+8>>2]|0;if(f>>>0<t>>>0)$e();r=f+12|0;if((Xi[r>>2]|0)!=(u|0))$e();e=i+8|0;if((Xi[e>>2]|0)==(u|0)){Xi[r>>2]=i;Xi[e>>2]=f;o=i;break}else $e()}}while(0);if(l){r=Xi[u+28>>2]|0;e=160892+(r<<2)|0;if((u|0)==(Xi[e>>2]|0)){Xi[e>>2]=o;if(!o){Xi[40148]=Xi[40148]&~(1<<r);d=u;a=s;break}}else{if(l>>>0<(Xi[40151]|0)>>>0)$e();r=l+16|0;if((Xi[r>>2]|0)==(u|0))Xi[r>>2]=o;else Xi[l+20>>2]=o;if(!o){d=u;a=s;break}}i=Xi[40151]|0;if(o>>>0<i>>>0)$e();Xi[o+24>>2]=l;r=u+16|0;e=Xi[r>>2]|0;do{if(e|0)if(e>>>0<i>>>0)$e();else{Xi[o+16>>2]=e;Xi[e+24>>2]=o;break}}while(0);r=Xi[r+4>>2]|0;if(r)if(r>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[o+20>>2]=r;Xi[r+24>>2]=o;d=u;a=s;break}else{d=u;a=s}}else{d=u;a=s}}else{d=e;a=i}}while(0);n=Xi[40151]|0;if(k>>>0<n>>>0)$e();r=k+4|0;e=Xi[r>>2]|0;if(!(e&2)){if((k|0)==(Xi[40153]|0)){c=(Xi[40150]|0)+a|0;Xi[40150]=c;Xi[40153]=d;Xi[d+4>>2]=c|1;if((d|0)!=(Xi[40152]|0))return;Xi[40152]=0;Xi[40149]=0;return}if((k|0)==(Xi[40152]|0)){c=(Xi[40149]|0)+a|0;Xi[40149]=c;Xi[40152]=d;Xi[d+4>>2]=c|1;Xi[d+c>>2]=c;return}a=(e&-8)+a|0;f=e>>>3;do{if(e>>>0>=256){l=Xi[k+24>>2]|0;i=Xi[k+12>>2]|0;do{if((i|0)==(k|0)){e=k+16|0;i=e+4|0;r=Xi[i>>2]|0;if(!r){r=Xi[e>>2]|0;if(!r){w=0;break}}else e=i;while(1){i=r+20|0;f=Xi[i>>2]|0;if(f|0){r=f;e=i;continue}i=r+16|0;f=Xi[i>>2]|0;if(!f)break;else{r=f;e=i}}if(e>>>0<n>>>0)$e();else{Xi[e>>2]=0;w=r;break}}else{f=Xi[k+8>>2]|0;if(f>>>0<n>>>0)$e();r=f+12|0;if((Xi[r>>2]|0)!=(k|0))$e();e=i+8|0;if((Xi[e>>2]|0)==(k|0)){Xi[r>>2]=i;Xi[e>>2]=f;w=i;break}else $e()}}while(0);if(l|0){r=Xi[k+28>>2]|0;e=160892+(r<<2)|0;if((k|0)==(Xi[e>>2]|0)){Xi[e>>2]=w;if(!w){Xi[40148]=Xi[40148]&~(1<<r);break}}else{if(l>>>0<(Xi[40151]|0)>>>0)$e();r=l+16|0;if((Xi[r>>2]|0)==(k|0))Xi[r>>2]=w;else Xi[l+20>>2]=w;if(!w)break}i=Xi[40151]|0;if(w>>>0<i>>>0)$e();Xi[w+24>>2]=l;r=k+16|0;e=Xi[r>>2]|0;do{if(e|0)if(e>>>0<i>>>0)$e();else{Xi[w+16>>2]=e;Xi[e+24>>2]=w;break}}while(0);r=Xi[r+4>>2]|0;if(r|0)if(r>>>0<(Xi[40151]|0)>>>0)$e();else{Xi[w+20>>2]=r;Xi[r+24>>2]=w;break}}}else{e=Xi[k+8>>2]|0;i=Xi[k+12>>2]|0;r=160628+(f<<1<<2)|0;if((e|0)!=(r|0)){if(e>>>0<n>>>0)$e();if((Xi[e+12>>2]|0)!=(k|0))$e()}if((i|0)==(e|0)){Xi[40147]=Xi[40147]&~(1<<f);break}if((i|0)!=(r|0)){if(i>>>0<n>>>0)$e();r=i+8|0;if((Xi[r>>2]|0)==(k|0))h=r;else $e()}else h=i+8|0;Xi[e+12>>2]=i;Xi[h>>2]=e}}while(0);Xi[d+4>>2]=a|1;Xi[d+a>>2]=a;if((d|0)==(Xi[40152]|0)){Xi[40149]=a;return}}else{Xi[r>>2]=e&-2;Xi[d+4>>2]=a|1;Xi[d+a>>2]=a}r=a>>>3;if(a>>>0<256){i=160628+(r<<1<<2)|0;e=Xi[40147]|0;r=1<<r;if(e&r){r=i+8|0;e=Xi[r>>2]|0;if(e>>>0<(Xi[40151]|0)>>>0)$e();else{b=r;c=e}}else{Xi[40147]=e|r;b=i+8|0;c=i}Xi[b>>2]=d;Xi[c+12>>2]=d;Xi[d+8>>2]=c;Xi[d+12>>2]=i;return}r=a>>>8;if(r)if(a>>>0>16777215)i=31;else{b=(r+1048320|0)>>>16&8;c=r<<b;k=(c+520192|0)>>>16&4;c=c<<k;i=(c+245760|0)>>>16&2;i=14-(k|b|i)+(c<<i>>>15)|0;i=a>>>(i+7|0)&1|i<<1}else i=0;f=160892+(i<<2)|0;Xi[d+28>>2]=i;Xi[d+20>>2]=0;Xi[d+16>>2]=0;r=Xi[40148]|0;e=1<<i;if(!(r&e)){Xi[40148]=r|e;Xi[f>>2]=d;Xi[d+24>>2]=f;Xi[d+12>>2]=d;Xi[d+8>>2]=d;return}l=a<<((i|0)==31?0:25-(i>>>1)|0);r=Xi[f>>2]|0;while(1){if((Xi[r+4>>2]&-8|0)==(a|0)){i=r;f=127;break}e=r+16+(l>>>31<<2)|0;i=Xi[e>>2]|0;if(!i){f=124;break}else{l=l<<1;r=i}}if((f|0)==124){if(e>>>0<(Xi[40151]|0)>>>0)$e();Xi[e>>2]=d;Xi[d+24>>2]=r;Xi[d+12>>2]=d;Xi[d+8>>2]=d;return}else if((f|0)==127){r=i+8|0;e=Xi[r>>2]|0;c=Xi[40151]|0;if(!(e>>>0>=c>>>0&i>>>0>=c>>>0))$e();Xi[e+12>>2]=d;Xi[r>>2]=d;Xi[d+8>>2]=e;Xi[d+12>>2]=i;Xi[d+24>>2]=0;return}}function xT(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;e=e>>>0<16?16:e;if(e+-1&e){r=16;while(1)if(r>>>0<e>>>0)r=r<<1;else{e=r;break}}if((-64-e|0)>>>0<=i>>>0){Xi[(nR()|0)>>2]=12;n=0;return n|0}a=i>>>0<11?16:i+11&-8;r=LT(a+12+e|0)|0;if(!r){n=0;return n|0}i=r+-8|0;do{if(r&e+-1){f=(r+e+-1&0-e)+-8|0;l=i;f=(f-l|0)>>>0>15?f:f+e|0;l=f-l|0;e=r+-4|0;t=Xi[e>>2]|0;r=(t&-8)-l|0;if(!(t&3)){Xi[f>>2]=(Xi[i>>2]|0)+l;Xi[f+4>>2]=r;i=f;break}else{t=f+4|0;Xi[t>>2]=r|Xi[t>>2]&1|2;r=f+r+4|0;Xi[r>>2]=Xi[r>>2]|1;Xi[e>>2]=l|Xi[e>>2]&1|2;Xi[t>>2]=Xi[t>>2]|1;UT(i,l);i=f;break}}}while(0);e=i+4|0;r=Xi[e>>2]|0;if(r&3|0?(n=r&-8,n>>>0>(a+16|0)>>>0):0){t=n-a|0;n=i+a|0;Xi[e>>2]=a|r&1|2;Xi[n+4>>2]=t|3;a=n+t+4|0;Xi[a>>2]=Xi[a>>2]|1;UT(n,t)}t=i+8|0;return t|0}function zT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;do{if((i|0)!=8){f=i>>>2;if((i&3|0)!=0|(f|0)==0){e=22;return e|0}if(f+1073741823&f|0){e=22;return e|0}if((-64-i|0)>>>0<r>>>0){e=12;return e|0}else{f=xT(i>>>0<16?16:i,r)|0;break}}else f=LT(r)|0}while(0);if(!f){e=12;return e|0}Xi[e>>2]=f;e=0;return e|0}function VT(){}function YT(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;f=i-f-(r>>>0>e>>>0|0)>>>0;return(Ie=f,e-r>>>0|0)|0}function jT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;f=e+r|0;if((r|0)>=20){i=i&255;a=e&3;n=i|i<<8|i<<16|i<<24;l=f&~3;if(a){a=e+4-a|0;while((e|0)<(a|0)){Wi[e>>0]=i;e=e+1|0}}while((e|0)<(l|0)){Xi[e>>2]=n;e=e+4|0}}while((e|0)<(f|0)){Wi[e>>0]=i;e=e+1|0}return e-r|0}function KT(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){Ie=i<<r|(e&(1<<r)-1<<32-r)>>>32-r;return e<<r}Ie=e<<r-32;return 0}function WT(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=e+r>>>0;return(Ie=i+f+(r>>>0<e>>>0|0)>>>0,r|0)|0}function GT(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){Ie=i>>r;return e>>>r|(i&(1<<r)-1)<<32-r}Ie=(i|0)<0?-1:0;return i>>r-32|0}function XT(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){Ie=i>>>r;return e>>>r|(i&(1<<r)-1)<<32-r}Ie=0;return i>>>r-32|0}function qT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if((r|0)>=4096)return Be(e|0,i|0,r|0)|0;f=e|0;if((e&3)==(i&3)){while(e&3){if(!r)return f|0;Wi[e>>0]=Wi[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}while((r|0)>=4){Xi[e>>2]=Xi[i>>2];e=e+4|0;i=i+4|0;r=r-4|0}}while((r|0)>0){Wi[e>>0]=Wi[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}return f|0}function JT(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if((i|0)<(e|0)&(e|0)<(i+r|0)){f=e;i=i+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;i=i-1|0;r=r-1|0;Wi[e>>0]=Wi[i>>0]|0}e=f}else qT(e,i,r)|0;return e|0}function ZT(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function QT(e){e=e|0;var i=0;i=Wi[n+(e&255)>>0]|0;if((i|0)<8)return i|0;i=Wi[n+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=Wi[n+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(Wi[n+(e>>>24)>>0]|0)+24|0}function $T(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=e&65535;l=i&65535;r=Zi(l,a)|0;f=e>>>16;e=(r>>>16)+(Zi(l,f)|0)|0;l=i>>>16;i=Zi(l,a)|0;return(Ie=(e>>>16)+(Zi(l,f)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|r&65535|0)|0}function eN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;s=i>>31|((i|0)<0?-1:0)<<1;o=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;a=f>>31|((f|0)<0?-1:0)<<1;l=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;t=YT(s^e|0,o^i|0,s|0,o|0)|0;n=Ie;e=a^s;i=l^o;return YT((Ux(t,n,YT(a^r|0,l^f|0,a|0,l|0)|0,Ie,0)|0)^e|0,Ie^i|0,e|0,i|0)|0}function iN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;l=Ue;Ue=Ue+16|0;t=l|0;n=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;s=f>>31|((f|0)<0?-1:0)<<1;o=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;e=YT(n^e|0,a^i|0,n|0,a|0)|0;i=Ie;Ux(e,i,YT(s^r|0,o^f|0,s|0,o|0)|0,Ie,t)|0;f=YT(Xi[t>>2]^n|0,Xi[t+4>>2]^a|0,n|0,a|0)|0;r=Ie;Ue=l;return(Ie=r,f)|0}function rN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;l=e;a=r;r=$T(l,a)|0;e=Ie;return(Ie=(Zi(i,a)|0)+(Zi(f,l)|0)+e|e&0,r|0|0)|0}function fN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return Ux(e,i,r,f,0)|0}function lN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;a=Ue;Ue=Ue+16|0;l=a|0;Ux(e,i,r,f,l)|0;Ue=a;return(Ie=Xi[l+4>>2]|0,Xi[l>>2]|0)|0}function aN(e){e=e|0;var i=0;i=Ue;Ue=Ue+e|0;Ue=Ue+15&-16;return i|0}function nN(){return Ue|0}function tN(e){e=e|0;Ue=e}function oN(e,i){e=e|0;i=i|0;Ue=e;l=i}function sN(e,i){e=e|0;i=i|0;if(!t){t=e;o=i}}function uN(e){e=e|0;Wi[ee>>0]=Wi[e>>0];Wi[ee+1>>0]=Wi[e+1>>0];Wi[ee+2>>0]=Wi[e+2>>0];Wi[ee+3>>0]=Wi[e+3>>0]}function hN(e){e=e|0;Wi[ee>>0]=Wi[e>>0];Wi[ee+1>>0]=Wi[e+1>>0];Wi[ee+2>>0]=Wi[e+2>>0];Wi[ee+3>>0]=Wi[e+3>>0];Wi[ee+4>>0]=Wi[e+4>>0];Wi[ee+5>>0]=Wi[e+5>>0];Wi[ee+6>>0]=Wi[e+6>>0];Wi[ee+7>>0]=Wi[e+7>>0]}function wN(e){e=e|0;Ie=e}function kN(){return Ie|0}function bN(){if(!(Xi[38942]|0)){Xi[38942]=1;cO(87852);cO(88536)}return}function cN(e){e=e|0;var i=0;i=e+8|0;Xi[i>>2]=0;Xi[i+4>>2]=-2147483648;i=e+16|0;Xi[i>>2]=0;Xi[i+4>>2]=-2147483648;i=e+56|0;Xi[i>>2]=-1;Xi[i+4>>2]=-1;i=e+64|0;Xi[i>>2]=0;Xi[i+4>>2]=0;i=e+32|0;Xi[e>>2]=0;Xi[i>>2]=0;Xi[i+4>>2]=0;Xi[i+8>>2]=0;Xi[i+12>>2]=0;Xi[i+16>>2]=0;Xi[i+20>>2]=0;return}function dN(e){e=e|0;var i=0,r=0;r=e+44|0;e=e+40|0;if((Xi[r>>2]|0)>0){i=0;do{vA((Xi[e>>2]|0)+(i*12|0)|0);i=i+1|0}while((i|0)<(Xi[r>>2]|0))}vA(e);Xi[r>>2]=0;return}function vN(e){e=e|0;var i=0;dN(e);UA(e);i=e+8|0;Xi[i>>2]=0;Xi[i+4>>2]=-2147483648;i=e+16|0;Xi[i>>2]=0;Xi[i+4>>2]=-2147483648;i=e+56|0;Xi[i>>2]=-1;Xi[i+4>>2]=-1;i=e+64|0;Xi[i>>2]=0;Xi[i+4>>2]=0;Xi[e>>2]=0;e=e+24|0;Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;Xi[e+16>>2]=0;Xi[e+20>>2]=0;Xi[e+24>>2]=0;Xi[e+28>>2]=0;return}function EN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;f=Xi[e+44>>2]|0;e:do{if((f|0)>0){l=Xi[e+40>>2]|0;e=0;while(1){if((Xi[l+(e*12|0)+8>>2]|0)==(i|0))break;e=e+1|0;if((e|0)>=(f|0)){e=0;break e}}if(r|0)Xi[r>>2]=Xi[l+(e*12|0)+4>>2];e=Xi[l+(e*12|0)>>2]|0}else e=0}while(0);return e|0}function SN(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=Ue;Ue=Ue+16|0;o=h;s=e+44|0;e:do{if((((Xi[s>>2]|0)==0?(u=e+28|0,i=Xi[u>>2]|0,(i|0)>12):0)?(t=e+24|0,r=Xi[t>>2]|0,w=r+(i+-8)|0,l=w,w=w+4|0,w=qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24,l=ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0,(ZT(w|0)|0)==-1910117890&(l|0)==-1941070576):0)?(a=r+(i+-13)|0,f=ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0,f>>>0<=2147483642):0){i=1;while(1){l=a-r|0;if(l>>>0<f>>>0){n=0;break e}if((Wi[a+4>>0]|0)<0)break;if(l>>>0<(f+5|0)>>>0){n=0;break e}a=a+(-5-f)|0;f=ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0;if(f>>>0>2147483642){n=0;break e}else i=i+1|0}if(i>>>0>178956969){Xi[e+40>>2]=0;n=-12;break}w=rA(i*12|0)|0;e=e+40|0;Xi[e>>2]=w;if(!w)n=-12;else{w=Xi[u>>2]|0;r=(Xi[t>>2]|0)+(w+-13)|0;i=ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0;i:do{if(!(i>>>0>2147483642|(w+-13|0)>>>0<i>>>0)){a=i;i=0;l=r;while(1){r=iA(a+32|0)|0;w=Xi[e>>2]|0;Xi[w+(i*12|0)>>2]=r;Xi[w+(i*12|0)+4>>2]=a;f=l+4|0;Xi[w+(i*12|0)+8>>2]=qi[f>>0]&127;if(!r){n=-12;break e}qT(r|0,l+(0-a)|0,a|0)|0;r=-5-a+(Xi[u>>2]|0)|0;Xi[u>>2]=r;if((Wi[f>>0]|0)<0)break;l=l+(-5-a)|0;a=ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0;if(a>>>0>=2147483643)break i;if((l-(Xi[t>>2]|0)|0)>>>0<a>>>0)break i;else i=i+1|0}Xi[u>>2]=r+-8;Xi[s>>2]=i+1;n=1;break e}}while(0);Xi[o>>2]=93282;Xi[o+4>>2]=93260;Xi[o+8>>2]=420;nA(0,0,150445,o);$e()}}else n=0}while(0);Ue=h;return n|0}function _N(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=e+i|0;e:do{if((i|0)!=0&((e|0)!=0&(r|0)!=0))if(!(Wi[e+(i+-1)>>0]|0))if((i|0)>0){i=e;do{f=wR(i)|0;l=i+(f+1)|0;if(l>>>0>=a>>>0){e=-1094995529;break e}e=Fg(r,i,l,0)|0;if((e|0)<0)break e;i=i+(f+2+(wR(l)|0))|0}while(i>>>0<a>>>0)}else e=0;else e=-1094995529;else e=0}while(0);return e|0}function mN(e,i,r,f,l,a,n,t,o,s,u,h,w){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;var k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;x=Ue;Ue=Ue+12624|0;U=x+72|0;B=x+64|0;P=x+56|0;L=x+48|0;p=x+40|0;F=x+32|0;v=x+16|0;b=x;k=x+616|0;d=x+88|0;N=x+104|0;Xi[e>>2]=i;H=(w&4|0)!=0;do{if(H)if((r+1|0)>>>0<1501){Xi[d>>2]=Xi[e>>2];Xi[d+4>>2]=Xi[e+4>>2];Xi[d+8>>2]=Xi[e+8>>2];Xi[d+12>>2]=Xi[e+12>>2];Xi[d+8>>2]=0;C=k;E=7;break}else{Xi[b>>2]=93351;Xi[b+4>>2]=93328;Xi[b+8>>2]=289;nA(0,0,150445,b);$e()}else{Xi[e+4>>2]=0;Xi[e+12>>2]=0;Xi[e+8>>2]=0;k=r+1|0;if(k>>>0<=268435454?(c=rA(k<<3)|0,(c|0)!=0):0){C=c;d=e;E=7}else I=-12}}while(0);e:do{if((E|0)==7){D=(s|0)!=0;if(D&(h|0)>2){Xi[v>>2]=93410;Xi[v+4>>2]=93328;Xi[v+8>>2]=305;nA(0,0,150445,v);$e()}T=(r|0)>0;i:do{if(T){S=i*3|0;_=(w&2|0)==0;m=0;E=0;while(1){k=f+(Zi(m,l)|0)|0;switch(a|0){case 1:{v=Wi[k>>0]|0;Wi[C+(E<<3)>>0]=v;break}case 2:{v=Gi[k>>1]&255;Wi[C+(E<<3)>>0]=v;break}default:{v=Xi[k>>2]&255;Wi[C+(E<<3)>>0]=v}}k=v&255;if((k|0)>(i|0)){if((v&255)>32|(k|0)>(S|0)){E=17;break}b=n+(Zi(m,t)|0)|0;switch(o|0){case 1:{b=qi[b>>0]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b;break}case 2:{b=Ji[b>>1]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b;break}default:{b=Xi[b>>2]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b}}R=KT(1,0,v&255|0)|0;M=Ie;if(!(0<(M|0)|0==(M|0)&b>>>0<R>>>0)){E=24;break}if(_)k=b<<32-k;else k=(qi[146150+(b>>>8&255)>>0]|0)<<16|(qi[146150+(b&255)>>0]|0)<<24|(qi[146150+(b>>>16&255)>>0]|0)<<8|(qi[146150+(b>>>24)>>0]|0);Xi[c>>2]=k;r:do{if(D){k=s+(Zi(m,u)|0)|0;switch(h|0){case 1:{Gi[C+(E<<3)+2>>1]=qi[k>>0]|0;break r}case 2:{Gi[C+(E<<3)+2>>1]=Gi[k>>1]|0;break r}default:{Gi[C+(E<<3)+2>>1]=Xi[k>>2];break r}}}else Gi[C+(E<<3)+2>>1]=m}while(0);k=E+1|0}else k=E;m=m+1|0;if((m|0)>=(r|0))break i;else E=k}if((E|0)==17){Xi[F>>2]=k;nA(0,16,93440,F);if(H){I=-1;break e}FA(C);I=-1;break e}else if((E|0)==24){nA(0,16,93471,p);if(H){I=-1;break e}FA(C);I=-1;break e}}else k=0}while(0);Xi[N>>2]=C;Xi[N+4>>2]=C+(k+-1<<3);b=1;do{b=b+-1|0;v=Xi[N+(b<<3)>>2]|0;c=Xi[N+(b<<3)+4>>2]|0;i:do{if(v>>>0<c>>>0){r:while(1){M=v+8|0;R=v;E=v+4|0;while(1){O=c+-8|0;if(v>>>0>=O>>>0)break r;S=c+-16|0;g=c;A=v+(g-R>>4<<3)|0;_=(Xi[E>>2]|0)>>>1;F=c+4|0;m=(Xi[F>>2]|0)>>>1;y=A+4|0;p=(Xi[y>>2]|0)>>>1;do{if(_>>>0>m>>>0)if(m>>>0>p>>>0){p=A;m=Xi[p>>2]|0;p=Xi[p+4>>2]|0;V=v;z=Xi[V+4>>2]|0;_=A;Xi[_>>2]=Xi[V>>2];Xi[_+4>>2]=z;_=v;Xi[_>>2]=m;Xi[_+4>>2]=p;_=0;break}else{V=c;z=Xi[V>>2]|0;V=Xi[V+4>>2]|0;m=v;p=Xi[m+4>>2]|0;_=c;Xi[_>>2]=Xi[m>>2];Xi[_+4>>2]=p;_=v;Xi[_>>2]=z;Xi[_+4>>2]=V;_=0;break}else if(_>>>0>p>>>0){V=A;z=Xi[V>>2]|0;V=Xi[V+4>>2]|0;m=v;p=Xi[m+4>>2]|0;_=A;Xi[_>>2]=Xi[m>>2];Xi[_+4>>2]=p;_=v;Xi[_>>2]=z;Xi[_+4>>2]=V;_=0}else _=1}while(0);if((Xi[y>>2]|0)>>>1>>>0>(Xi[F>>2]|0)>>>1>>>0){V=c;z=Xi[V>>2]|0;V=Xi[V+4>>2]|0;p=A;y=Xi[p+4>>2]|0;F=c;Xi[F>>2]=Xi[p>>2];Xi[F+4>>2]=y;F=A;Xi[F>>2]=z;Xi[F+4>>2]=V;F=0}else F=_;if((v|0)==(S|0))break i;m=A;_=Xi[m>>2]|0;m=Xi[m+4>>2]|0;y=O;z=Xi[y+4>>2]|0;V=A;Xi[V>>2]=Xi[y>>2];Xi[V+4>>2]=z;V=O;Xi[V>>2]=_;Xi[V+4>>2]=m;if(M>>>0>S>>>0){p=_;_=M}else{p=O+4|0;_=M;do{f:do{if(_>>>0<=S>>>0){m=(Xi[p>>2]|0)>>>1;do{if((Xi[_+4>>2]|0)>>>1>>>0>=m>>>0)break f;_=_+8|0}while(_>>>0<=S>>>0)}}while(0);f:do{if(_>>>0<=S>>>0){m=(Xi[p>>2]|0)>>>1;while(1){if((Xi[S+4>>2]|0)>>>1>>>0<=m>>>0)break;S=S+-8|0;if(_>>>0>S>>>0)break f}z=S;y=Xi[z>>2]|0;z=Xi[z+4>>2]|0;Y=_;m=Xi[Y+4>>2]|0;V=S;Xi[V>>2]=Xi[Y>>2];Xi[V+4>>2]=m;V=_;Xi[V>>2]=y;Xi[V+4>>2]=z;_=_+8|0;S=S+-8|0}}while(0)}while(_>>>0<=S>>>0);m=O;p=Xi[m>>2]|0;m=Xi[m+4>>2]|0}V=_;z=Xi[V>>2]|0;V=Xi[V+4>>2]|0;Y=_;Xi[Y>>2]=p;Xi[Y+4>>2]=m;Y=O;Xi[Y>>2]=z;Xi[Y+4>>2]=V;if(F|0?(A|0)==(_|0)|(A|0)==(_+-8|0):0){f:do{if(v>>>0<c>>>0){m=v;do{if((Xi[m+4>>2]|0)>>>1>>>0>(Xi[m+8+4>>2]|0)>>>1>>>0)break f;m=m+8|0}while(m>>>0<c>>>0)}else m=v}while(0);if((m|0)==(c|0))break i}Y=_;if((g-Y|0)<(Y-R|0)){E=b;break}Xi[N+(b<<3)>>2]=_+8;_=b+1|0;Xi[N+(b<<3)+4>>2]=c;if(v>>>0<S>>>0){c=S;b=_}else{b=_;break i}}Xi[N+(E<<3)>>2]=v;b=E+1|0;Xi[N+(E<<3)+4>>2]=S;v=_+8|0;if(v>>>0>=c>>>0)break i}if((Xi[E>>2]|0)>>>1>>>0>(Xi[c+4>>2]|0)>>>1>>>0){V=c;z=Xi[V>>2]|0;V=Xi[V+4>>2]|0;M=v;R=Xi[M+4>>2]|0;Y=c;Xi[Y>>2]=Xi[M>>2];Xi[Y+4>>2]=R;Y=v;Xi[Y>>2]=z;Xi[Y+4>>2]=V}}}while(0)}while((b|0)!=0);i:do{if(T){S=i*3|0;_=(w&2|0)==0;m=0;E=k;while(1){k=f+(Zi(m,l)|0)|0;switch(a|0){case 1:{v=Wi[k>>0]|0;Wi[C+(E<<3)>>0]=v;break}case 2:{v=Gi[k>>1]&255;Wi[C+(E<<3)>>0]=v;break}default:{v=Xi[k>>2]&255;Wi[C+(E<<3)>>0]=v}}k=v&255;if(v<<24>>24==0|(k|0)>(i|0))k=E;else{if((v&255)>32|(k|0)>(S|0)){E=83;break}b=n+(Zi(m,t)|0)|0;switch(o|0){case 1:{b=qi[b>>0]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b;break}case 2:{b=Ji[b>>1]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b;break}default:{b=Xi[b>>2]|0;c=C+(E<<3)+4|0;Xi[c>>2]=b}}Y=KT(1,0,v&255|0)|0;V=Ie;if(!(0<(V|0)|0==(V|0)&b>>>0<Y>>>0)){E=90;break}if(_)k=b<<32-k;else k=(qi[146150+(b>>>8&255)>>0]|0)<<16|(qi[146150+(b&255)>>0]|0)<<24|(qi[146150+(b>>>16&255)>>0]|0)<<8|(qi[146150+(b>>>24)>>0]|0);Xi[c>>2]=k;r:do{if(D){k=s+(Zi(m,u)|0)|0;switch(h|0){case 1:{Gi[C+(E<<3)+2>>1]=qi[k>>0]|0;break r}case 2:{Gi[C+(E<<3)+2>>1]=Gi[k>>1]|0;break r}default:{Gi[C+(E<<3)+2>>1]=Xi[k>>2];break r}}}else Gi[C+(E<<3)+2>>1]=m}while(0);k=E+1|0}m=m+1|0;if((m|0)>=(r|0))break i;else E=k}if((E|0)==83){Xi[L>>2]=k;nA(0,16,93440,L);if(H){I=-1;break e}FA(C);I=-1;break e}else if((E|0)==90){nA(0,16,93471,P);if(H){I=-1;break e}FA(C);I=-1;break e}}}while(0);c=pN(d,i,k,C,w)|0;if(!H){FA(C);if((c|0)>=0){I=0;break}vA(d+4|0);I=c;break}k=Xi[d+8>>2]|0;b=Xi[d+12>>2]|0;if((k|0)!=(b|0)){Xi[B>>2]=k;Xi[B+4>>2]=b;nA(0,16,93514,B)}if((c|0)>-1){Xi[e>>2]=Xi[d>>2];Xi[e+4>>2]=Xi[d+4>>2];Xi[e+8>>2]=Xi[d+8>>2];Xi[e+12>>2]=Xi[d+12>>2];I=0;break}else{Xi[U>>2]=143011;Xi[U+4>>2]=93328;Xi[U+8>>2]=347;nA(0,0,150445,U);$e()}}}while(0);Ue=x;return I|0}function pN(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=Ue;Ue=Ue+16|0;S=F;p=F+4|0;_=1<<i;e:do{if((i|0)<=30){n=e+8|0;m=Xi[n>>2]|0;E=m+_|0;Xi[n>>2]=E;t=e+12|0;a=Xi[t>>2]|0;do{if((E|0)>(a|0)){if(l&4|0)$e();a=(1<<Xi[e>>2])+a|0;Xi[t>>2]=a;E=e+4|0;a=EM(Xi[E>>2]|0,a,4)|0;Xi[E>>2]=a;if(!a){Xi[t>>2]=0;Xi[n>>2]=0;a=-12;break e}else{E=Xi[e>>2]|0;jT(a+((-1<<E)+(Xi[t>>2]|0)<<2)|0,0,4<<E|0)|0;break}}}while(0);if((m|0)>=0){d=e+4|0;Xi[p>>2]=(Xi[d>>2]|0)+(m<<2);i:do{if((r|0)>0){v=32-i|0;E=(l&2|0)==0;a=0;r:while(1){c=f+(a<<3)|0;s=Wi[c>>0]|0;k=s&255;o=f+(a<<3)+4|0;u=Xi[o>>2]|0;b=Gi[f+(a<<3)+2>>1]|0;if((k|0)<=(i|0)){t=i-k|0;h=1<<t;if(E){w=1;n=u>>>v}else{w=1<<k;n=qi[146150+(u>>>8&255)>>0]<<16|qi[146150+(u&255)>>0]<<24|qi[146150+(u>>>16&255)>>0]<<8|qi[146150+(u>>>24)>>0]}if((t|0)!=31){o=s&255;t=0;while(1){c=Gi[(Xi[p>>2]|0)+(n<<2)+2>>1]|0;if(!(c<<16>>16==0|(c<<16>>16|0)==(k|0)))break r;Gi[(Xi[p>>2]|0)+(n<<2)+2>>1]=o;Gi[(Xi[p>>2]|0)+(n<<2)>>1]=b;t=t+1|0;if((t|0)>=(h|0))break;else n=n+w|0}}}else{n=k-i|0;t=u>>>v;Wi[c>>0]=n;Xi[o>>2]=u<<i;o=a+1|0;f:do{if((o|0)<(r|0)){w=a;k=o;while(1){o=f+(k<<3)|0;s=(qi[o>>0]|0)-i|0;if((s|0)<1){o=k;break f}u=f+(k<<3)+4|0;h=Xi[u>>2]|0;if((h>>>v|0)!=(t|0)){o=k;break f}Wi[o>>0]=s;Xi[u>>2]=h<<i;n=(n|0)>(s|0)?n:s;o=k+1|0;if((o|0)<(r|0)){w=k;k=o}else{w=k;break}}}else w=a}while(0);n=(n|0)>(i|0)?i:n;if(!E)t=(qi[146150+(t>>>8&255)>>0]<<16|qi[146150+(t&255)>>0]<<24|qi[146150+(t>>>16&255)>>0]<<8|qi[146150+(t>>>24)>>0])>>>v;Gi[(Xi[p>>2]|0)+(t<<2)+2>>1]=0-n;a=pN(e,n,o-a|0,c,l)|0;if((a|0)<0)break e;Xi[p>>2]=(Xi[d>>2]|0)+(m<<2);Gi[(Xi[p>>2]|0)+(t<<2)>>1]=a;a=w}a=a+1|0;if((a|0)>=(r|0))break i}nA(0,16,93497,S);a=-1094995529;break e}}while(0);if((i|0)!=31){a=0;do{if(!(Gi[(Xi[p>>2]|0)+(a<<2)+2>>1]|0))Gi[(Xi[p>>2]|0)+(a<<2)>>1]=-1;a=a+1|0}while((a|0)<(_|0));a=m}else a=m}else a=m}else a=-1}while(0);Ue=F;return a|0}function FN(e){e=e|0;Xi[e>>2]=1;Xi[e+4>>2]=2;return}function yN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;if((r|0)<8)f=0;else{l=8;f=0;while(1){Xi[e+(f<<2)>>2]=ZT(Xi[i+(f<<2)>>2]|0)|0;a=f|1;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;a=f|2;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;a=f|3;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;a=f|4;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;a=f|5;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;a=f|6;Xi[e+(a<<2)>>2]=ZT(Xi[i+(a<<2)>>2]|0)|0;f=f|7;Xi[e+(f<<2)>>2]=ZT(Xi[i+(f<<2)>>2]|0)|0;f=l+8|0;if((f|0)>(r|0))break;else{a=l;l=f;f=a}}f=r&-8}if((f|0)<(r|0))do{Xi[e+(f<<2)>>2]=ZT(Xi[i+(f<<2)>>2]|0)|0;f=f+1|0}while((f|0)!=(r|0));return}function ON(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(r|0)while(1){r=r+-1|0;f=Ji[i>>1]|0;Gi[e>>1]=f>>>8|f<<8;if(!r)break;else{i=i+2|0;e=e+2|0}}return}function AN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=e+16|0;Xi[e+12>>2]=i;Xi[e+20>>2]=i+r;a=i+1|0;Xi[l>>2]=a;r=(qi[i>>0]|0)<<18;Xi[e>>2]=r;f=i+2|0;Xi[l>>2]=f;r=(qi[a>>0]|0)<<10|r;Xi[e>>2]=r;if(!(f&1))r=r|512;else{Xi[l>>2]=i+3;r=(qi[f>>0]|0)<<2|r|2}Xi[e>>2]=r;Xi[e+4>>2]=510;return((r|0)>66846720?-1094995529:0)|0}function gN(e){e=e|0;var i=0,r=0;r=0;while(1){i=76424+(r*28|0)|0;r=r+1|0;if((Xi[i>>2]|0)==(e|0))break;if(r>>>0>=403){i=0;break}}return i|0}function MN(e){e=e|0;var i=0,r=0;i=Xi[e>>2]|0;if(Xi[i+676>>2]|0){r=e+520|0;if(!(Xi[r>>2]|0)){_y(e+4|0,i);Xi[r>>2]=1}jT(Xi[e+556>>2]|0,127,Zi(Xi[e+536>>2]|0,Xi[e+540>>2]|0)|0)|0;Xi[e+548>>2]=(Xi[e+528>>2]|0)*3;Xi[e+552>>2]=0}return}function RN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=Ue;Ue=Ue+16|0;n=c;k=e+532|0;o=Xi[k>>2]|0;w=(Zi(o,r)|0)+i|0;h=e+528|0;s=Xi[h>>2]|0;u=s+-1|0;w=(w|0)<0?0:(w|0)>(u|0)?u:w;l=(Zi(o,l)|0)+f|0;l=(l|0)<0?0:(l|0)>(s|0)?s:l;s=e+524|0;o=Xi[s>>2]|0;u=Xi[o+(w<<2)>>2]|0;o=Xi[o+(l<<2)>>2]|0;i=Xi[e>>2]|0;f=Xi[i+704>>2]|0;if(!((f|0)!=0?(Xi[f+32>>2]|0)!=0:0))t=3;do{if((t|0)==3){if((o|0)<(u|0)|(w|0)>(l|0)){nA(i,16,98174,n);break}if(Xi[i+676>>2]|0){if(!(a&18))i=-2;else{i=e+548|0;Xi[i>>2]=(Xi[i>>2]|0)+(w+~l);i=-20}if(a&36){t=e+548|0;Xi[t>>2]=(Xi[t>>2]|0)+(w+~l);i=i&-38}if(a&72){t=e+548|0;Xi[t>>2]=(Xi[t>>2]|0)+(w+~l);i=i&-73}if(a&14|0){Xi[e+552>>2]=1;Xi[e+548>>2]=2147483647}if((i|0)!=-128){if((o|0)>(u|0)){r=e+556|0;f=u;do{t=(Xi[r>>2]|0)+f|0;Wi[t>>0]=(qi[t>>0]|0)&i;f=f+1|0}while((f|0)!=(o|0))}}else jT((Xi[e+556>>2]|0)+u|0,0,o-u|0)|0;if((l|0)==(Xi[h>>2]|0)){Xi[e+548>>2]=2147483647;i=e+556|0}else{h=e+556|0;t=(Xi[h>>2]|0)+o|0;Wi[t>>0]=(qi[t>>0]|0)&i;i=(Xi[h>>2]|0)+o|0;Wi[i>>0]=qi[i>>0]|0|a;i=h}a=(Xi[i>>2]|0)+u|0;Wi[a>>0]=qi[a>>0]|0|1;if(((((u|0)>0?(b=Xi[e>>2]|0,(Xi[b+808>>2]&2|0)==0):0)?TN(e)|0:0)?(Zi(Xi[k>>2]|0,Xi[b+332>>2]|0)|0)<(w|0):0)?(Wi[(Xi[i>>2]|0)+(Xi[(Xi[s>>2]|0)+(w+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0){Xi[e+552>>2]=1;Xi[e+548>>2]=2147483647}}}}while(0);Ue=c;return}function TN(e){e=e|0;var i=0,r=0,f=0;i=Xi[e>>2]|0;f=Xi[i+704>>2]|0;if(!((f|0)!=0?(Xi[f+32>>2]|0)!=0:0))r=3;if(((r|0)==3?(Xi[(Xi[i+12>>2]|0)+16>>2]&128|0)==0:0)?Xi[e+648>>2]|0:0)return(Xi[e+676>>2]|0)==0|0;return 0}function NN(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0;de=Ue;Ue=Ue+192|0;M=de+64|0;g=de+48|0;m=de+40|0;_=de+32|0;c=de+24|0;b=de+16|0;k=de+8|0;h=de;A=de+176|0;ie=de+112|0;re=de+80|0;ue=e+544|0;d=Xi[ue>>2]|0;ke=e+536|0;v=Xi[ke>>2]|0;w=Xi[e>>2]|0;e:do{if((((Xi[w+676>>2]|0?(u=e+548|0,Xi[u>>2]|0):0)?(Xi[w+792>>2]|0)==0:0)?TN(e)|0:0)?(we=e+532|0,n=Xi[we>>2]|0,t=n*3|0,o=Xi[w+332>>2]|0,s=Xi[w+336>>2]|0,(Xi[u>>2]|0)!=(Zi(t,s+o|0)|0)):0){ce=e+648|0;be=Xi[ce>>2]|0;he=be+32|0;i:do{if((n|0)>0){l=Zi(v+-1|0,Xi[e+540>>2]|0)|0;a=Xi[e+556>>2]|0;f=0;do{if((Wi[a+(l+f)>>0]|0)!=127)break i;f=f+1|0}while((f|0)<(n|0))}else f=0}while(0);if((((f|0)==(n|0)?(Xi[w+48>>2]|0)==2:0)?Xi[w+128>>2]&16|0:0)?(Xi[u>>2]|0)==(Zi(t,o+1+s|0)|0):0){nA(w,48,98214,h);break}O=e+680|0;f=Xi[O>>2]|0;do{if(f|0){if(((Xi[f+68>>2]|0)==(Xi[be+68>>2]|0)?(Xi[f+72>>2]|0)==(Xi[be+72>>2]|0):0)?(Xi[f+80>>2]|0)==(Xi[be+80>>2]|0):0)break;nA(w,24,98243,k);Xi[O>>2]=0;Xi[O+4>>2]=0;Xi[O+8>>2]=0;Xi[O+12>>2]=0;Xi[O+16>>2]=0;Xi[O+20>>2]=0;Xi[O+24>>2]=0;Xi[O+28>>2]=0}}while(0);y=e+712|0;f=Xi[y>>2]|0;do{if(f|0){se=Xi[ce>>2]|0;if(((Xi[f+68>>2]|0)==(Xi[se+68>>2]|0)?(Xi[f+72>>2]|0)==(Xi[se+72>>2]|0):0)?(Xi[f+80>>2]|0)==(Xi[se+80>>2]|0):0)break;nA(Xi[e>>2]|0,24,98293,b);Xi[y>>2]=0;Xi[y+4>>2]=0;Xi[y+8>>2]=0;Xi[y+12>>2]=0;Xi[y+16>>2]=0;Xi[y+20>>2]=0;Xi[y+24>>2]=0;Xi[y+28>>2]=0}}while(0);se=e+656|0;if(!((Xi[se>>2]|0)!=0?(Xi[e+664>>2]|0)!=0:0))fe=27;do{if((fe|0)==27){nA(Xi[e>>2]|0,16,98339,c);n=e+540|0;f=(Zi(d<<3,v)|0)+16|0;a=e+744|0;Xi[a>>2]=HA(Zi(Xi[n>>2]<<2,Xi[ke>>2]|0)|0)|0;l=HA(f)|0;Xi[e+752>>2]=l;a=Xi[a>>2]|0;if(!((l|0)==0|(a|0)==0)?(Xi[e+664>>2]=Xi[a+4>>2],Xi[e+656>>2]=(Xi[l+4>>2]|0)+16,S=e+748|0,Xi[S>>2]=HA(Zi(Xi[n>>2]<<2,Xi[ke>>2]|0)|0)|0,E=HA(f)|0,Xi[e+756>>2]=E,S=Xi[S>>2]|0,!((E|0)==0|(S|0)==0)):0){Xi[e+668>>2]=Xi[S+4>>2];Xi[e+660>>2]=(Xi[E+4>>2]|0)+16;break}UA(e+744|0);UA(e+752|0);Xi[e+664>>2]=0;Xi[se>>2]=0;UA(e+748|0);UA(e+756|0);Xi[e+668>>2]=0;Xi[e+660>>2]=0;break e}}while(0);if(Xi[(Xi[e>>2]|0)+680>>2]&1024|0?(Xi[ke>>2]|0)>0:0){f=e+540|0;l=e+556|0;n=0;do{if((Xi[we>>2]|0)>0){a=0;do{te=(Zi(Xi[f>>2]|0,n)|0)+a|0;oe=Xi[e>>2]|0;Xi[_>>2]=qi[(Xi[l>>2]|0)+te>>0];nA(oe,48,98366,_);a=a+1|0}while((a|0)<(Xi[we>>2]|0))}nA(Xi[e>>2]|0,48,122576,m);n=n+1|0}while((n|0)<(Xi[ke>>2]|0))}ne=e+528|0;te=e+524|0;oe=e+556|0;u=1;do{f=Xi[ne>>2]|0;if((f|0)>0){o=9<<u;s=1<<u;l=0;while(1){t=f;f=f+-1|0;a=(Xi[oe>>2]|0)+(Xi[(Xi[te>>2]|0)+(f<<2)>>2]|0)|0;n=qi[a>>0]|0;l=(n&o|0)==0?l:1;if(!l)Wi[a>>0]=n|s;if((t|0)<=1)break;else l=(n&1|0)==0?l:0}}u=u+1|0}while((u|0)!=4);le=e+768|0;if(Xi[le>>2]|0?(p=Xi[ne>>2]|0,(p|0)>0):0){f=0;n=p;while(1){t=n;n=n+-1|0;l=(Xi[oe>>2]|0)+(Xi[(Xi[te>>2]|0)+(n<<2)>>2]|0)|0;a=qi[l>>0]|0;f=(a&98|0)==0?(a&16|0)==0?f:0:1;if(!f)Wi[l>>0]=a|2;if((t|0)<=1)break;else f=(a&1|0)==0?f:0}}if(Xi[(Xi[e>>2]|0)+688>>2]&8|0?(F=(Xi[ne>>2]|0)+-2|0,r=Xi[we>>2]|0,(F|0)>=(r+100|0)):0){f=1;n=F;while(1){ae=Xi[te>>2]|0;ee=Xi[oe>>2]|0;l=ee+(Xi[ae+(n<<2)>>2]|0)|0;$=Wi[l>>0]|0;a=$&255;f=(a&1|0)==0?f:1;if($<<24>>24!=127?(Wi[ee+(Xi[ae+(n+1<<2)>>2]|0)>>0]|0)==127:0){if((a&112|0)!=0|(f|0)==0)fe=54}else if(!f)fe=54;if((fe|0)==54){fe=0;Wi[l>>0]=a|14;r=Xi[we>>2]|0;f=0}if((n|0)>(r+100|0))n=n+-1|0;else break}}ae=e+576|0;r=9999999;s=1;do{f=Xi[ne>>2]|0;if((f|0)>0){t=1<<s;o=87836+(s+-1<<2)|0;do{n=f;f=f+-1|0;ee=Xi[(Xi[te>>2]|0)+(f<<2)>>2]|0;l=(Xi[oe>>2]|0)+ee|0;a=qi[l>>0]|0;$=Xi[ae>>2]|0;if(!(($|0)!=0?(Wi[$+ee>>0]|0)!=0:0))r=r+1|0;r=(a&t|0)==0?r:0;do{if(!(Xi[le>>2]|0)){if((r|0)>=50)break;Wi[l>>0]=a|t}else{if((r|0)>=(Xi[o>>2]|0))break;Wi[l>>0]=a|t}}while(0);r=(a&1|0)==0?r:9999999}while((n|0)>1)}s=s+1|0}while((s|0)!=4);r=Xi[ne>>2]|0;if((r|0)>0){n=0;t=0;while(1){l=(Xi[oe>>2]|0)+(Xi[(Xi[te>>2]|0)+(t<<2)>>2]|0)|0;a=qi[l>>0]|0;f=a&14;if(!(a&1)){Wi[l>>0]=a|n;r=Xi[ne>>2]|0;f=f|n}t=t+1|0;if((t|0)>=(r|0))break;else n=f}}if(!(Xi[le>>2]|0))if((r|0)>0){f=0;do{r=(Xi[oe>>2]|0)+(Xi[(Xi[te>>2]|0)+(f<<2)>>2]|0)|0;fe=qi[r>>0]|0;Wi[r>>0]=(fe&14|0)==0?fe:fe|14;f=f+1|0;r=Xi[ne>>2]|0}while((f|0)<(r|0));fe=74}else{l=0;f=0;r=0}else fe=74;if((fe|0)==74)if((r|0)>0){n=Xi[te>>2]|0;t=Xi[oe>>2]|0;l=0;f=0;o=0;a=0;do{ee=qi[t+(Xi[n+(o<<2)>>2]|0)>>0]|0;f=(ee>>>2&1)+f|0;l=(ee>>>1&1)+l|0;a=(ee>>>3&1)+a|0;o=o+1|0}while((o|0)<(r|0));r=a}else{l=0;f=0;r=0}S=Xi[e>>2]|0;ee=(ZM(Xi[(Xi[ce>>2]|0)+88>>2]|0)|0)<<24>>24;Xi[g>>2]=f;Xi[g+4>>2]=l;Xi[g+8>>2]=r;Xi[g+12>>2]=ee;nA(S,32,98371,g);S=e+680|0;ee=Xi[S>>2]|0;do{if((ee|0)!=0?(Xi[ee>>2]|0)!=0:0)if(!(Xi[(Xi[e>>2]|0)+676>>2]&256)){f=Xi[ne>>2]|0;if((f|0)<=0)break;l=Xi[te>>2]|0;a=Xi[oe>>2]|0;n=0;r=0;do{r=((Wi[a+(Xi[l+(n<<2)>>2]|0)>>0]&12)!=12&1)+r|0;n=n+1|0}while((n|0)!=(f|0));if((r|0)<5){r=0;fe=101;break}w=(r|0)/50|0;w=(w|0)>1?w:1;if((Xi[ke>>2]|0)>1){k=e+540|0;b=e+648|0;c=e+8|0;d=e+684|0;v=e+672|0;l=Xi[we>>2]|0;r=0;f=0;E=0;do{if((l|0)>0){h=E<<4;u=0;do{a=(Zi(Xi[k>>2]|0,E)|0)+u|0;do{if((Wi[(Xi[oe>>2]|0)+a>>0]&12)!=12){f=f+1|0;if((f|0)%(w|0)|0|0)break;n=Xi[b>>2]|0;if((Xi[n+88>>2]|0)!=1)if(!(Xi[(Xi[v>>2]|0)+(a<<2)>>2]&7)){r=r+-1|0;break}else{r=r+1|0;break}else{s=n+32|0;l=Xi[s>>2]|0;o=(Zi(h,l)|0)+(u<<4)|0;a=(Xi[n>>2]|0)+o|0;n=Xi[Xi[S>>2]>>2]|0;t=n+o|0;if((Xi[(Xi[e>>2]|0)+48>>2]|0)!=28){YO(Xi[d>>2]|0,E,0);l=Xi[s>>2]|0}l=(Kz[Xi[c>>2]&63](0,t,a,l,16)|0)+r|0;r=Xi[s>>2]|0;r=l-(Kz[Xi[c>>2]&63](0,t,n+((r<<4)+o)|0,r,16)|0)|0;l=Xi[we>>2]|0;break}}}while(0);u=u+1|0}while((u|0)<(l|0))}E=E+1|0}while((E|0)<((Xi[ke>>2]|0)+-1|0))}else r=0;r=(r|0)>0&1;fe=101}else{r=0;fe=101}else{r=1;fe=101}}while(0);if((fe|0)==101){f=Xi[ne>>2]|0;if((f|0)>0){n=(r|0)==0;t=e+672|0;l=Xi[te>>2]|0;a=Xi[oe>>2]|0;o=0;do{r=Xi[l+(o<<2)>>2]|0;do{if((Wi[a+r>>0]&12)==12){r=(Xi[t>>2]|0)+(r<<2)|0;if(n){Xi[r>>2]=12296;break}else{Xi[r>>2]=1;break}}}while(0);o=o+1|0;f=Xi[ne>>2]|0}while((o|0)<(f|0))}}ee=Xi[O>>2]|0;if(!((ee|0)!=0?(Xi[ee>>2]|0)!=0:0))fe=110;do{if((fe|0)==110){r=Xi[y>>2]|0;if(!r){if((f|0)<=0)break}else if(!((Xi[r>>2]|0)==0&(f|0)>0))break;a=Xi[te>>2]|0;n=Xi[e+672>>2]|0;l=0;do{r=n+(Xi[a+(l<<2)>>2]<<2)|0;if(!(Xi[r>>2]&7)){Xi[r>>2]=1;f=Xi[ne>>2]|0}l=l+1|0}while((l|0)<(f|0))}}while(0);r=Xi[ke>>2]|0;if((r|0)>0){h=e+540|0;w=e+672|0;k=e+584|0;b=e+588|0;c=e+776|0;d=e+780|0;v=e+584|0;f=Xi[we>>2]|0;E=0;do{if((f|0)>0){u=E<<1;s=0;do{l=(Zi(Xi[h>>2]|0,E)|0)+s|0;t=Xi[(Xi[w>>2]|0)+(l<<2)>>2]|0;r=Xi[O>>2]|0;if(!r)a=0;else a=(Xi[r>>2]|0)!=0;o=a?1:2;ee=qi[(Xi[oe>>2]|0)+l>>0]|0;if(!((ee&2|0)==0|(ee&8|t&7|0)!=0)){r=Xi[ue>>2]|0;n=(Zi(r,u)|0)+(s<<1)|0;l=e+656+((a&1^1)<<2)|0;if(!(t&64)){Xi[k>>2]=Gi[(Xi[l>>2]|0)+(n<<2)>>1];Xi[b>>2]=Gi[(Xi[l>>2]|0)+(n<<2)+2>>1];r=0}else{f=0;do{ee=f&1|n;$=f>>1;Q=(Zi(r,$)|0)+ee|0;Xi[e+584+(f<<3)>>2]=Gi[(Xi[l>>2]|0)+(Q<<2)>>1];r=Xi[ue>>2]|0;ee=(Zi(r,$)|0)+ee|0;Xi[e+584+(f<<3)+4>>2]=Gi[(Xi[l>>2]|0)+(ee<<2)+2>>1];f=f+1|0}while((f|0)!=4);r=1}Qz[Xi[c>>2]&31](Xi[d>>2]|0,0,o,r,v,s,E,0,0);f=Xi[we>>2]|0}s=s+1|0}while((s|0)<(f|0))}E=E+1|0;r=Xi[ke>>2]|0}while((E|0)<(r|0))}i:do{if((Xi[(Xi[ce>>2]|0)+88>>2]|0)==3){if((r|0)<=0){i=r;fe=265;break}o=e+540|0;s=e+672|0;u=e+760|0;h=e+584|0;w=e+588|0;k=e+616|0;b=e+620|0;c=e+776|0;d=e+780|0;v=e+584|0;E=e+762|0;S=e+716|0;_=e+720|0;r=Xi[we>>2]|0;m=0;r:while(1){if((r|0)>0){t=m<<1;n=0;do{a=(Zi(t,Xi[ue>>2]|0)|0)+(n<<1)|0;re=(Zi(Xi[o>>2]|0,m)|0)+n|0;if(!((Wi[(Xi[oe>>2]|0)+re>>0]&10)!=10?1:(Xi[(Xi[s>>2]|0)+(re<<2)>>2]&7|0)!=0)){re=Xi[O>>2]|0;if((re|0)!=0?(Xi[re>>2]|0)!=0:0)r=3;else r=2;re=Xi[y>>2]|0;if(!((re|0)!=0?(Xi[re>>2]|0)!=0:0))r=r&1;f=Gi[u>>1]|0;if(!(f<<16>>16)){Xi[h>>2]=0;Xi[w>>2]=0;Xi[k>>2]=0;f=0}else{f=f&65535;l=Ji[E>>1]|0;if((Xi[(Xi[e>>2]|0)+48>>2]|0)==28)break r;YO(Xi[S>>2]|0,m,0);ie=Xi[_>>2]|0;ee=Gi[ie+(a<<2)>>1]|0;Xi[h>>2]=(Zi(ee,l)|0)/(f|0)|0;ie=Gi[ie+(a<<2)+2>>1]|0;Xi[w>>2]=(Zi(ie,l)|0)/(f|0)|0;re=l-f|0;Xi[k>>2]=(Zi(ee,re)|0)/(f|0)|0;f=(Zi(ie,re)|0)/(f|0)|0}Xi[b>>2]=f;Qz[Xi[c>>2]&31](Xi[d>>2]|0,0,r,0,v,n,m,0,0);r=Xi[we>>2]|0}n=n+1|0}while((n|0)<(r|0))}m=m+1|0;f=Xi[ke>>2]|0;if((m|0)>=(f|0)){i=f;fe=264;break i}}Xi[M>>2]=98422;Xi[M+4>>2]=98461;Xi[M+8>>2]=1184;nA(0,0,150445,M);$e()}else{Z=Xi[e+560>>2]|0;ee=e+540|0;Q=Xi[ee>>2]|0;$=Xi[we>>2]|0;i=Xi[S>>2]|0;do{if(i){if(!(Xi[i>>2]|0))break;J=(Xi[i+72>>2]|0)+15>>4;r=(r|0)>(J|0)?J:r}}while(0);i=Xi[e+712>>2]|0;do{if(i){if(!(Xi[i>>2]|0))break;J=(Xi[i+72>>2]|0)+15>>4;r=(r|0)>(J|0)?J:r}}while(0);DN(e,g,A);q=Zi(r,$)|0;J=(q|0)>0;if(J){a=e+672|0;n=e+688|0;t=Xi[A>>2]|0;o=Xi[g>>2]|0;s=e+696|0;u=e+664|0;h=0;i=0;do{f=Xi[(Xi[te>>2]|0)+(h<<2)>>2]|0;X=(Wi[(Xi[oe>>2]|0)+f>>0]&8)==0?3:(Xi[(Xi[a>>2]|0)+(f<<2)>>2]&7|0)==0?0:3;Wi[Z+f>>0]=X;do{if((X|0)==3)i=i+1|0;else{if(!(Xi[Xi[S>>2]>>2]|0))break;l=Xi[n>>2]|0;if(!l)break;X=Xi[ee>>2]|0;X=Zi((Zi((f|0)/(X|0)|0,t)|0)+((f|0)%(X|0)|0)|0,o)|0;G=Xi[se>>2]|0;Gi[G+(X<<2)>>1]=Gi[l+(X<<2)>>1]|0;Gi[G+(X<<2)+2>>1]=Gi[l+(X<<2)+2>>1]|0;X=f<<2;Wi[(Xi[u>>2]|0)+X>>0]=Wi[(Xi[s>>2]|0)+X>>0]|0}}while(0);h=h+1|0}while((h|0)!=(q|0))}else i=0;X=(r|0)>0;r:do{if((i|0)>(($|0)/2|0|0)?(Xi[(Xi[e>>2]|0)+676>>2]&1|0)!=0:0){G=Xi[A>>2]|0;H=Xi[g>>2]|0;B=ie+4|0;U=e+664|0;x=Zi(H,G)|0;z=e+584|0;V=e+588|0;Y=(H|0)>0;j=e+776|0;K=e+780|0;W=e+648|0;i=1;f=1;I=0;f:while(1){if(!((I|0)<10&((i|0)!=0|(I|0)<2))){if(f|0)break r;if(J)i=0;else{i=1;f=1;I=0;continue}while(1){f=Z+(Xi[(Xi[te>>2]|0)+(i<<2)>>2]|0)|0;if(Wi[f>>0]|0)Wi[f>>0]=3;i=i+1|0;if((i|0)==(q|0)){i=1;f=1;I=0;continue f}}}if(X){L=(I|0)>1;l=Xi[we>>2]|0;i=0;P=0;while(1){if((l|0)>0){R=Zi(P,G)|0;T=P^I;N=(P|0)>0;a=P+1|0;D=(a|0)<(r|0);C=P<<4;M=0;do{t=Xi[ee>>2]|0;F=(Zi(t,P)|0)+M|0;l=ie;n=l+64|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(n|0));Xi[re>>2]=0;Xi[re+4>>2]=0;Xi[re+8>>2]=0;Xi[re+12>>2]=0;Xi[re+16>>2]=0;Xi[re+20>>2]=0;Xi[re+24>>2]=0;Xi[re+28>>2]=0;A=Zi(M+R|0,H)|0;l:do{if(!((T^M)&1)){g=Z+F|0;if((Wi[g>>0]|0)==3)break;y=(M|0)>0;if(y)l=(Wi[Z+(F+-1)>>0]|0)==3&1;else l=0;O=(M+1|0)<($|0);if(O)l=(Wi[Z+(F+1)>>0]|0)==3?1:l;if(N)l=(Wi[Z+(F-Q)>>0]|0)==3?1:l;if(D){if((l|0)==0?(Wi[Z+(F+Q)>>0]|0)!=3:0)break}else if(!l)break;if(y)l=(Wi[Z+(F+-1)>>0]|0)==2&1;else l=0;if(O)l=(Wi[Z+(F+1)>>0]|0)==2?1:l;if(N)l=(Wi[Z+(F-Q)>>0]|0)==2?1:l;if(D)l=(Wi[Z+(F+Q)>>0]|0)==2?1:l;if(L&(l|0)==0)break;do{if(y){f=F+-1|0;if(!(Wi[Z+f>>0]|0)){f=0;break}p=A-H|0;m=Xi[se>>2]|0;Xi[ie>>2]=Gi[m+(p<<2)>>1];Xi[B>>2]=Gi[m+(p<<2)+2>>1];Xi[re>>2]=Wi[(Xi[U>>2]|0)+(f<<2)>>0];f=1}else f=0}while(0);do{if(O){l=F+1|0;if(!(Wi[Z+l>>0]|0))break;p=A+H|0;m=Xi[se>>2]|0;Xi[ie+(f<<3)>>2]=Gi[m+(p<<2)>>1];Xi[ie+(f<<3)+4>>2]=Gi[m+(p<<2)+2>>1];Xi[re+(f<<2)>>2]=Wi[(Xi[U>>2]|0)+(l<<2)>>0];f=f+1|0}}while(0);do{if(N){if(!(Wi[Z+(F-Q)>>0]|0))break;p=A-x|0;m=Xi[se>>2]|0;Xi[ie+(f<<3)>>2]=Gi[m+(p<<2)>>1];Xi[ie+(f<<3)+4>>2]=Gi[m+(p<<2)+2>>1];Xi[re+(f<<2)>>2]=Wi[(Xi[U>>2]|0)+(F-t<<2)>>0];f=f+1|0}}while(0);do{if(D){if(!(Wi[Z+(F+Q)>>0]|0)){fe=214;break}p=A+x|0;m=Xi[se>>2]|0;Xi[ie+(f<<3)>>2]=Gi[m+(p<<2)>>1];Xi[ie+(f<<3)+4>>2]=Gi[m+(p<<2)+2>>1];Xi[re+(f<<2)>>2]=Wi[(Xi[U>>2]|0)+(F+t<<2)>>0];f=f+1|0}else fe=214}while(0);if((fe|0)==214){fe=0;if(!f){f=0;break}}a:do{if((f|0)>1){l=0;o=0;n=0;t=0;do{n=(Xi[ie+(l<<3)>>2]|0)+n|0;t=(Xi[ie+(l<<3)+4>>2]|0)+t|0;p=Xi[re+(l<<2)>>2]|0;o=p+o|0;if(l|0?(p|0)!=(Xi[re+(l+-1<<2)>>2]|0):0)break a;l=l+1|0}while((l|0)<(f|0));Xi[ie+(f<<3)>>2]=(n|0)/(l|0)|0;Xi[ie+(f<<3)+4>>2]=(t|0)/(l|0)|0;Xi[re+(f<<2)>>2]=(o|0)/(l|0)|0;w=(f|0)>2;u=w?-99999:0;w=w?99999:0;b=0;k=u;l=u;h=w;s=w;do{_=Xi[ie+(b<<3)>>2]|0;l=(l|0)>(_|0)?l:_;m=Xi[ie+(b<<3)+4>>2]|0;u=(u|0)>(m|0)?u:m;p=Xi[re+(b<<2)>>2]|0;k=(k|0)>(p|0)?k:p;s=(s|0)>(_|0)?_:s;w=(w|0)>(m|0)?m:w;h=(h|0)>(p|0)?p:h;b=b+1|0}while((b|0)!=(f|0));b=u;c=h;u=n-l-s|0;n=f+1|0;h=ie+(n<<3)|0;Xi[h>>2]=u;t=t-b-w|0;s=ie+(n<<3)+4|0;Xi[s>>2]=t;l=o-k-c|0;n=re+(n<<2)|0;Xi[n>>2]=l;if((f|0)==4){Xi[h>>2]=(u|0)/2|0;Xi[s>>2]=(t|0)/2|0;Xi[n>>2]=(l|0)/2|0}f=f+2|0}else f=1}while(0);_=f+1|0;l=Xi[se>>2]|0;m=Gi[l+(A<<2)>>1]|0;p=Gi[l+(A<<2)+2>>1]|0;S=Wi[(Xi[U>>2]|0)+(F<<2)>>0]|0;Xi[ie+(_<<3)>>2]=m;Xi[ie+(_<<3)+4>>2]=p;Xi[re+(_<<2)>>2]=S;a:do{if((f|0)>-2){d=M<<4;v=Z+(F+-1)|0;E=Z+(F+1)|0;S=Z+(F-Q)|0;c=Z+(F+Q)|0;u=0;f=1073741824;b=0;while(1){k=Xi[W>>2]|0;h=k+32|0;k=Xi[k>>2]|0;w=(Zi(C,Xi[h>>2]|0)|0)+d|0;F=Xi[ie+(b<<3)>>2]|0;Xi[z>>2]=F;Gi[l+(A<<2)>>1]=F;F=Xi[ie+(b<<3)+4>>2]|0;Xi[V>>2]=F;Gi[l+(A<<2)+2>>1]=F;l=Xi[re+(b<<2)>>2]|0;if((l|0)>=0){Qz[Xi[j>>2]&31](Xi[K>>2]|0,l,1,0,z,M,P,0,0);do{if(y){if(!(Wi[v>>0]|0)){l=0;break}n=Xi[h>>2]|0;t=w+-1|0;o=0;l=0;do{F=Zi(o,n)|0;F=(qi[k+(t+F)>>0]|0)-(qi[k+(F+w)>>0]|0)|0;l=((F|0)>-1?F:0-F|0)+l|0;o=o+1|0}while((o|0)!=16)}else l=0}while(0);do{if(O){if(!(Wi[E>>0]|0))break;n=Xi[h>>2]|0;t=w|15;o=w+16|0;s=0;do{F=Zi(s,n)|0;F=(qi[k+(F+t)>>0]|0)-(qi[k+(o+F)>>0]|0)|0;l=((F|0)>-1?F:0-F|0)+l|0;s=s+1|0}while((s|0)!=16)}}while(0);do{if(N){if(!(Wi[S>>0]|0))break;n=Xi[h>>2]|0;t=0;do{F=t+w|0;F=(qi[k+(F-n)>>0]|0)-(qi[k+F>>0]|0)|0;l=((F|0)>-1?F:0-F|0)+l|0;t=t+1|0}while((t|0)!=16)}}while(0);do{if(D){if(!(Wi[c>>0]|0))break;t=Xi[h>>2]|0;n=t*15|0;t=t<<4;o=0;do{F=o+w|0;F=(qi[k+(F+n)>>0]|0)-(qi[k+(F+t)>>0]|0)|0;l=((F|0)>-1?F:0-F|0)+l|0;o=o+1|0}while((o|0)!=16)}}while(0);F=(l|0)>(f|0);u=F?u:b;f=F?f:l}if((b|0)>=(_|0))break a;l=Xi[se>>2]|0;b=b+1|0}}else u=0}while(0);f=Xi[ie+(u<<3)>>2]|0;Xi[z>>2]=f;l=Xi[ie+(u<<3)+4>>2]|0;Xi[V>>2]=l;if(Y){o=f&65535;s=Xi[se>>2]|0;f=l&65535;n=0;do{l=n+A|0;t=0;do{O=l+(Zi(t,G)|0)|0;Gi[s+(O<<2)>>1]=o;Gi[s+(O<<2)+2>>1]=f;t=t+1|0}while((t|0)!=(H|0));n=n+1|0}while((n|0)!=(H|0))}Qz[Xi[j>>2]&31](Xi[K>>2]|0,Xi[re+(u<<2)>>2]|0,1,0,z,M,P,0,0);do{if((Xi[z>>2]|0)==(m|0)){if((Xi[V>>2]|0)!=(p|0))break;Wi[g>>0]=1;f=0;break l}}while(0);Wi[g>>0]=2;i=i+1|0;f=0}}while(0);M=M+1|0;l=Xi[we>>2]|0}while((M|0)<(l|0))}else a=P+1|0;if((a|0)==(r|0))break;else P=a}}else i=0;I=I+1|0}}else{if(!X)break;n=e+672|0;t=e+584|0;o=e+588|0;s=e+776|0;u=e+780|0;i=Xi[we>>2]|0;h=0;do{if((i|0)>0){a=0;do{l=(Zi(Xi[ee>>2]|0,h)|0)+a|0;f=Xi[S>>2]|0;if(!f)f=0;else f=(Xi[f>>2]|0)!=0;f=f?1:2;do{if(!(Xi[(Xi[n>>2]|0)+(l<<2)>>2]&7)){if(!(Wi[(Xi[oe>>2]|0)+l>>0]&8))break;Xi[t>>2]=0;Xi[o>>2]=0;Qz[Xi[s>>2]&31](Xi[u>>2]|0,0,f,0,t,a,h,0,0);i=Xi[we>>2]|0}}while(0);a=a+1|0}while((a|0)<(i|0))}h=h+1|0}while((h|0)!=(r|0))}}while(0);i=Xi[ke>>2]|0;fe=264}}while(0);do{if((fe|0)==264){if((i|0)<=0){fe=265;break}T=e+540|0;_=e+672|0;m=be+36|0;p=be+40|0;D=e+564|0;F=e+568|0;N=e+572|0;C=Xi[we>>2]|0;y=(C|0)>0;R=0;do{if(y){O=R<<3;S=Xi[_>>2]|0;A=Zi(Xi[T>>2]|0,R)|0;M=0;do{g=A+M|0;if(!((Xi[S+(g<<2)>>2]&7|0)!=0?(Xi[le>>2]|0)!=0:0))fe=271;do{if((fe|0)==271){fe=0;v=Xi[ce>>2]|0;o=Xi[v>>2]|0;s=Xi[he>>2]|0;k=Zi(s,R)|0;c=Xi[v+4>>2]|0;d=Xi[m>>2]|0;v=Xi[v+8>>2]|0;E=Xi[p>>2]|0;u=Xi[ue>>2]|0;b=Zi(u,R)|0;h=Xi[D>>2]|0;k=k+M<<4;b=b+M<<1;w=0;do{a=w<<3&8;n=w>>>1<<3;r=0;t=0;do{l=Zi(s,t+n|0)|0;f=0;do{r=(qi[o+(f+a+l+k)>>0]|0)+r|0;f=f+1|0}while((f|0)!=8);t=t+1|0}while((t|0)!=8);Gi[h+((Zi(u,w>>1)|0)+(w&1)+b<<1)>>1]=(r+4|0)>>>3;w=w+1|0}while((w|0)!=4);r=M<<3;if(!v)break;s=(Zi(d,O)|0)+r|0;t=(Zi(E,O)|0)+r|0;f=0;r=0;o=0;do{a=Zi(d,o)|0;n=Zi(E,o)|0;l=0;do{f=(qi[c+(s+l+a)>>0]|0)+f|0;r=(qi[v+(t+l+n)>>0]|0)+r|0;l=l+1|0}while((l|0)!=8);o=o+1|0}while((o|0)!=8);Gi[(Xi[F>>2]|0)+(g<<1)>>1]=(f+4|0)>>>3;Gi[(Xi[N>>2]|0)+(g<<1)>>1]=(r+4|0)>>>3}}while(0);M=M+1|0}while((M|0)<(C|0))}R=R+1|0}while((R|0)<(i|0));R=F}}while(0);if((fe|0)==265){R=e+568|0;T=e+540|0;N=e+572|0;D=e+564|0;C=Xi[we>>2]|0}CN(e,Xi[D>>2]|0,C<<1,i<<1,Xi[ue>>2]|0,1);CN(e,Xi[R>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[T>>2]|0,0);CN(e,Xi[N>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[T>>2]|0,0);o=Xi[D>>2]|0;i=Xi[we>>2]|0;r=Xi[ke>>2]|0;s=Xi[ue>>2]|0;u=(r<<1)+-1|0;h=(u|0)>1;w=(i<<1)+-1|0;if(h){f=(w|0)>1;t=1;do{l=Zi(t,s)|0;if(f){a=Gi[o+(l<<1)>>1]|0;n=1;do{le=o+(n+l<<1)|0;fe=a;a=Gi[le>>1]|0;n=n+1|0;Gi[le>>1]=((((a<<3)-fe-(Gi[o+(n+l<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16}while((n|0)!=(w|0))}t=t+1|0}while((t|0)!=(u|0))}if((w|0)>1){l=1;do{if(h){f=Gi[o+(l<<1)>>1]|0;a=1;do{le=o+((Zi(a,s)|0)+l<<1)|0;fe=f;f=Gi[le>>1]|0;a=a+1|0;Gi[le>>1]=((((f<<3)-fe-(Gi[o+((Zi(a,s)|0)+l<<1)>>1]|0)|0)*10923|0)+32768|0)>>>16}while((a|0)!=(u|0))}l=l+1|0}while((l|0)!=(w|0))}if((r|0)>0){m=e+672|0;p=be+36|0;F=be+40|0;_=0;do{if((i|0)>0){v=_<<3;E=_<<1;S=0;do{i=(Zi(Xi[T>>2]|0,_)|0)+S|0;do{if(!(Xi[(Xi[m>>2]|0)+(i<<2)>>2]&120)){if(!(Wi[(Xi[oe>>2]|0)+i>>0]&2))break;c=Xi[ce>>2]|0;o=Xi[c>>2]|0;b=Zi(Xi[he>>2]|0,_)|0;t=S<<3;d=(Xi[c+4>>2]|0)+((Zi(Xi[p>>2]|0,v)|0)+t)|0;s=Xi[c+8>>2]|0;t=(Zi(Xi[F>>2]|0,v)|0)+t|0;u=(s|0)==0;d=u?0:d;h=c+32|0;w=S<<1;b=b+S<<4;k=0;do{r=k&1;f=k>>1;i=(Zi(f+E|0,Xi[ue>>2]|0)|0)+(r|w)|0;i=Gi[(Xi[D>>2]|0)+(i<<1)>>1]|0;if(i<<16>>16<0)i=0;else i=i<<16>>16>2040?2040:i<<16>>16;n=((i|0)/8|0)&255;a=r<<3;i=f<<3;l=0;do{r=l+i|0;f=0;do{Wi[o+(f+a+(Zi(Xi[h>>2]|0,r)|0)+b)>>0]=n;f=f+1|0}while((f|0)!=8);l=l+1|0}while((l|0)!=8);k=k+1|0}while((k|0)!=4);t=u?0:s+t|0;r=(Zi(Xi[T>>2]|0,_)|0)+S|0;i=Gi[(Xi[R>>2]|0)+(r<<1)>>1]|0;r=Gi[(Xi[N>>2]|0)+(r<<1)>>1]|0;if(i<<16>>16<0)n=0;else n=i<<16>>16>2040?-1:((i<<16>>16|0)/8|0)&255;if(!t)break;a=c+36|0;l=r<<16>>16<0?0:r<<16>>16>2040?-1:((r<<16>>16|0)/8|0)&255;i=c+40|0;f=0;do{r=0;do{Wi[d+((Zi(Xi[a>>2]|0,f)|0)+r)>>0]=n;Wi[t+((Zi(Xi[i>>2]|0,f)|0)+r)>>0]=l;r=r+1|0}while((r|0)!=8);f=f+1|0}while((f|0)!=8)}}while(0);S=S+1|0;i=Xi[we>>2]|0}while((S|0)<(i|0));r=Xi[ke>>2]|0}_=_+1|0}while((_|0)<(r|0))}do{if(Xi[(Xi[e>>2]|0)+676>>2]&2|0){PN(e,Xi[Xi[ce>>2]>>2]|0,i<<1,r<<1,Xi[he>>2]|0,1);LN(e,Xi[Xi[ce>>2]>>2]|0,Xi[we>>2]<<1,Xi[ke>>2]<<1,Xi[he>>2]|0,1);i=Xi[ce>>2]|0;if(!(Xi[i+8>>2]|0))break;he=be+36|0;PN(e,Xi[i+4>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[he>>2]|0,0);be=be+40|0;PN(e,Xi[(Xi[ce>>2]|0)+8>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[be>>2]|0,0);LN(e,Xi[(Xi[ce>>2]|0)+4>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[he>>2]|0,0);LN(e,Xi[(Xi[ce>>2]|0)+8>>2]|0,Xi[we>>2]|0,Xi[ke>>2]|0,Xi[be>>2]|0,0)}}while(0);if((Xi[ne>>2]|0)>0){r=e+580|0;l=0;do{f=Xi[(Xi[te>>2]|0)+(l<<2)>>2]|0;i=Xi[ae>>2]|0;do{if(i|0){if((Wi[(Xi[oe>>2]|0)+f>>0]&14)==0?1:(Xi[(Xi[ce>>2]|0)+88>>2]|0)==3)break;Wi[i+f>>0]=0}}while(0);i=Xi[r>>2]|0;if(i|0)Wi[i+f>>0]=1;l=l+1|0}while((l|0)<(Xi[ne>>2]|0))}UA(e+744|0);UA(e+752|0);Xi[e+664>>2]=0;Xi[se>>2]=0;UA(e+748|0);UA(e+756|0);l=ce;n=l+96|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(n|0))}}while(0);Ue=de;return}function DN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;do{if((Xi[(Xi[e>>2]|0)+48>>2]|0)==28)if(!(Xi[e+764>>2]|0)){Xi[l>>2]=98491;Xi[l+4>>2]=98461;Xi[l+8>>2]=48;nA(0,0,150445,l);$e()}else{Xi[i>>2]=4;f=Xi[e+532>>2]<<2;break}else{Xi[i>>2]=2;f=Xi[e+544>>2]|0}}while(0);Xi[r>>2]=f;Ue=a;return}function CN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;A=Ue;Ue=Ue+16|0;t=A;F=A+8|0;y=A+4|0;n=f<<3;if((n|0)!=0?(2147483647/(n>>>0)|0)>>>0>l>>>0:0)p=rA(Zi(n,l)|0)|0;else p=0;Xi[F>>2]=p;n=f<<4;if((n|0)!=0?(2147483647/(n>>>0)|0)>>>0>l>>>0:0){m=rA(Zi(n,l)|0)|0;Xi[y>>2]=m;if((m|0)!=0&(p|0)!=0){S=(f|0)>0;if(S){b=(r|0)>0;c=e+540|0;d=e+672|0;v=e+556|0;E=0;do{if(b){u=E>>a;h=Zi(E,l)|0;o=Xi[d>>2]|0;w=0;n=1024;t=-1;do{_=(Zi(Xi[c>>2]|0,u)|0)+(w>>a)|0;if((Xi[o+(_<<2)>>2]&7|0)!=0?(Wi[(Xi[v>>2]|0)+_>>0]&4)!=0:0)s=w+h|0;else{n=w+h|0;s=n;n=Gi[i+(n<<1)>>1]|0;t=w}Gi[p+(s<<3)+2>>1]=n;Xi[m+(s<<4)+4>>2]=(t|0)>-1?w-t|0:9999;w=w+1|0}while((w|0)!=(r|0));if(b){u=E>>a;h=Zi(E,l)|0;s=Xi[d>>2]|0;w=r;n=1024;t=-1;do{k=w;w=w+-1|0;_=(Zi(Xi[c>>2]|0,u)|0)+(w>>a)|0;if((Xi[s+(_<<2)>>2]&7|0)!=0?(Wi[(Xi[v>>2]|0)+_>>0]&4)!=0:0)o=w+h|0;else{n=w+h|0;o=n;n=Gi[i+(n<<1)>>1]|0;t=w}Gi[p+(o<<3)>>1]=n;Xi[m+(o<<4)>>2]=(t|0)>-1?t-w|0:9999}while((k|0)>1)}}E=E+1|0}while((E|0)!=(f|0))}_=(r|0)>0;if(_){k=e+540|0;b=e+672|0;c=e+556|0;d=0;do{if(S){u=d>>a;s=Xi[b>>2]|0;h=0;n=1024;t=-1;do{E=(Zi(Xi[k>>2]|0,h>>a)|0)+u|0;if((Xi[s+(E<<2)>>2]&7|0)!=0?(Wi[(Xi[c>>2]|0)+E>>0]&4)!=0:0)o=(Zi(h,l)|0)+d|0;else{n=(Zi(h,l)|0)+d|0;o=n;n=Gi[i+(n<<1)>>1]|0;t=h}Gi[p+(o<<3)+6>>1]=n;Xi[m+(o<<4)+12>>2]=(t|0)>-1?h-t|0:9999;h=h+1|0}while((h|0)!=(f|0));if(S){u=d>>a;s=Xi[b>>2]|0;h=f;n=1024;t=-1;do{w=h;h=h+-1|0;E=(Zi(Xi[k>>2]|0,h>>a)|0)+u|0;if((Xi[s+(E<<2)>>2]&7|0)!=0?(Wi[(Xi[c>>2]|0)+E>>0]&4)!=0:0)o=(Zi(h,l)|0)+d|0;else{n=(Zi(h,l)|0)+d|0;o=n;n=Gi[i+(n<<1)>>1]|0;t=h}Gi[p+(o<<3)+4>>1]=n;Xi[m+(o<<4)+8>>2]=(t|0)>-1?t-h|0:9999}while((w|0)>1)}}d=d+1|0}while((d|0)!=(r|0))}if(S){E=e+540|0;S=e+672|0;c=e+556|0;v=0;do{if(_){w=Zi(v,l)|0;h=Xi[S>>2]|0;k=Zi(Xi[E>>2]|0,v>>a)|0;d=0;do{e=k+(d>>a)|0;if((Xi[h+(e<<2)>>2]&120|0)==0?Wi[(Xi[c>>2]|0)+e>>0]&4:0){b=d+w|0;t=0;n=0;s=0;o=0;u=0;do{e=Xi[m+(b<<4)+(u<<2)>>2]|0;e=268435456/((e>>>0>1?e:1)>>>0)|0;g=Gi[p+(b<<3)+(u<<1)>>1]|0;g=rN(g|0,((g|0)<0)<<31>>31|0,e|0,0)|0;t=WT(g|0,Ie|0,t|0,n|0)|0;n=Ie;s=WT(e|0,0,s|0,o|0)|0;o=Ie;u=u+1|0}while((u|0)!=4);g=eN(s|0,o|0,2,0)|0;g=WT(g|0,Ie|0,t|0,n|0)|0;g=eN(g|0,Ie|0,s|0,o|0)|0;Gi[i+(b<<1)>>1]=g}d=d+1|0}while((d|0)!=(r|0))}v=v+1|0}while((v|0)!=(f|0))}}else O=10}else{Xi[y>>2]=0;O=10}if((O|0)==10)nA(Xi[e>>2]|0,16,98509,t);vA(F);vA(y);Ue=A;return}function PN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0;I=Ue;Ue=Ue+16|0;N=I+4|0;L=I;DN(e,N,L);T=Xi[N>>2]>>a;Xi[N>>2]=T;N=Zi(Xi[L>>2]|0,T)|0;Xi[L>>2]=N;if((f|0)>0){D=(r|0)>1;C=e+540|0;P=e+556|0;L=e+672|0;R=e+656|0;m=r+-1|0;M=0;do{if(D){p=M>>a;F=Zi(M,l)|0;y=Zi(N,M)|0;g=0;do{r=Zi(Xi[C>>2]|0,p)|0;e=r+(g>>a)|0;S=Xi[P>>2]|0;_=Wi[S+e>>0]|0;t=g;g=g+1|0;r=r+(g>>a)|0;S=Wi[S+r>>0]|0;n=Xi[L>>2]|0;w=t+F<<3;t=(Zi(T,t)|0)+y|0;o=Xi[R>>2]|0;s=o+(t<<2)|0;u=(Zi(T,g)|0)+y|0;h=o+(u<<2)|0;O=(_&14)!=0;A=(S&14)!=0;do{if((S|_)&14){if(((Xi[n+(e<<2)>>2]|Xi[n+(r<<2)>>2])&7|0)==0?(_=(Gi[s>>1]|0)-(Gi[h>>1]|0)|0,S=(Gi[o+(u<<2)+2>>1]|0)+(Gi[o+(t<<2)+2>>1]|0)|0,(((S|0)>-1?S:0-S|0)+((_|0)>-1?_:0-_|0)|0)<2):0)break;k=w|7;b=w|6;c=w+8|0;d=w+9|0;_=O&A;v=w|5;E=w|4;S=w+10|0;r=w+11|0;w=0;do{n=Zi(w,l)|0;t=i+(n+k)|0;o=qi[t>>0]|0;s=i+(n+b)|0;B=o-(qi[s>>0]|0)|0;u=i+(c+n)|0;e=qi[u>>0]|0;H=e-o|0;h=i+(d+n)|0;e=(qi[h>>0]|0)-e|0;e=((H|0)>-1?H:0-H|0)-(((B|0)>-1?B:0-B|0)+1+((e|0)>-1?e:0-e|0)>>1)|0;e=(e|0)>0?e:0;e=(H|0)<0?0-e|0:e;if(e|0){e=_?e:(e<<4|0)/9|0;if(O){Wi[t>>0]=Wi[129121+((o|1024)+(e*7>>4))>>0]|0;Wi[s>>0]=Wi[129121+((e*5>>4)+1024+(qi[s>>0]|0))>>0]|0;B=i+(n+v)|0;Wi[B>>0]=Wi[129121+((e*3>>4)+1024+(qi[B>>0]|0))>>0]|0;B=i+(n+E)|0;Wi[B>>0]=Wi[129121+((e>>4)+1024+(qi[B>>0]|0))>>0]|0}if(A){Wi[u>>0]=Wi[129121+(1024-(e*7>>4)+(qi[u>>0]|0))>>0]|0;Wi[h>>0]=Wi[129121+(1024-(e*5>>4)+(qi[h>>0]|0))>>0]|0;B=i+(S+n)|0;Wi[B>>0]=Wi[129121+(1024-(e*3>>4)+(qi[B>>0]|0))>>0]|0;B=i+(r+n)|0;Wi[B>>0]=Wi[129121+(1024-(e>>4)+(qi[B>>0]|0))>>0]|0}}w=w+1|0}while((w|0)!=8)}}while(0)}while((g|0)!=(m|0))}M=M+1|0}while((M|0)!=(f|0))}Ue=I;return}function LN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0;U=Ue;Ue=Ue+16|0;P=U+4|0;B=U;DN(e,P,B);C=Xi[P>>2]>>a;Xi[P>>2]=C;P=Zi(Xi[B>>2]|0,C)|0;Xi[B>>2]=P;if((f|0)>1){L=(r|0)>0;I=e+540|0;H=e+556|0;B=e+672|0;D=e+656|0;y=l*7|0;O=l*6|0;A=l<<3;g=l*9|0;M=l*5|0;R=l<<2;T=l*10|0;N=l*11|0;F=f+-1|0;f=0;while(1){if(L){_=f>>a;e=f+1|0;m=e>>a;p=Zi(f,l)|0;b=Zi(P,f)|0;c=Zi(P,e)|0;S=0;do{n=S>>a;t=Xi[I>>2]|0;f=(Zi(t,_)|0)+n|0;x=Xi[H>>2]|0;k=Wi[x+f>>0]|0;n=(Zi(t,m)|0)+n|0;x=Wi[x+n>>0]|0;t=Xi[B>>2]|0;d=S+p<<3;h=Zi(C,S)|0;o=h+b|0;s=Xi[D>>2]|0;u=s+(o<<2)|0;h=h+c|0;w=s+(h<<2)|0;v=(k&14)!=0;E=(x&14)!=0;do{if((x|k)&14){if(((Xi[t+(f<<2)>>2]|Xi[t+(n<<2)>>2])&7|0)==0?(x=(Gi[u>>1]|0)-(Gi[w>>1]|0)|0,k=(Gi[s+(h<<2)+2>>1]|0)+(Gi[s+(o<<2)+2>>1]|0)|0,(((k|0)>-1?k:0-k|0)+((x|0)>-1?x:0-x|0)|0)<2):0)break;w=v&E;k=0;do{n=k+d|0;t=i+(n+y)|0;o=qi[t>>0]|0;s=i+(n+O)|0;z=o-(qi[s>>0]|0)|0;u=i+(n+A)|0;f=qi[u>>0]|0;x=f-o|0;h=i+(n+g)|0;f=(qi[h>>0]|0)-f|0;f=((x|0)>-1?x:0-x|0)-(((z|0)>-1?z:0-z|0)+1+((f|0)>-1?f:0-f|0)>>1)|0;f=(f|0)>0?f:0;f=(x|0)<0?0-f|0:f;if(f|0){f=w?f:(f<<4|0)/9|0;if(v){Wi[t>>0]=Wi[129121+((o|1024)+(f*7>>4))>>0]|0;Wi[s>>0]=Wi[129121+((f*5>>4)+1024+(qi[s>>0]|0))>>0]|0;z=i+(n+M)|0;Wi[z>>0]=Wi[129121+((f*3>>4)+1024+(qi[z>>0]|0))>>0]|0;z=i+(n+R)|0;Wi[z>>0]=Wi[129121+((f>>4)+1024+(qi[z>>0]|0))>>0]|0}if(E){Wi[u>>0]=Wi[129121+(1024-(f*7>>4)+(qi[u>>0]|0))>>0]|0;Wi[h>>0]=Wi[129121+(1024-(f*5>>4)+(qi[h>>0]|0))>>0]|0;z=i+(n+T)|0;Wi[z>>0]=Wi[129121+(1024-(f*3>>4)+(qi[z>>0]|0))>>0]|0;z=i+(n+N)|0;Wi[z>>0]=Wi[129121+(1024-(f>>4)+(qi[z>>0]|0))>>0]|0}}k=k+1|0}while((k|0)!=8)}}while(0);S=S+1|0}while((S|0)!=(r|0))}else e=f+1|0;if((e|0)==(F|0))break;else f=e}}Ue=U;return}function IN(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+16|0;w=k;n=Xi[e+60>>2]|0;s=n+4|0;Xi[s>>2]=e;Xi[n+25980>>2]=-1;Xi[n+25984>>2]=-1;Xi[n+25988>>2]=-1;Xi[n+207620>>2]=-1;Xi[n+26656>>2]=-1;Xi[n+209240>>2]=-1;Xi[n+205812>>2]=3;Xi[n+208976>>2]=1;Xi[n+26012>>2]=Xi[e+668>>2];Xi[n+26008>>2]=Xi[e+92>>2];Xi[n+207652>>2]=65536;Xi[n+206420>>2]=-1;Xi[n+209088>>2]=-1;Xi[n+209092>>2]=0;Xi[n+207668>>2]=-1;Xi[n+209068>>2]=-1;Xi[n+208156>>2]=-2147483648;Xi[n+208088>>2]=-2147483648;Xi[n+208092>>2]=-2147483648;Xi[n+208096>>2]=-2147483648;Xi[n+208100>>2]=-2147483648;Xi[n+208104>>2]=-2147483648;Xi[n+208108>>2]=-2147483648;Xi[n+208112>>2]=-2147483648;Xi[n+208116>>2]=-2147483648;Xi[n+208120>>2]=-2147483648;Xi[n+208124>>2]=-2147483648;Xi[n+208128>>2]=-2147483648;Xi[n+208132>>2]=-2147483648;Xi[n+208136>>2]=-2147483648;Xi[n+208140>>2]=-2147483648;Xi[n+208144>>2]=-2147483648;Xi[n+208148>>2]=-2147483648;bC(n);Xi[e+404>>2]=1;h=e+808|0;f=Xi[h>>2]&2|0?32:1;l=n+25956|0;Xi[l>>2]=f;f=iA(f*49776|0)|0;a=n+25952|0;Xi[a>>2]=f;e:do{if(f){r=xg()|0;f=0;do{Xi[n+716+(f*664|0)>>2]=r;f=f+1|0;if(!r){i=-12;break e}r=xg()|0}while((f|0)<36);Xi[n+24624>>2]=r;if((r|0)!=0?(f=xg()|0,Xi[n+25288>>2]=f,(f|0)!=0):0){l=Xi[l>>2]|0;if((l|0)>0){r=Xi[a>>2]|0;f=0;do{Xi[r+(f*49776|0)>>2]=n;f=f+1|0}while((f|0)!=(l|0))}if(!(Xi[e+180>>2]|0))Xi[n+26e3>>2]=1;if(!(Wi[232716]|0)){FD();Wi[232716]=1}if((Xi[e+48>>2]|0)==28){r=e+116|0;do{if((Xi[r>>2]|0)==1){f=Xi[s>>2]|0;l=f+112|0;a=Xi[l>>2]|0;if((a|0)<1073741823){Xi[l>>2]=a<<1;break}else{a=f+108|0;Xi[a>>2]=(Xi[a>>2]|0)/2|0;break}}}while(0);Xi[r>>2]=2}r=Xi[e+104>>2]|0;if(((r|0)>0?(u=Xi[e+100>>2]|0,u|0):0)?(i=HN(n,u,r)|0,(i|0)<0):0){YN(e)|0;break}if(Xi[n+27320>>2]|0?(t=(Xi[s>>2]|0)+180|0,o=Xi[n+27324>>2]|0,(Xi[t>>2]|0)<(o|0)):0){Xi[t>>2]=o;Xi[n+26e3>>2]=0}Xi[(Xi[e+64>>2]|0)+4>>2]=1;WN(n);i=n+209328|0;r=Xi[i>>2]|0;if((r|0)<0){if(Xi[h>>2]&2|0){Xi[i>>2]=0;i=0;break}}else if(!r){i=0;break}if(!(Xi[h>>2]&2))i=0;else{nA(e,24,100791,w);i=0}}else i=-12}else{Xi[l>>2]=0;i=-12}}while(0);Ue=k;return i|0}function HN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=Ue;Ue=Ue+32|0;h=k+16|0;s=k+8|0;l=k;w=Xi[e+4>>2]|0;e:do{if((i|0)==0|(r|0)<1)f=-1;else{f=e+206452|0;if((Wi[i>>0]|0)!=1){Xi[f>>2]=0;f=BN(e,i,r,1)|0;if((f|0)<0)break}else{Xi[f>>2]=1;if((r|0)<7){Xi[l>>2]=r;nA(w,16,100183,l);f=-1094995529;break}u=e+206456|0;Xi[u>>2]=2;t=qi[i+5>>0]&31;f=i+6|0;i:do{if(t){o=i+r|0;l=0;n=f;while(1){a=(qi[n>>0]|qi[n+1>>0]<<8)&65535;a=(a<<8&65280|a>>>8)+2|0;if((a|0)>(o-n|0)){f=-1094995529;break e}f=BN(e,n,a,1)|0;if((f|0)<0)break;f=n+a|0;l=l+1|0;if((l|0)>=(t|0))break i;else n=f}Xi[s>>2]=l;nA(w,16,100723,s);break e}}while(0);s=Wi[f>>0]|0;t=s&255;i:do{if(s<<24>>24){o=i+r|0;l=0;n=f+1|0;while(1){a=(qi[n>>0]|qi[n+1>>0]<<8)&65535;a=(a<<8&65280|a>>>8)+2|0;if((a|0)>(o-n|0)){f=-1094995529;break e}f=BN(e,n,a,1)|0;if((f|0)<0)break;l=l+1|0;if((l|0)>=(t|0))break i;else n=n+a|0}Xi[h>>2]=l;nA(w,16,100757,h);break e}}while(0);Xi[u>>2]=(qi[i+4>>0]&3)+1}f=r}}while(0);Ue=k;return f|0}function BN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0;Ae=Ue;Ue=Ue+144|0;de=Ae+112|0;ce=Ae+104|0;be=Ae+88|0;ke=Ae+80|0;we=Ae+72|0;Se=Ae+64|0;Ee=Ae+56|0;he=Ae+48|0;ue=Ae+40|0;ve=Ae+16|0;_e=Ae+8|0;m=Ae;se=Ae+132|0;_=Ae+128|0;S=Ae+120|0;te=Ae+124|0;oe=Ae+116|0;pe=e+4|0;fe=Xi[pe>>2]|0;le=e+206448|0;Xi[le>>2]=0;l=e+208976|0;a=Xi[l>>2]|0;if(!a){Xi[l>>2]=1;a=1}re=e+208972|0;Xi[re>>2]=a;ie=fe+96|0;if(!(Xi[ie>>2]&32768)){Xi[e+208968>>2]=0;if(!(Xi[e+205816>>2]|0))Xi[e+24620>>2]=0;bC(e)}ee=e+206456|0;do{if((Xi[ee>>2]|0)==4){if((r|0)>8){l=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;if((l|0)==16777216){$=i+5|0;if((ZT(qi[$>>0]|qi[$+1>>0]<<8|qi[$+2>>0]<<16|qi[$+3>>0]<<24|0)|0)>>>0>r>>>0){Xi[e+206452>>2]=0;break}else l=16777216}}else{if((r|0)<=3)break;l=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24}$=ZT(l|0)|0;if(!($>>>0<2|$>>>0>r>>>0))Xi[e+206452>>2]=1}}while(0);$=fe+808|0;if(!(Xi[$>>2]&1)){J=e+206452|0;v=i;E=e+25952|0;q=0}else{d=e+206452|0;v=i;E=e+25952|0;l=0;c=0;t=0;a=0;n=Xi[d>>2]|0?0:r;e:while(1){b=(c|0)!=0;o=t;i:while(1){h=o;r:while(1){t=i+(n+1)|0;while(1){if((l|0)>=(n|0)){o=l;Fe=23;break}Xi[se>>2]=-1;l=(qO(i+l|0,t,se)|0)-v+-1|0;l=(l|0)>(r|0)?r:l;if((l|0)>=(r|0)){l=a;break e}if((l|0)<(n|0)){o=l;break}}if((Fe|0)==23){Fe=0;s=Xi[ee>>2]|0;if((o|0)>=(r-s|0)){l=a;break e}if((s|0)<=0){l=0;Fe=28;break e}u=(s|0)>1;n=o;t=0;l=0;while(1){l=qi[i+n>>0]|0|l<<8;t=t+1|0;if((t|0)==(s|0))break;else n=n+1|0}n=(u?s:1)+o|0;if((l|0)<1|(l|0)>(r-n|0)){Fe=28;break e}if((l|0)<0){l=a;break e}o=n;n=l+n|0}s=UN(e,Xi[E>>2]|0,i+o|0,_,S,n-o|0)|0;t=Xi[_>>2]|0;if((s|0)==0|(t|0)<0){l=-1094995529;break e}l=(Xi[S>>2]|0)+o|0;o=xN(e,i,s,t,l,n)|0;t=h+1|0;u=Xi[le>>2]|0;switch(u|0){case 8:case 7:{o=t;a=t;continue i}case 1:case 5:case 2:{w=u;k=n;break r}default:h=t}}h=o>>>0<2147483640?s:0;n=qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24;o=ZT(n|0)|0;n=ZT(n&65535|0)|0;s=h+2|0;n=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)>>>16|n;s=n>>>0>65535;n=s?o>>>16:n;s=s?16:0;o=(n&65280|0)==0;n=(o?s:s|8)+(qi[145894+(o?n:n>>>8)>>0]|0)|0;o=31-n|0;s=o+1|0;do{if(s){u=h+(o>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(o&7);if((s|0)<26){n=u>>>n;break}else{n=o+16|0;Q=h+(n>>>3)|0;n=(ZT(qi[Q>>0]|qi[Q+1>>0]<<8|qi[Q+2>>0]<<16|qi[Q+3>>0]<<24|0)|0)<<(n&7)>>>(47-o|0)|u>>>16<<o+-15;break}}else n=0}while(0);a=(c|0)==(w|0)&(b&(n|0)!=1)?a:t;if(b){o=t;n=k}else{c=w;n=k;continue e}}}if((Fe|0)==28){Q=Xi[pe>>2]|0;Xi[m>>2]=l;nA(Q,16,100202,m);l=a}J=d;q=l}G=fe+844|0;X=e+206444|0;D=(f|0)==0;Z=e+208968|0;C=e+209096|0;P=e+36792|0;L=e+209056|0;I=e+207648|0;H=e+209088|0;B=e+26680|0;U=e+209060|0;Q=e+24620|0;x=e+209092|0;z=fe+704|0;V=e+696|0;Y=e+708|0;j=e+712|0;K=e+700|0;W=e+704|0;l=0;a=0;S=0;n=0;t=Xi[J>>2]|0?0:r;e:while(1){d=n;while(1){n=i+(t+1)|0;while(1){if((l|0)>=(t|0)){Fe=45;break}Xi[se>>2]=-1;l=(qO(i+l|0,n,se)|0)-v+-1|0;l=(l|0)>(r|0)?r:l;if((l|0)>=(r|0)){Fe=129;break e}if((l|0)<(t|0)){h=l;c=0;break}}if((Fe|0)==45){Fe=0;t=Xi[ee>>2]|0;if((l|0)>=(r-t|0)){Fe=129;break e}if((t|0)<=0){n=0;Fe=50;break e}u=(t|0)>1?t:1;o=l;s=0;n=0;while(1){n=qi[i+o>>0]|0|n<<8;s=s+1|0;if((s|0)>=(t|0))break;else o=o+1|0}l=l+u|0;if((n|0)<1|(n|0)>(r-l|0)){Fe=50;break e}if((n|0)<0){Fe=129;break e}h=l;c=n;t=n+l|0}s=(Xi[E>>2]|0)+(a*49776|0)|0;u=i+h|0;w=UN(e,s,u,oe,te,t-h|0)|0;n=Xi[oe>>2]|0;if((w|0)==0|(n|0)<0){ye=h;Oe=-1;break e}k=Xi[te>>2]|0;l=k+h|0;b=xN(e,i,w,n,l,t)|0;o=Xi[pe>>2]|0;if(Xi[o+680>>2]&256|0){N=Xi[X>>2]|0;Xi[ve>>2]=Xi[le>>2];Xi[ve+4>>2]=N;Xi[ve+8>>2]=h;Xi[ve+12>>2]=r;Xi[ve+16>>2]=n;nA(o,48,100220,ve)}if(Xi[J>>2]|0?(c|0)!=0&(c|0)!=(k|0):0){N=Xi[pe>>2]|0;Xi[ue>>2]=k;Xi[ue+4>>2]=c;nA(N,48,100250,ue)}n=d+1|0;if((Xi[G>>2]|0)<=7){o=c;break}if(Xi[X>>2]|0){o=c;break}if((Xi[le>>2]|0)==6){o=c;break}else d=n}N=b>>>0<2147483640;R=N?b:0;N=N?w:0;m=R+8|0;f=N+(R+7>>3)|0;p=(q|0)<(n|0);F=(n|0)>=(q|0)&1;y=(o|0)!=0;M=t+-1-l+k|0;O=(M|0)>268435454;T=i+(l+1-k)|0;M=M<<3;A=(T|0)!=0&M>>>0<2147483640;M=A?M:0;T=A?T:0;A=M+8|0;g=T+(M>>3)|0;_=(t-l+k|0)==(o|0);h=S;while(1){o=Xi[le>>2]|0;i:do{if(D){if((o|0)>=8){if((o|0)<12)switch(o|0){case 11:case 10:case 9:{o=0;c=h;break i}case 8:{Fe=114;break i}default:{Fe=116;break i}}if((o|0)<19)switch(o|0){case 13:case 12:{o=0;c=h;break i}default:{Fe=116;break i}}if((o|0)<267448321)switch(o|0){case 19:{o=0;c=h;break i}default:{Fe=116;break i}}else switch(o|0){case 267448321:{o=0;c=h;break i}default:{Fe=116;break i}}}switch(o|0){case 6:{Fe=105;break i}case 7:{Fe=107;break i}case 5:{Fe=70;break}case 1:{S=h;break}case 4:case 3:case 2:{bM(fe,100545,we);o=0;c=h;break i}default:{Fe=116;break i}}if((Fe|0)==70){Fe=0;if((Wi[w>>0]&-4)<<24>>24==-104){Fe=71;break e}if(!h){if(Xi[Z>>2]|0?Xi[$>>2]&2|0:0){Fe=75;break e}zN(e)}Xi[C>>2]=1;S=1}Xi[s+4>>2]=N;Xi[s+16>>2]=R;Xi[s+20>>2]=m;Xi[s+8>>2]=f;Xi[s+12>>2]=0;if(!(p?(Xi[$>>2]&1|a|0)!=0:0))Xi[P>>2]=-1;o=_C(e,s)|0;if(!o){c=Xi[L>>2]|0;do{if((c|0)>-1){d=Xi[I>>2]|0;if(!((d|0)==(c|0)?(Xi[s+816>>2]|0)==1:0))Xi[U>>2]=1;h=Xi[H>>2]|0;if((h|0)>=0){o=Xi[B>>2]|0;if(((1<<o)+-1&h-d)>>>0<=c>>>0)break}else o=Xi[B>>2]|0;c=(1<<o)+-1&c+d;Xi[H>>2]=c;Xi[H>>2]=(Xi[U>>2]|0)==0?d:c}}while(0);d=(Xi[le>>2]|0)==5;o=Xi[Q>>2]|0;c=(Xi[o>>2]|0)+84|0;Xi[c>>2]=Xi[c>>2]|d&1;if(d){Xi[H>>2]=-1;Xi[o+640>>2]=1;h=Xi[x>>2]|1;Xi[x>>2]=h}else{if((Xi[H>>2]|0)==(Xi[I>>2]|0)){Xi[H>>2]=-1;Xi[o+640>>2]=1}h=Xi[x>>2]|0}d=o+640|0;Xi[d>>2]=Xi[d>>2]|h;if((Xi[Z>>2]|0)==1){if(!(Xi[ie>>2]&32768))VN(e,F);o=Xi[pe>>2]|0;h=Xi[o+704>>2]|0;if(h|0?(ae=Wz[Xi[h+28>>2]&7](o,i,r)|0,(ae|0)<0):0){ye=l;Oe=ae;break e}}if(!(Xi[s+21804>>2]|0)){o=Xi[z>>2]|0;if(o){o=Wz[Xi[o+32>>2]&7](fe,u,k)|0;if((o|0)<0){ye=l;Oe=o;break e}else{o=0;c=S;break}}else{a=a+1|0;o=0;c=S;break}}else{o=0;c=S}}else c=S}else{r:do{if((o|0)>=8){if((o|0)<12)switch(o|0){case 8:{Fe=114;break i}case 11:case 10:case 9:{o=0;c=h;break i}default:{Fe=116;break i}}if((o|0)<19)switch(o|0){case 13:case 12:{o=0;c=h;break i}default:{Fe=116;break i}}if((o|0)<267448321)switch(o|0){case 19:break r;default:{Fe=116;break i}}else switch(o|0){case 267448321:{o=0;c=h;break i}default:{Fe=116;break i}}}else{switch(o|0){case 6:{Fe=105;break i}case 7:{Fe=107;break i}case 4:case 3:case 2:case 1:case 5:break;default:{Fe=116;break i}}S=Xi[pe>>2]|0;Xi[he>>2]=o;nA(S,24,100293,he)}}while(0);Xi[le>>2]=267448321;o=0;c=h}}while(0);do{if((Fe|0)==105){Fe=0;Xi[V>>2]=N;Xi[Y>>2]=R;Xi[j>>2]=m;Xi[K>>2]=f;Xi[W>>2]=0;o=cC(e)|0;if((o|0)<0?(Xi[(Xi[pe>>2]|0)+688>>2]&8|0)!=0:0){ye=l;Oe=o;break e}else{o=0;c=h}}else if((Fe|0)==107){Fe=0;Xi[V>>2]=N;Xi[Y>>2]=R;Xi[j>>2]=m;Xi[K>>2]=f;Xi[W>>2]=0;if((WD(e,0)|0)>-1){o=0;c=h}else{if(y|(Xi[J>>2]|0)==0){nA(Xi[pe>>2]|0,48,100563,ke);if(!((Xi[J>>2]|0)==0|_)){Fe=110;break e}if(O){o=0;c=h;break}Xi[V>>2]=T;Xi[Y>>2]=M;Xi[j>>2]=A;Xi[K>>2]=g;Xi[W>>2]=0;if((WD(e,0)|0)>-1){o=0;c=h;break}}Xi[V>>2]=N;Xi[Y>>2]=R;Xi[j>>2]=m;Xi[K>>2]=f;Xi[W>>2]=0;WD(e,1)|0;o=0;c=h}}else if((Fe|0)==114){Fe=0;Xi[V>>2]=N;Xi[Y>>2]=R;Xi[j>>2]=m;Xi[K>>2]=f;Xi[W>>2]=0;o=JD(e,b)|0;if((o|0)<0?(Xi[(Xi[pe>>2]|0)+688>>2]&8|0)!=0:0){ye=l;Oe=o;break e}else{o=0;c=h}}else if((Fe|0)==116){Fe=0;Xi[ce>>2]=o;Xi[ce+4>>2]=b;nA(fe,48,100664,ce);o=0;c=h}}while(0);if((a|0)==(Xi[re>>2]|0)){a=AC(e,a)|0;if((a|0)<0?(Xi[(Xi[pe>>2]|0)+688>>2]&8|0)!=0:0){ye=l;Oe=a;break e}else a=0}h=(o|0)<0;if(h|(o|0)==2)break;if((o|0)!=1){S=c;continue e}if((a|0?(ne=AC(e,a)|0,(ne|0)<0):0)?Xi[(Xi[pe>>2]|0)+688>>2]&8|0:0){ye=l;Oe=ne;break e}a=0;h=c;s=Xi[E>>2]|0}if(h)nA(Xi[pe>>2]|0,16,100696,de);Xi[s+23380>>2]=0;Xi[s+23376>>2]=0;Xi[s+23372>>2]=0;S=c}if((Fe|0)==50){Oe=Xi[pe>>2]|0;Xi[_e>>2]=n;nA(Oe,16,100202,_e);Fe=129}else if((Fe|0)==71){nA(Xi[pe>>2]|0,16,100337,Ee);Xi[e+208156>>2]=-2147483648;ye=l;Oe=-1}else if((Fe|0)==75){nA(e,16,100362,Se);ye=l;Oe=-1094995529}else if((Fe|0)==110){Xi[be>>2]=100621;Xi[be+4>>2]=100508;Xi[be+8>>2]=1615;nA(0,0,150445,be);$e()}do{if((Fe|0)==129){if((a|0?(me=AC(e,a)|0,(me|0)<0):0)?Xi[(Xi[pe>>2]|0)+688>>2]&8|0:0){ye=l;Oe=me;break}ye=l;Oe=0}}while(0);t=Xi[E>>2]|0;o=e+205812|0;if((((Xi[o>>2]|0)==3?Xi[Z>>2]|0:0)?(Xi[e+27860>>2]|0)==0:0)?Xi[e+209328>>2]|0:0){l=e+25288|0;if(!(Xi[(Xi[l>>2]|0)+248>>2]|0))n=0;else n=(Xi[t+23372>>2]|0)==0;a=t+24|0;jD(t+672|0,Xi[Q>>2]|0);do{if(!n){l=t+704|0;if(!(Xi[t+23372>>2]|0)){jD(l,0);break}else{jD(l,Xi[t+23420>>2]|0);break}}else{jD(t+704|0,l);Fe=t+23384|0;Xi[t+23420>>2]=l;pe=Xi[l>>2]|0;Xi[Fe>>2]=Xi[pe>>2];Xi[Fe+4>>2]=Xi[pe+4>>2];Xi[Fe+8>>2]=Xi[pe+8>>2];Fe=t+23396|0;pe=(Xi[l>>2]|0)+32|0;Xi[Fe>>2]=Xi[pe>>2];Xi[Fe+4>>2]=Xi[pe+4>>2];Xi[Fe+8>>2]=Xi[pe+8>>2];Xi[t+23408>>2]=Xi[e+25924>>2]}}while(0);if(Xi[t+23376>>2]|0)jD(t+736|0,Xi[t+25340>>2]|0);Xi[t+796>>2]=Xi[t+23372>>2];NN(a);if(n){l=t+23384|0;a=l+40|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(a|0))}}l=Xi[Q>>2]|0;if(l|0?(Xi[e+25992>>2]|0)==0:0)VO(l+4|0,2147483647,(Xi[o>>2]|0)==2&1);Ue=Ae;return((Oe|0)<0?Oe:ye)|0}function UN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0;Xi[e+206444>>2]=(qi[r>>0]|0)>>>5;Xi[e+206448>>2]=qi[r>>0]&31;u=r+1|0;o=a+-1|0;e:do{if((o|0)>1){a=0;while(1){if(!(Wi[r+(a+1)>>0]|0)){if((a|0)>0)a=(((Wi[r+a>>0]|0)==0)<<31>>31)+a|0;s=a+2|0;if(((s|0)<(o|0)?(Wi[r+s>>0]|0)==0:0)?(n=Wi[r+(a+3)>>0]|0,(n&255)<4):0)break;else t=a}else t=a;a=t+2|0;if((t+3|0)>=(o|0)){s=a;break e}}switch(n<<24>>24){case 0:case 3:{s=a;break e}default:{}}o=a;s=a}else s=0}while(0);a=i+49756|0;kO(a,i+49760|0,o+262144|0);a=Xi[a>>2]|0;do{if(!a)a=0;else{if((s|0)>=(o+-1|0)){Xi[f>>2]=o;Xi[l>>2]=o+1;if(Xi[(Xi[e+4>>2]|0)+96>>2]&1|0){a=u;break}qT(a|0,u|0,o|0)|0;break}qT(a|0,u|0,s|0)|0;n=s+2|0;e:do{if((n|0)<(o|0)){t=s;e=s;while(1){s=e+3|0;i=Wi[r+s>>0]|0;u=Wi[r+(e+1)>>0]|0;if((i&255)<=3)if(u<<24>>24==0?!(i<<24>>24==0?1:(Wi[r+(e+2)>>0]|0)!=0):0){if(i<<24>>24!=3){s=t;o=e;break e}Wi[a+t>>0]=0;Wi[a+(t+1)>>0]=0;t=t+2|0}else{n=e;h=25}else{Wi[a+t>>0]=u;Wi[a+(t+1)>>0]=Wi[r+(e+2)>>0]|0;t=t+2|0;h=25}if((h|0)==25){h=0;s=n+1|0;Wi[a+t>>0]=Wi[r+s>>0]|0;t=t+1|0}n=s+2|0;if((n|0)>=(o|0)){n=t;i=s;h=16;break}else e=s}}else{n=s;i=s;h=16}}while(0);if((h|0)==16)if((i|0)<(o|0)){s=o+n|0;t=i;while(1){t=t+1|0;Wi[a+n>>0]=Wi[r+t>>0]|0;if((t|0)==(o|0))break;else n=n+1|0}s=s-i|0}else{s=n;o=i}n=a+s|0;t=n+32|0;do{Wi[n>>0]=0;n=n+1|0}while((n|0)<(t|0));Xi[f>>2]=s;Xi[l>>2]=o+1}}while(0);return a|0}function xN(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0;n=e+26012|0;e=Xi[n>>2]|0;if((((((e&1|0)!=0?(t=l+3|0,(t|0)<(a|0)):0)?(Wi[i+l>>0]|0)==0:0)?(Wi[i+(l+1)>>0]|0)==0:0)?(Wi[i+(l+2)>>0]|0)==1:0)?(Wi[i+t>>0]|0)==-32:0){e=e|16384;Xi[n>>2]=e}e:do{if((f|0)>0&(e&16384|0)==0)while(1){e=f+-1|0;if(Wi[r+e>>0]|0)break e;if((f|0)>1)f=e;else{f=e;break}}}while(0);if(!f)f=0;else{e=f<<3;f=qi[r+(f+-1)>>0]|0;if(!(f&1))if(!(f&2))if(!(f&4))if(!(f&8))if(!(f&16))if(!(f&32))if(!(f&64))f=f>>>4&8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2;else f=1;f=e-f|0}return f|0}function zN(e){e=e|0;nC(e);Xi[e+207664>>2]=0;Xi[e+207668>>2]=0;Xi[e+207652>>2]=65536;Xi[e+207656>>2]=0;Xi[e+208088>>2]=-2147483648;Xi[e+208092>>2]=-2147483648;Xi[e+208096>>2]=-2147483648;Xi[e+208100>>2]=-2147483648;Xi[e+208104>>2]=-2147483648;Xi[e+208108>>2]=-2147483648;Xi[e+208112>>2]=-2147483648;Xi[e+208116>>2]=-2147483648;Xi[e+208120>>2]=-2147483648;Xi[e+208124>>2]=-2147483648;Xi[e+208128>>2]=-2147483648;Xi[e+208132>>2]=-2147483648;Xi[e+208136>>2]=-2147483648;Xi[e+208140>>2]=-2147483648;Xi[e+208144>>2]=-2147483648;Xi[e+208148>>2]=-2147483648;return}function VN(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;m=Ue;Ue=Ue+48|0;S=m+32|0;v=m+16|0;c=m+8|0;b=m;d=Xi[e+24620>>2]|0;o=Xi[d>>2]|0;Xi[o+88>>2]=Xi[e+208984>>2];E=e+208152|0;do{if(!(Xi[E>>2]|0)){t=d+72|0;r=(Xi[d+76>>2]|0)==2147483647;if((Xi[t>>2]|0)==2147483647)if(r)break;else k=5;else if(r)k=5;if((k|0)==5){if(Xi[(Xi[e+4>>2]|0)+704>>2]|0)break;if((Xi[e+209100>>2]|0)<2)break}a=o+212|0;Xi[a>>2]=0;r=o+208|0;Xi[r>>2]=0;n=(Xi[e+27820>>2]|0)==0;if(!n){l=Xi[e+208988>>2]|0;e:do{switch(l|0){case 8:{Xi[r>>2]=4;r=0;break}case 2:case 1:{Xi[a>>2]=1;r=1;break}case 4:case 3:{if((Xi[e+205808>>2]|0)==0?(Xi[e+205812>>2]|0)==3:0){r=Xi[e+208992>>2]|0;Xi[a>>2]=r;break e}Xi[a>>2]=1;r=1;break}case 6:case 5:{Xi[r>>2]=1;r=0;break}case 7:{Xi[r>>2]=2;r=0;break}default:r=0}}while(0);f=Xi[e+209044>>2]|0;if((f&3|0)!=0&l>>>0<5){l=f>>>1&1;Xi[a>>2]=l}else l=r}else{if(!(Xi[e+205808>>2]|0))r=(Xi[e+205812>>2]|0)!=3;else r=1;l=r&1;Xi[a>>2]=l}Xi[e+208992>>2]=l;r=Xi[t>>2]|0;f=Xi[d+76>>2]|0;e:do{if((r|0)==(f|0))if(n){r=o+216|0;if(!l){Xi[r>>2]=0;break}else{Xi[r>>2]=1;break}}else switch(Xi[e+208988>>2]|0){case 5:case 3:{Xi[o+216>>2]=1;break e}default:{Xi[o+216>>2]=0;break e}}else Xi[o+216>>2]=(r|0)<(f|0)&1}while(0);if(((Xi[e+208996>>2]|0?(s=e+209e3|0,(Xi[s>>2]|0)>>>0<7):0)?(u=e+209004|0,((Xi[u>>2]|0)+-1|0)>>>0<2):0)?(h=JM(o)|0,h|0):0){e:do{switch(Xi[s>>2]|0){case 0:{Xi[h>>2]=4;break}case 1:{Xi[h>>2]=7;break}case 2:{Xi[h>>2]=6;break}case 3:if(!(Xi[e+209008>>2]|0)){Xi[h>>2]=1;break e}else{Xi[h>>2]=5;break e}case 4:{Xi[h>>2]=2;break}case 5:{Xi[h>>2]=3;break}case 6:{Xi[h>>2]=0;break}default:{}}}while(0);if((Xi[u>>2]|0)==2)Xi[h+4>>2]=1}do{if(Xi[e+209012>>2]|0){r=Xi[e+209016>>2]|0;if(((r|0)==0?(Xi[e+209020>>2]|0)==0:0)?(Xi[e+209024>>2]|0)==0:0)break;f=Mg(Xi[d>>2]|0,6,36)|0;if(f|0){k=f+4|0;Ag(Xi[k>>2]|0,+(r*360|0)*.0000152587890625);gg(Xi[k>>2]|0,Xi[e+209020>>2]|0,Xi[e+209024>>2]|0)}}}while(0);r=e+209028|0;if(Xi[r>>2]|0?(w=Mg(Xi[d>>2]|0,7,1)|0,w|0):0){Wi[Xi[w+4>>2]>>0]=Wi[e+209032>>0]|0;Xi[r>>2]=0}r=e+209040|0;if(Xi[r>>2]|0){f=e+209036|0;l=Mg(Xi[d>>2]|0,1,Xi[f>>2]|0)|0;if(l|0)qT(Xi[l+4>>2]|0,Xi[r>>2]|0,Xi[f>>2]|0)|0;vA(r);Xi[f>>2]=0;k=(Xi[e+4>>2]|0)+964|0;Xi[k>>2]=Xi[k>>2]|2}s=e+208956|0;t=d+88|0;Xi[t>>2]=Xi[s>>2];Xi[s>>2]=0;s=e+27320|0;h=e+4|0;r=Xi[h>>2]|0;if((Xi[s>>2]|0)==0?(Xi[r+672>>2]|0)<=0:0)r=Xi[r+180>>2]|0;else{k=r+180|0;w=Xi[k>>2]|0;r=Xi[e+27324>>2]|0;r=(w|0)>(r|0)?w:r;Xi[k>>2]=r}o=e+26e3|0;Xi[o>>2]=(r|0)==0&1;n=d+80|0;r=Xi[n>>2]|0;f=Xi[e+208088>>2]|0;e:do{if((r|0)<(f|0)){f=r;l=1;r=0;k=65}else{l=1;r=0;while(1){if(!l){Xi[e+208088+(r+-1<<2)>>2]=f;r=r+1|0;if((r|0)==16)break}else r=1;l=Xi[n>>2]|0;f=Xi[e+208088+(r<<2)>>2]|0;a=(r|0)==0;if((l|0)<(f|0)){f=l;l=a;k=65;break e}else l=a}f=Xi[n>>2]|0;r=16;k=67}}while(0);if((k|0)==65)if(l)l=0;else k=67;if((k|0)==67){Xi[e+208088+(r+-1<<2)>>2]=f;l=r}r=16-l|0;if((Xi[(Xi[d>>2]|0)+88>>2]|0)==3)if((r|0)>1)k=76;else k=75;else{k=Xi[e+208144>>2]|0;if((k|0)!=-2147483648?!((r|0)>1?1:((Xi[e+208148>>2]|0)-k|0)<3):0)k=75;else k=76}if((k|0)==75){f=Xi[h>>2]|0;r=1;k=78}else if((k|0)==76){f=Xi[h>>2]|0;if(!l){c=e+208088|0;w=Xi[c>>2]|0;Xi[b>>2]=Xi[n>>2];Xi[b+4>>2]=w;nA(f,40,100445,b);Xi[e+208092>>2]=-2147483648;Xi[e+208096>>2]=-2147483648;Xi[e+208100>>2]=-2147483648;Xi[e+208104>>2]=-2147483648;Xi[e+208108>>2]=-2147483648;Xi[e+208112>>2]=-2147483648;Xi[e+208116>>2]=-2147483648;Xi[e+208120>>2]=-2147483648;Xi[e+208124>>2]=-2147483648;Xi[e+208128>>2]=-2147483648;Xi[e+208132>>2]=-2147483648;Xi[e+208136>>2]=-2147483648;Xi[e+208140>>2]=-2147483648;Xi[e+208144>>2]=-2147483648;Xi[e+208148>>2]=-2147483648;Xi[c>>2]=Xi[n>>2];Xi[t>>2]=1;f=0}else k=78}if((k|0)==78)if((Xi[f+180>>2]|0)<(r|0)?(Xi[s>>2]|0)==0:0){Xi[c>>2]=r;nA(f,32,100464,c);Xi[(Xi[h>>2]|0)+180>>2]=r;Xi[o>>2]=0;f=0}else f=0;while(1){r=e+208016+(f<<2)|0;if(!(Xi[r>>2]|0))break;else f=f+1|0}if((f|0)>=17){Xi[v>>2]=100497;Xi[v+4>>2]=100508;Xi[v+8>>2]=947;nA(0,0,150445,v);$e()}Xi[r>>2]=d;r=d+636|0;if(!(Xi[r>>2]|0))Xi[r>>2]=4;u=e+208016|0;t=Xi[u>>2]|0;r=Xi[e+208020>>2]|0;e:do{if(!r){r=t;s=0}else{a=r;n=1;r=t;l=0;while(1){if(Xi[(Xi[a>>2]|0)+84>>2]|0){s=l;break e}if(Xi[a+88>>2]|0){s=l;break e}v=(Xi[a+80>>2]|0)<(Xi[r+80>>2]|0);l=v?n:l;r=v?a:r;n=n+1|0;a=Xi[e+208016+(n<<2)>>2]|0;if(!a){s=l;break}}}}while(0);l=Xi[h>>2]|0;a=Xi[l+180>>2]|0;do{if(!a){if((Xi[(Xi[t>>2]|0)+84>>2]|0)==0?(Xi[t+88>>2]|0)==0:0)break;Xi[e+208156>>2]=-2147483648}}while(0);n=Xi[r+80>>2]|0;t=e+208156|0;o=(n|0)<(Xi[t>>2]|0);do{if(!((f|0)<(a|0)&(o^1))){l=r+636|0;Xi[l>>2]=Xi[l>>2]&-5;l=e+208016+(s<<2)|0;if(Xi[l>>2]|0){a=s;do{a=a+1|0;v=l;l=e+208016+(a<<2)|0;Xi[v>>2]=Xi[l>>2]}while((Xi[l>>2]|0)!=0)}if(o){r=Xi[h>>2]|0;k=108;break}else{a=Xi[h>>2]|0;l=a;a=Xi[a+180>>2]|0;k=100;break}}else k=100}while(0);e:do{if((k|0)==100){if((f|0)<(a|0)){r=l;k=108;break}Xi[E>>2]=r;do{if(!s){f=Xi[u>>2]|0;if(!f)break;if((Xi[(Xi[f>>2]|0)+84>>2]|0)==0?(Xi[f+88>>2]|0)==0:0)break;Xi[t>>2]=-2147483648;break e}}while(0);Xi[t>>2]=n}}while(0);if((k|0)==108){Xi[S>>2]=o?100526:237325;nA(r,48,100530,S);r=Xi[E>>2]|0}if(r|0){l=r+640|0;a=Xi[l>>2]|0;f=e+209092|0;r=Xi[f>>2]|0;if(a){r=r|2;Xi[f>>2]=r}Xi[l>>2]=a|r>>>1&1}if(i|0?(_=Xi[h>>2]|0,(Xi[_+704>>2]|0)==0):0){zO(_);if(!(Xi[(Xi[h>>2]|0)+808>>2]&1))break;Xi[e+209104>>2]=1}}}while(0);Ue=m;return}function YN(e){e=e|0;var i=0;i=Xi[e+60>>2]|0;nC(i);jN(i);e=i+24624|0;VD(i,e);Vg(e);e=i+25288|0;VD(i,e);Vg(e);return 0}function jN(e){e=e|0;var i=0,r=0,f=0;KN(e);i=0;do{f=e+716+(i*664|0)|0;VD(e,f);Vg(f);i=i+1|0}while((i|0)!=36);i=e+208016|0;r=i+72|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(r|0));Xi[e+24620>>2]=0;i=e+25956|0;r=e+25952|0;if((Xi[i>>2]|0)>0){f=0;do{vA((Xi[r>>2]|0)+(f*49776|0)+49756|0);f=f+1|0}while((f|0)<(Xi[i>>2]|0))}vA(r);Xi[i>>2]=0;Xi[e+209036>>2]=0;vA(e+209040|0);i=0;do{vA(e+206468+(i<<2)|0);i=i+1|0}while((i|0)!=32);i=0;do{vA(e+206596+(i<<2)|0);i=i+1|0}while((i|0)!=256);return}function KN(e){e=e|0;var i=0,r=0,f=0;vA(e+26016|0);vA(e+205828|0);vA(e+205824|0);vA(e+205832|0);vA(e+205836|0);vA(e+205840|0);vA(e+26256|0);vA(e+207624|0);Xi[e+205804>>2]=0;vA(e+205820|0);vA(e+26644|0);vA(e+26648|0);YA(e+209332|0);YA(e+209336|0);YA(e+209340|0);YA(e+209344|0);r=e+25956|0;if((Xi[r>>2]|0)>0){e=e+25952|0;i=0;do{f=Xi[e>>2]|0;vA(f+(i*49776|0)+43612|0);vA(f+(i*49776|0)+548|0);vA(f+(i*49776|0)+580|0);vA(f+(i*49776|0)+584|0);vA(f+(i*49776|0)+43616|0);vA(f+(i*49776|0)+43620|0);vA(f+(i*49776|0)+43624|0);vA(f+(i*49776|0)+43628|0);f=f+(i*49776|0)+43632|0;i=i+1|0;Xi[f>>2]=0;Xi[f+4>>2]=0;Xi[f+8>>2]=0;Xi[f+12>>2]=0}while((i|0)<(Xi[r>>2]|0))}return}function WN(e){e=e|0;var i=0,r=0,f=0,l=0,a=0;Xi[e+208156>>2]=-2147483648;Xi[e+208992>>2]=1;zN(e);Xi[e+207668>>2]=-1;a=e+24620|0;f=Xi[a>>2]|0;if(f|0){Xi[f+636>>2]=0;i=Xi[e+208016>>2]|0;e:do{if(!i)i=0;else{r=i;l=0;i=0;while(1){if((r|0)!=(f|0)){Xi[e+208016+(i<<2)>>2]=r;i=i+1|0}l=l+1|0;r=Xi[e+208016+(l<<2)>>2]|0;if(!r)break e;f=Xi[a>>2]|0}}}while(0);Xi[e+208016+(i<<2)>>2]=0}VD(e,e+25288|0);Xi[e+205816>>2]=0;bC(e);Xi[e+209088>>2]=-1;Xi[e+209092>>2]=0;Xi[e+208968>>2]=0;Xi[e+208956>>2]=1;f=Xi[e+25956>>2]|0;if((f|0)>0){i=Xi[e+25952>>2]|0;r=0;do{Xi[i+(r*49776|0)+23380>>2]=0;r=r+1|0}while((r|0)<(f|0))}return}function GN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=Ue;Ue=Ue+112|0;S=p+32|0;b=p+24|0;h=p+16|0;s=p;o=p+96|0;c=p+80|0;d=p+64|0;v=p+48|0;u=Xi[f+24>>2]|0;E=Xi[f+28>>2]|0;m=Xi[e+60>>2]|0;w=e+92|0;Xi[m+26008>>2]=Xi[w>>2];Xi[m+209104>>2]=0;l=m+25980|0;a=Xi[l>>2]|0;if((a|0)!=-1){Xi[e+124>>2]=a;Xi[l>>2]=-1}l=m+25984|0;a=Xi[l>>2]|0;if((a|0)!=-1){Xi[e+128>>2]=a;Xi[l>>2]=-1}l=m+25988|0;a=Xi[l>>2]|0;if((a|0)!=-1){Xi[e+144>>2]=a;Xi[l>>2]=-1}k=m+25288|0;VD(m,k);e:do{if(E){l=m+206452|0;if((Xi[l>>2]|0?EN(f,1,0)|0:0)?(n=EN(f,1,o)|0,t=Xi[o>>2]|0,qN(n,t)|0):0)HN(m,n,t)|0;if(((((((E|0)>8&(Xi[l>>2]|0)!=0?(Wi[u>>0]|0)==1:0)?(Wi[u+2>>0]|0)==0:0)?(qi[u+4>>0]|0)>251:0)?Wi[u+5>>0]&31:0)?(Wi[u+8>>0]|0)==103:0)?qN(u,E)|0:0){l=HN(m,u,E)|0;break}f=BN(m,u,E,0)|0;if((f|0)<0)l=-1094995529;else{l=m+24620|0;a=(Xi[l>>2]|0)==0;if(a?(Xi[m+206448>>2]|0)==10:0){if((f|0)<=(E|0)){_=9;break}Xi[s>>2]=100920;Xi[s+4>>2]=100508;Xi[s+8>>2]=1879;nA(0,0,150445,s);$e()}n=e+96|0;if(!(Xi[n>>2]&32768))if(a){if((Xi[e+844>>2]|0)>7){l=E;break}if((E|0)>3?(kR(100942,u,4)|0)==0:0){l=E;break}nA(e,16,100947,h);l=-1094995529;break}else _=43;else{h=Xi[m+206428>>2]|0;if(!((h|0)==0?1:(Xi[m+206424>>2]|0)<(h|0))){VN(m,1);_=43}}do{if((_|0)==43){l=KD(m,Xi[m+25952>>2]|0,0)|0;if((l|0)<0)break e;Xi[r>>2]=0;o=m+208152|0;l=Xi[o>>2]|0;if(l|0){if(((Xi[w>>2]&8|0)==0?(Xi[n>>2]&4194304|0)==0:0)?(Xi[l+640>>2]|0)==0:0)break;if(!(Xi[l+640>>2]|0)){w=(Xi[l>>2]|0)+296|0;Xi[w>>2]=Xi[w>>2]|1}a=Xi[m+4>>2]|0;do{if(!(Xi[a+704>>2]|0)){t=(Xi[l+72>>2]|0)==2147483647;if(!t?(Xi[l+76>>2]|0)!=2147483647:0)break;n=Xi[l>>2]|0;l=t&1;Xi[b>>2]=l;nA(a,48,100958,b);l=0-(l^1)|0;a=0;do{w=n+(a<<2)|0;b=Xi[n+32+(a<<2)>>2]|0;Xi[c+(a<<2)>>2]=(Xi[w>>2]|0)+(b&l);Xi[v+(a<<2)>>2]=(Xi[w>>2]|0)+(t?b:0);Xi[d+(a<<2)>>2]=b<<1;a=a+1|0}while((a|0)!=4);$g(c,d,v,d,Xi[n+80>>2]|0,Xi[n+68>>2]|0,Xi[n+72>>2]>>1);l=Xi[o>>2]|0}}while(0);l=XN(m,i,l)|0;if((l|0)<0)break e;Xi[r>>2]=1}}}while(0);if((Xi[i+248>>2]|0)==0?Xi[r>>2]|0:0){Xi[S>>2]=100996;Xi[S+4>>2]=100508;Xi[S+8>>2]=1945;nA(0,0,150445,S);$e()}VD(m,k);l=(f|0)==0?1:f;l=(l+10|0)>(E|0)?E:l}}else{l=m+24620|0;f=0;_=9}}while(0);if((_|0)==9){Xi[l>>2]=0;Xi[m+205816>>2]=0;n=Xi[m+208016>>2]|0;l=Xi[m+208020>>2]|0;e:do{if(!l)a=0;else{t=1;a=0;do{if(Xi[(Xi[l>>2]|0)+84>>2]|0)break e;if(Xi[l+88>>2]|0)break e;_=(Xi[l+80>>2]|0)<(Xi[n+80>>2]|0);a=_?t:a;n=_?l:n;t=t+1|0;l=Xi[m+208016+(t<<2)>>2]|0}while((l|0)!=0)}}while(0);l=m+208016+(a<<2)|0;if(Xi[l>>2]|0)do{a=a+1|0;_=l;l=m+208016+(a<<2)|0;Xi[_>>2]=Xi[l>>2]}while((Xi[l>>2]|0)!=0);if(n){l=n+636|0;Xi[l>>2]=Xi[l>>2]&-5;l=XN(m,i,n)|0;if((l|0)>=0){Xi[r>>2]=1;l=f}}else l=f}Ue=p;return l|0}function XN(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;f=Xi[r>>2]|0;l=Wg(Xi[f+80>>2]|0)|0;f=qg(i,f)|0;if((f|0)>=0){Fg(i+344|0,100908,vC(e)|0,0)|0;u=Xi[e+4>>2]|0;o=u+124|0;Xi[e+25980>>2]=Xi[o>>2];s=u+128|0;Xi[e+25984>>2]=Xi[s>>2];u=u+144|0;Xi[e+25988>>2]=Xi[u>>2];Xi[o>>2]=Xi[i+68>>2];Xi[s>>2]=Xi[i+72>>2];Xi[u>>2]=Xi[i+80>>2];if(!(Xi[r+648>>2]|0))Xi[i+84>>2]=1;if((Xi[r+652>>2]|0)!=0?(a=Wi[l+4>>0]|0,a<<24>>24!=0):0){u=l+5|0;o=l+6|0;s=Xi[r+656>>2]|0;t=Xi[e+25960>>2]|0;n=Xi[r+660>>2]|0;f=a&255;r=0;do{if((r|0)>0){l=qi[u>>0]|0;e=qi[o>>0]|0}else{l=0;e=0}e=(Zi(n>>e,Xi[i+32+(r<<2)>>2]|0)|0)+(s>>l<<t)|0;a=i+(r<<2)|0;Xi[a>>2]=(Xi[a>>2]|0)+e;r=r+1|0}while((r|0)<(f|0));f=0}else f=0}return f|0}function qN(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;f=(qi[e+5>>0]|0)&31;r=e+6|0;e:do{if(!f){f=r;n=6}else{a=e+i|0;while(1){f=f+-1|0;l=(qi[r>>0]|qi[r+1>>0]<<8)&65535;l=(l<<8&65280|l>>>8)+2|0;if((l|0)>(a-r|0)){r=0;break e}if((Wi[r+2>>0]&-97)<<24>>24!=7){r=0;break e}r=r+l|0;if(!f){f=r;n=6;break}}}}while(0);e:do{if((n|0)==6){r=Wi[f>>0]|0;if(!(r<<24>>24))r=0;else{a=e+i|0;l=r&255;f=f+1|0;while(1){l=l+-1|0;r=(qi[f>>0]|qi[f+1>>0]<<8)&65535;r=(r<<8&65280|r>>>8)+2|0;if((r|0)>(a-f|0)){r=0;break e}if((Wi[f+2>>0]&-97)<<24>>24!=8){r=0;break e}if(!l){r=1;break}else f=f+r|0}}}}while(0);return r|0}function JN(e){e=e|0;var i=0,r=0;r=Xi[e+60>>2]|0;e=r+208016|0;i=e+72|0;do{Xi[e>>2]=0;e=e+4|0}while((e|0)<(i|0));WN(r);e=0;do{VD(r,r+716+(e*664|0)|0);e=e+1|0}while((e|0)!=36);Xi[r+24620>>2]=0;VD(r,r+24624|0);Xi[r+206424>>2]=0;KN(r);Xi[r+26004>>2]=0;return}function ZN(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;s=Ue;Ue=Ue+32|0;o=s;l=Xi[e+4>>2]|0;n=Xi[e+24624>>2]|0;t=qi[(Wg(Xi[l+144>>2]|0)|0)+6>>0]|0;a=Xi[e+205812>>2]|0;w=(a|0)!=3;k=w&1;i=f<<k;f=r<<k;r=(Xi[l+128>>2]|0)-f|0;i=(i|0)>(r|0)?r:i;if(!((w?(Xi[e+205816>>2]|0)!=0:0)?!(Xi[l+292>>2]&2|0):0))h=4;if((h|0)==4?(u=l+152|0,Xi[u>>2]|0):0){Xi[o>>2]=Zi(Xi[n+32>>2]|0,f)|0;k=Zi(Xi[n+36>>2]|0,f>>t)|0;Xi[o+8>>2]=k;Xi[o+4>>2]=k;k=o+12|0;Xi[k>>2]=0;Xi[k+4>>2]=0;Xi[k+8>>2]=0;Xi[k+12>>2]=0;Xi[k+16>>2]=0;Xz[Xi[u>>2]&127](l,n,o,f,a,i)}Ue=s;return}function QN(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+32|0;o=s+16|0;n=s;e:do{if(!(Xi[i+21736>>2]&32768)){a=0;while(1){f=a+12+(i+21640)|0;l=Wi[f>>0]|0;r=Wi[101024+l>>0]|0;if(249>>>l&1|0)break;if(253>>>l&1|0)Wi[f>>0]=r;a=a+1|0;if((a|0)>=4){t=7;break e}}e=Xi[e+4>>2]|0;o=Xi[i+21764>>2]|0;i=Xi[i+21768>>2]|0;Xi[n>>2]=r<<24>>24;Xi[n+4>>2]=o;Xi[n+8>>2]=i;nA(e,16,101036,n);r=-1094995529}else t=7}while(0);e:do{if((t|0)==7){f=Xi[i+21744>>2]|0;if((f&34952|0)==34952)r=0;else{n=0;while(1){if(!(Xi[88e3+(n<<2)>>2]&f)){l=(n<<3)+12+(i+21640)|0;a=Wi[l>>0]|0;r=Wi[101099+a>>0]|0;if(370>>>a&1|0)break;if(886>>>a&1|0)Wi[l>>0]=r}n=n+1|0;if((n|0)>=4){r=0;break e}}e=Xi[e+4>>2]|0;t=Xi[i+21764>>2]|0;i=Xi[i+21768>>2]|0;Xi[o>>2]=r<<24>>24;Xi[o+4>>2]=t;Xi[o+8>>2]=i;nA(e,16,101111,o);r=-1094995529}}}while(0);Ue=s;return r|0}function $N(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+32|0;n=t+16|0;a=t+8|0;l=t;do{if(r>>>0<=3){if(!(Xi[i+21736>>2]&32768)){l=Wi[101221+r>>0]|0;if((r&-2|0)==2){l=Xi[e+4>>2]|0;n=Xi[i+21768>>2]|0;Xi[a>>2]=Xi[i+21764>>2];Xi[a+4>>2]=n;nA(l,16,101225,a);l=-1094995529;break}}else l=r;r=Xi[i+21744>>2]|0;a=r&32896;if((a|0)!=32896){if((l&-3|0)==1){l=Xi[e+4>>2]|0;f=Xi[i+21768>>2]|0;Xi[n>>2]=Xi[i+21764>>2];Xi[n+4>>2]=f;nA(l,16,101282,n);l=-1094995529;break}if((f|0)==0|(a|0)==0)l=Wi[101340+l>>0]|0;else l=8-(r>>>15&1)+(((l|0)==4&1)<<1)|0}}else{n=Xi[e+4>>2]|0;f=Xi[i+21768>>2]|0;Xi[l>>2]=Xi[i+21764>>2];Xi[l+4>>2]=f;nA(n,16,101175,l);l=-1094995529}}while(0);Ue=t;return l|0}function eD(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;m=Ue;Ue=Ue+96|0;v=m+80|0;c=m+72|0;b=m+64|0;k=m+56|0;h=m+48|0;u=m+40|0;t=m+32|0;n=m+24|0;a=m+16|0;f=m+8|0;r=m;E=e+206436|0;l=Xi[E>>2]|0;S=e+206428|0;w=Zi((Xi[S>>2]|0)+1|0,l)|0;d=e+4|0;i=Xi[d>>2]|0;s=Xi[i+800>>2]|0;l=Zi((s|0)>1?s:1,l<<1)|0;do{if(l>>>0<268435455){i=iA(l<<3)|0;Xi[e+26016>>2]=i;if(!i){i=Xi[d>>2]|0;_=5;break}o=e+25952|0;Xi[(Xi[o>>2]|0)+21680>>2]=i;r=iA(w*48|0)|0;Xi[e+26256>>2]=r;s=(w|0)==0;if(!(s|(r|0)!=0)){nA(Xi[d>>2]|0,16,101345,f);_=38;break}r=iA((Xi[E>>2]|0)+w<<1)|0;f=e+207624|0;Xi[f>>2]=r;if((r|0)==0?(Xi[E>>2]|0)+w&2147483647|0:0){nA(Xi[d>>2]|0,16,101345,a);_=38;break}r=w<<1;a=iA(r)|0;Xi[e+205824>>2]=a;if(!((r|0)==0|(a|0)!=0)){nA(Xi[d>>2]|0,16,101345,n);_=38;break}n=iA(w)|0;Xi[e+205828>>2]=n;if(!(s|(n|0)!=0)){nA(Xi[d>>2]|0,16,101345,t);_=38;break}if(l>>>0<134217727){i=l<<4;t=iA(i)|0;r=e+205832|0;Xi[r>>2]=t;if(t|0){u=iA(i)|0;i=e+205836|0;Xi[i>>2]=u;if(!u){nA(Xi[d>>2]|0,16,101345,h);_=38;break}Xi[(Xi[o>>2]|0)+48672>>2]=Xi[r>>2];Xi[(Xi[o>>2]|0)+48676>>2]=Xi[i>>2];r=w<<2;h=iA(r)|0;Xi[e+205840>>2]=h;if(!(s|(h|0)!=0)){nA(Xi[d>>2]|0,16,101345,k);_=38;break}k=iA(w)|0;Xi[e+205820>>2]=k;if(!(s|(k|0)!=0)){nA(Xi[d>>2]|0,16,101345,b);_=38;break}jT(Xi[f>>2]|0,-1,(Xi[E>>2]|0)+w<<1|0)|0;Xi[e+205804>>2]=(Xi[f>>2]|0)+((Xi[E>>2]<<1|1)<<1);b=iA(r)|0;o=e+26644|0;Xi[o>>2]=b;i=(r|0)==0;if(!(i|(b|0)!=0)){nA(Xi[d>>2]|0,16,101345,c);_=38;break}t=iA(r)|0;Xi[e+26648>>2]=t;if(!(i|(t|0)!=0)){nA(Xi[d>>2]|0,16,101345,v);_=38;break}i=Xi[S>>2]|0;if((i|0)>0){a=e+206432|0;n=e+26652|0;r=Xi[a>>2]|0;l=0;do{if((r|0)>0){i=Xi[o>>2]|0;f=0;do{r=(Zi(Xi[E>>2]|0,l)|0)+f|0;Xi[i+(r<<2)>>2]=(Zi(Xi[n>>2]|0,l)|0)+f<<2;Xi[t+(r<<2)>>2]=((r|0)%(Xi[E>>2]<<1|0)|0)<<3;f=f+1|0;r=Xi[a>>2]|0}while((f|0)<(r|0));i=Xi[S>>2]|0}l=l+1|0}while((l|0)<(i|0))}if(Xi[e+205756>>2]|0){i=0;break}EC(e);i=0;break}}else Xi[e+205832>>2]=0;nA(Xi[d>>2]|0,16,101345,u);_=38}else{Xi[e+26016>>2]=0;_=5}}while(0);if((_|0)==5){nA(i,16,101345,r);_=38}if((_|0)==38){KN(e);i=-12}Ue=m;return i|0}function iD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;_=Ue;Ue=Ue+32|0;S=_+24|0;u=_+16|0;s=_+8|0;f=_;r=i+24|0;t=e+206428|0;b=Xi[t>>2]|0;d=e+206436|0;w=Xi[d>>2]|0;o=Zi(w,b)|0;v=e+206432|0;E=Xi[v>>2]|0;h=Zi(E<<1|1,b<<1|1)|0;w=Zi(w,b+1|0)|0;k=h+(w<<1)|0;Wi[i+44168>>0]=-2;Wi[i+44160>>0]=-2;Wi[i+44152>>0]=-2;Wi[i+44128>>0]=-2;Wi[i+44120>>0]=-2;Wi[i+44112>>0]=-2;do{if((Xi[e+25952>>2]|0)==(i|0)){c=e+4|0;Xi[r>>2]=Xi[c>>2];Xi[i+800>>2]=1;Xi[i+804>>2]=e;Xi[i+788>>2]=1;a=e+206440|0;n=Xi[a>>2]|0;Xi[i+552>>2]=n;l=Xi[v>>2]|0;Xi[i+556>>2]=l;Xi[i+560>>2]=Xi[t>>2];Xi[i+564>>2]=Xi[d>>2];Xi[i+568>>2]=l<<1|1;n=iA((n<<2)+4|0)|0;Xi[i+548>>2]=n;if((n|0)==0?(Xi[a>>2]&1073741823|0)!=1073741823:0){nA(Xi[c>>2]|0,16,101345,f);r=-12;break}r=Xi[t>>2]|0;e=Xi[v>>2]|0;if((r|0)>0){a=0;do{if((e|0)>0){f=Zi(Xi[d>>2]|0,a)|0;l=Xi[v>>2]|0;r=0;while(1){Xi[n+((Zi(e,a)|0)+r<<2)>>2]=f+r;r=r+1|0;if((r|0)<(l|0))e=l;else break}e=l;r=Xi[t>>2]|0}a=a+1|0}while((a|0)<(r|0))}Xi[n+((Zi(e,r)|0)<<2)>>2]=(Zi(Xi[d>>2]|0,r+-1|0)|0)+e;n=iA(o)|0;Xi[i+580>>2]=n;if(!((o|0)==0|(n|0)!=0)){nA(Xi[c>>2]|0,16,101345,s);r=-12;break}s=rA(Zi(Xi[d>>2]|0,Xi[t>>2]|0)|0)|0;Xi[i+584>>2]=s;if((s|0)==0?Zi(Xi[d>>2]|0,Xi[t>>2]|0)|0:0){nA(Xi[c>>2]|0,16,101345,u);r=-12;break}u=k<<1;f=iA(u)|0;Xi[i+43612>>2]=f;if(!((u|0)==0|(f|0)!=0)){nA(Xi[c>>2]|0,16,101345,S);r=-12;break}Xi[i+588>>2]=f+((Xi[v>>2]<<1)+2<<1);S=h+1+(Xi[d>>2]|0)|0;Xi[i+592>>2]=f+(S<<1);Xi[i+596>>2]=f+(S+w<<1);if((k|0)>0){r=(w<<1)+(Zi(E<<1|1,b<<1|1)|0)|0;e=0;do{Gi[f+(e<<1)>>1]=1024;e=e+1|0}while((e|0)!=(r|0));r=0}else r=0}else{jT(r|0,0,784)|0;r=0}}while(0);Ue=_;return r|0}function rD(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0;w=Ue;Ue=Ue+16|0;h=w+8|0;r=w;f=e+25952|0;s=Xi[f>>2]|0;Xi[s+21764>>2]=a;Xi[s+21768>>2]=n;u=s+21772|0;Xi[u>>2]=(Zi(Xi[e+206436>>2]|0,n)|0)+a;t=s+43648|0;o=t+120|0;do{Xi[t>>2]=0;t=t+4|0}while((t|0)<(o|0));t=(Xi[s+23372>>2]|0)>>>0>i>>>0?i:0;if(!(Xi[s+23384+(t*40|0)>>2]|0)){nA(Xi[e+4>>2]|0,48,101370,r);t=0}if((Xi[s+23384+(t*40|0)+24>>2]&3|0)==3){i=Xi[u>>2]<<2;h=Xi[e+24688>>2]|0;n=t*257&65535;Gi[h+i>>1]=n;Gi[h+(i|2)>>1]=n;i=Zi(t,16843009)|0;Xi[s+44108>>2]=i;Xi[s+44116>>2]=i;Xi[s+44124>>2]=i;Xi[s+44132>>2]=i;l=Xi[l+4>>2]<<16|Xi[l>>2]&65535;Xi[s+43824>>2]=l;Xi[s+43828>>2]=l;Xi[s+43832>>2]=l;Xi[s+43836>>2]=l;Xi[s+43856>>2]=l;Xi[s+43860>>2]=l;Xi[s+43864>>2]=l;Xi[s+43868>>2]=l;Xi[s+43888>>2]=l;Xi[s+43892>>2]=l;Xi[s+43896>>2]=l;Xi[s+43900>>2]=l;Xi[s+43920>>2]=l;Xi[s+43924>>2]=l;Xi[s+43928>>2]=l;Xi[s+43932>>2]=l;Xi[s+21796>>2]=0;Xi[s+21800>>2]=0;ID(e,Xi[f>>2]|0)}else nA(Xi[e+4>>2]|0,48,101416,h);Ue=w;return}function fD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;S=Ue;Ue=Ue+32|0;s=S+24|0;o=S+16|0;n=S+8|0;a=S;E=i+856|0;Xi[E>>2]=0;c=i+860|0;Xi[c>>2]=0;d=i+12|0;f=Xi[d>>2]|0;v=i+4|0;r=(Xi[v>>2]|0)+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);do{if(r>>>0<=134217727){b=r>>>0>65535;k=b?r>>>16:r;b=b?16:0;l=(k&65280|0)==0;b=(qi[145894+(l?k:k>>>8)>>0]|0)+(l?b:b|8)<<1;l=b+-31|0;Xi[d>>2]=f+63-b;if((l|0)<7){nA(0,16,118304,a);r=-1094995529;break}else{r=(r>>>l)+-1|0;break}}else{r=r>>>23;Xi[d>>2]=(qi[98538+r>>0]|0)+f;r=qi[99050+r>>0]|0}}while(0);t=i+864|0;Xi[t>>2]=r;b=e+26672|0;if(Xi[b>>2]|0){f=Xi[d>>2]|0;l=(Xi[v>>2]|0)+(f>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(f&7);do{if(l>>>0<=134217727){k=l>>>0>65535;w=k?l>>>16:l;k=k?16:0;a=(w&65280|0)==0;k=(qi[145894+(a?w:w>>>8)>>0]|0)+(a?k:k|8)<<1;a=k+-31|0;Xi[d>>2]=f+63-k;if((a|0)<7){nA(0,16,118304,n);f=-1094995529;r=Xi[t>>2]|0;break}else{f=(l>>>a)+-1|0;break}}else{k=l>>>23;Xi[d>>2]=(qi[98538+k>>0]|0)+f;f=qi[99050+k>>0]|0}}while(0);Xi[i+868>>2]=f}if(r>>>0>7){k=Xi[e+4>>2]|0;Xi[o>>2]=r;nA(k,16,101435,o);Xi[t>>2]=0;r=0}l=i+868|0;f=Xi[l>>2]|0;if(f>>>0>7){r=Xi[e+4>>2]|0;Xi[s>>2]=f;nA(r,16,101478,s);Xi[l>>2]=0;r=Xi[t>>2]|0;f=0}k=1<<r;t=1<<f;o=i+816|0;w=0;do{e=i+872+(w<<2)|0;Xi[e>>2]=0;s=i+880+(w<<2)|0;Xi[s>>2]=0;u=i+23372+(w<<2)|0;if(Xi[u>>2]|0){h=0;do{n=Xi[d>>2]|0;a=Xi[v>>2]|0;l=qi[a+(n>>>3)>>0]|0;r=n+1|0;Xi[d>>2]=r;if(l&128>>>(n&7)){f=a+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){l=f>>>23;r=(qi[98538+l>>0]|0)+r|0;Xi[d>>2]=r;l=Wi[99562+l>>0]|0}else{l=f>>>0>65535;f=l?f>>>16:f;l=l?16:0;n=(f&65280|0)==0;l=(qi[145894+(n?f:f>>>8)>>0]|0)+(n?l:l|8)|0;r=31-l+r|0;n=a+(r>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(r&7)>>>l;r=32-l+r|0;Xi[d>>2]=r;l=n&1;l=(n>>>1^0-l)+l|0}Xi[i+888+(h<<4)+(w<<3)>>2]=l;f=a+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){n=f>>>23;Xi[d>>2]=(qi[98538+n>>0]|0)+r;r=Wi[99562+n>>0]|0}else{n=f>>>0>65535;_=n?f>>>16:f;f=n?16:0;n=(_&65280|0)==0;f=(qi[145894+(n?_:_>>>8)>>0]|0)+(n?f:f|8)|0;r=31-f+r|0;n=a+(r>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(r&7)>>>f;Xi[d>>2]=32-f+r;r=n&1;r=(n>>>1^0-r)+r|0}Xi[i+888+(h<<4)+(w<<3)+4>>2]=r;if(!((r|0)==0&(l|0)==(k|0))){Xi[E>>2]=1;Xi[e>>2]=1}}else{Xi[i+888+(h<<4)+(w<<3)>>2]=k;Xi[i+888+(h<<4)+(w<<3)+4>>2]=0}e:do{if(Xi[b>>2]|0){_=Xi[d>>2]|0;f=Xi[v>>2]|0;n=qi[f+(_>>>3)>>0]|0;r=_+1|0;Xi[d>>2]=r;if(!(n&128>>>(_&7))){Xi[i+1656+(h<<5)+(w<<4)>>2]=t;Xi[i+1656+(h<<5)+(w<<4)+4>>2]=0;Xi[i+1656+(h<<5)+(w<<4)+8>>2]=t;Xi[i+1656+(h<<5)+(w<<4)+12>>2]=0;break}else l=0;while(1){a=f+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if(a>>>0>134217727){n=a>>>23;r=(qi[98538+n>>0]|0)+r|0;Xi[d>>2]=r;n=Wi[99562+n>>0]|0}else{n=a>>>0>65535;a=n?a>>>16:a;n=n?16:0;_=(a&65280|0)==0;n=(qi[145894+(_?a:a>>>8)>>0]|0)+(_?n:n|8)|0;r=31-n+r|0;_=f+(r>>>3)|0;_=(ZT(qi[_>>0]|qi[_+1>>0]<<8|qi[_+2>>0]<<16|qi[_+3>>0]<<24|0)|0)<<(r&7)>>>n;r=32-n+r|0;Xi[d>>2]=r;n=_&1;n=(_>>>1^0-n)+n|0}Xi[i+1656+(h<<5)+(w<<4)+(l<<3)>>2]=n;a=f+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if(a>>>0>134217727){_=a>>>23;Xi[d>>2]=(qi[98538+_>>0]|0)+r;r=Wi[99562+_>>0]|0}else{_=a>>>0>65535;m=_?a>>>16:a;a=_?16:0;_=(m&65280|0)==0;a=(qi[145894+(_?m:m>>>8)>>0]|0)+(_?a:a|8)|0;r=31-a+r|0;_=f+(r>>>3)|0;_=(ZT(qi[_>>0]|qi[_+1>>0]<<8|qi[_+2>>0]<<16|qi[_+3>>0]<<24|0)|0)<<(r&7)>>>a;Xi[d>>2]=32-a+r;r=_&1;r=(_>>>1^0-r)+r|0}Xi[i+1656+(h<<5)+(w<<4)+(l<<3)+4>>2]=r;if(!((r|0)==0&(n|0)==(t|0))){Xi[c>>2]=1;Xi[s>>2]=1}l=l+1|0;if((l|0)==2)break e;r=Xi[d>>2]|0;f=Xi[v>>2]|0}}}while(0);h=h+1|0}while(h>>>0<(Xi[u>>2]|0)>>>0)}w=w+1|0}while((Xi[o>>2]|0)==3&(w|0)<2);if(!(Xi[E>>2]|0))r=(Xi[c>>2]|0)!=0;else r=1;Xi[E>>2]=r&1;Ue=S;return 0}function lD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;l=Xi[e+26680>>2]|0;f=Xi[e+207664>>2]|0;a=e+207660|0;Xi[a>>2]=f;n=Xi[e+207648>>2]|0;if((n|0)<(Xi[e+207668>>2]|0)){f=f+(1<<l)|0;Xi[a>>2]=f}switch(Xi[e+26684>>2]|0){case 0:{f=1<<Xi[e+26688>>2];a=Xi[e+207628>>2]|0;l=Xi[e+207656>>2]|0;if((l|0)>(a|0)?(l-a|0)>=((f|0)/2|0|0):0){f=(Xi[e+207652>>2]|0)+f|0;Xi[e+207632>>2]=f}else t=7;do{if((t|0)==7){if((l|0)<(a|0)?(l-a|0)<((f|0)/-2|0|0):0){f=(Xi[e+207652>>2]|0)-f|0;Xi[e+207632>>2]=f;break}f=Xi[e+207652>>2]|0;Xi[e+207632>>2]=f}}while(0);t=a+f|0;f=e+205812|0;l=Xi[f>>2]|0;if((l|0)==3){a=f;l=t;f=(Xi[e+207636>>2]|0)+t|0;t=25}else{a=f;n=l;l=t;f=t;t=23}break}case 1:{t=Xi[e+26704>>2]|0;a=(t|0)==0?0:n+f|0;n=(Xi[e+206444>>2]|0)==0;a=(((a|0)>0&n)<<31>>31)+a|0;if((t|0)>0){f=0;l=0;do{f=(Gi[e+26808+(l<<1)>>1]|0)+f|0;l=l+1|0}while((l|0)<(t|0))}else f=0;if((a|0)>0){l=a+-1|0;a=(l|0)%(t|0)|0;f=Zi((l|0)/(t|0)|0,f)|0;if((a|0)>=0){l=0;while(1){f=(Gi[e+26808+(l<<1)>>1]|0)+f|0;if((l|0)==(a|0))break;else l=l+1|0}}}else f=0;if(n)f=(Xi[e+26696>>2]|0)+f|0;l=(Xi[e+207640>>2]|0)+f|0;f=l+(Xi[e+26700>>2]|0)|0;a=e+205812|0;n=Xi[a>>2]|0;if((n|0)==3){f=(Xi[e+207644>>2]|0)+f|0;t=25}else t=23;break}default:{f=(((Xi[e+206444>>2]|0)==0)<<31>>31)+(n+f<<1)|0;n=e+205812|0;a=n;n=Xi[n>>2]|0;l=f;t=23}}if((t|0)==23)if((n|0)==2){l=Xi[i>>2]|0;t=27}else t=25;if((t|0)==25){Xi[i>>2]=l;if((Xi[a>>2]|0)==1)f=Xi[i+4>>2]|0;else t=27}if((t|0)==27)Xi[i+4>>2]=f;Xi[r>>2]=(l|0)>(f|0)?f:l;return 0}function aD(e){e=e|0;var i=0;i=Xi[e+4>>2]|0;switch(i|0){case 66:{i=Xi[e+1196>>2]<<8&512|66;break}case 244:case 122:case 110:{i=Xi[e+1196>>2]<<8&2048|i;break}default:{}}return i|0}function nD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=Ue;Ue=Ue+32|0;k=c+16|0;u=c+8|0;t=c;a=Xi[e+31984>>2]|0;l=Xi[e+31988>>2]|0;w=i+816|0;f=Xi[w>>2]|0;do{if((f|0)!=1){h=(Xi[e+205812>>2]|0)==3?15:31;s=i+12|0;r=Xi[s>>2]|0;if((f|0)==3){o=i+4|0;n=Xi[o>>2]|0;d=(qi[n+(r>>>3)>>0]|0)<<(r&7)>>>7&1;r=r+1|0;Xi[s>>2]=r;Xi[i+21812>>2]=d}else{n=i+4|0;o=n;n=Xi[n>>2]|0}d=qi[n+(r>>>3)>>0]|0;n=r+1|0;Xi[s>>2]=n;if(d&128>>>(r&7)){a=(Xi[o>>2]|0)+(n>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(n&7);do{if(a>>>0<=134217727){d=a>>>0>65535;n=d?a>>>16:a;d=d?16:0;l=(n&65280|0)==0;d=(qi[145894+(l?n:n>>>8)>>0]|0)+(l?d:d|8)<<1;l=d+-31|0;Xi[s>>2]=r+64-d;if((l|0)<7){nA(0,16,118304,t);r=-1094995529;f=Xi[w>>2]|0;break}else{r=(a>>>l)+-1|0;break}}else{r=a>>>23;Xi[s>>2]=(qi[98538+r>>0]|0)+n;r=qi[99050+r>>0]|0}}while(0);a=r+1|0;if((f|0)==3){l=Xi[s>>2]|0;f=(Xi[o>>2]|0)+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7);do{if(f>>>0<=134217727){d=f>>>0>65535;o=d?f>>>16:f;d=d?16:0;r=(o&65280|0)==0;d=(qi[145894+(r?o:o>>>8)>>0]|0)+(r?d:d|8)<<1;r=d+-31|0;Xi[s>>2]=l+63-d;if((r|0)<7){nA(0,16,118304,u);r=-1094995529;break}else{r=(f>>>r)+-1|0;break}}else{r=f>>>23;Xi[s>>2]=(qi[98538+r>>0]|0)+l;r=qi[99050+r>>0]|0}}while(0);l=r+1|0}else l=1}r=a+-1|0;f=l+-1|0;if(r>>>0>h>>>0|f>>>0>h>>>0){d=Xi[e+4>>2]|0;Xi[k>>2]=r;Xi[k+4>>2]=h;Xi[k+8>>2]=f;Xi[k+12>>2]=h;nA(d,16,101523,k);Xi[i+23376>>2]=0;Xi[i+23372>>2]=0;Xi[i+23380>>2]=0;r=-1094995529;break}else{n=(Xi[w>>2]|0)==3?2:1;b=21;break}}else{n=0;a=0;l=0;b=21}}while(0);do{if((b|0)==21){r=i+23380|0;f=i+23372|0;if(((n|0)==(Xi[r>>2]|0)?(a|0)==(Xi[f>>2]|0):0)?(l|0)==(Xi[i+23376>>2]|0):0){r=0;break}Xi[f>>2]=a;Xi[i+23376>>2]=l;Xi[r>>2]=n;r=1}}while(0);Ue=c;return r|0}function tD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;e=(Xi[i+824>>2]|0)+48+(Zi(Xi[e+27844>>2]|0,-6)|0)|0;e=(e|0)<0?0:(e|0)>51?51:e;if((Xi[i+816>>2]|0)==1)f=107706;else f=101562+(Xi[i+49752>>2]<<11)|0;r=0;do{l=(Zi(Wi[f+(r<<1)>>0]|0,e)|0)>>4;l=(l+(Wi[f+(r<<1)+1>>0]|0)<<1)+-127|0;l=l>>31^l;Wi[i+48728+r>>0]=(l|0)>124?l&1|124:l;r=r+1|0}while((r|0)!=1024);return}function oD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0;te=Ue;Ue=Ue+128|0;Z=te+40|0;q=te+32|0;u=te+24|0;h=te+16|0;t=te+8|0;s=te;c=te+104|0;E=te+100|0;fe=te+96|0;Y=te+80|0;z=te+76|0;V=te+72|0;d=te+68|0;v=te+64|0;H=te+60|0;B=te+56|0;U=te+52|0;x=te+48|0;j=Xi[e+32028>>2]|0;Q=e+26672|0;J=((Xi[Q>>2]|0)+-1|0)>>>0<2;le=Xi[e+25960>>2]|0;ee=i+21764|0;f=Xi[ee>>2]|0;ie=i+21768|0;r=Xi[ie>>2]|0;W=e+206436|0;ne=(Zi(Xi[W>>2]|0,r)|0)+f|0;ae=i+21772|0;Xi[ae>>2]=ne;$=i+816|0;G=e+205808|0;if((Xi[$>>2]|0)!=1){if(!((Xi[G>>2]|0)==0|(r&1|0)==0)?(Xi[i+21624>>2]|0)!=0:0)r=Xi[i+21628>>2]|0;else r=sD(e,i,f,r)|0;if(r){if((Xi[G>>2]|0?(Xi[ie>>2]&1|0)==0:0)?(Xi[(Xi[e+24668>>2]|0)+(ne<<2)>>2]=2048,le=sD(e,i,Xi[ee>>2]|0,(Xi[ie>>2]|0)+1|0)|0,Xi[i+21628>>2]=le,(le|0)==0):0){le=hD(e,i)|0;Xi[i+21796>>2]=le;Xi[i+21800>>2]=le}d=Xi[ae>>2]|0;Xi[E>>2]=0;a=(Xi[e+26256>>2]|0)+(d*48|0)|0;n=a+48|0;do{Wi[a>>0]=0;a=a+1|0}while((a|0)<(n|0));w=i+21796|0;if(!(Xi[w>>2]|0))r=0;else{Xi[E>>2]=128;r=128}if((Xi[$>>2]|0)==3){r=r|63744;Xi[E>>2]=r;if(Xi[i+21812>>2]|0){wD(e,i,r);kD(e,i,r)}DD(e,i,E);a=Xi[E>>2]|2048;Xi[E>>2]=a;r=e+26652|0}else{a=r|14344;Xi[E>>2]=a;wD(e,i,a);s=Xi[e+24688>>2]|0;u=Xi[e+24656>>2]|0;r=e+26652|0;h=Xi[r>>2]|0;Xi[i+44108>>2]=0;Xi[i+44116>>2]=0;Xi[i+44124>>2]=0;Xi[i+44132>>2]=0;f=Xi[i+21716>>2]|0;if(!(f&12288))if(!f)re=79;else{b=156384;l=-1;re=26}else{n=Xi[i+21696>>2]|0;le=qi[Xi[i+21724>>2]>>0]|0;l=Wi[s+((le&254)+(n<<2|1))>>0]|0;n=u+((Zi(le,h)|0)+3+(Xi[(Xi[e+26644>>2]|0)+(n<<2)>>2]|0)<<2)|0;do{if(Xi[G>>2]|0){f=(f&128|0)!=0;if(!(Xi[w>>2]|0)){if(!f){f=n;break}f=Xi[n>>2]|0;Xi[c>>2]=f;Gi[c+2>>1]=f>>16<<1;f=c;l=l>>1;break}else{if(f){f=n;break}f=Xi[n>>2]|0;Xi[c>>2]=f;Gi[c+2>>1]=(f>>16|0)/2|0;f=c;l=l<<1;break}}else f=n}while(0);if(!(Xi[f>>2]|l))re=79;else{b=f;re=26}}do{if((re|0)==26){f=Xi[i+21708>>2]|0;if(!(f&12288))if(!f){re=79;break}else{k=156384;o=-1}else{t=Xi[i+21688>>2]|0;n=Wi[s+(t<<2|2)>>0]|0;t=u+((Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)+(h*3|0)<<2)|0;do{if(Xi[G>>2]|0){f=(f&128|0)!=0;if(!(Xi[w>>2]|0)){if(!f){f=t;break}le=Xi[t>>2]|0;f=c+4|0;Xi[f>>2]=le;Gi[c+6>>1]=le>>16<<1;n=n>>1;break}else{if(f){f=t;break}le=Xi[t>>2]|0;f=c+4|0;Xi[f>>2]=le;Gi[c+6>>1]=(le>>16|0)/2|0;n=n<<1;break}}else f=t}while(0);if(!(Xi[f>>2]|n)){re=79;break}else{k=f;o=n}}n=Xi[i+21712>>2]|0;do{if(!(n&12288))if(!n){n=Xi[i+21704>>2]|0;if(!(n&12288)){u=156384;f=(n|0)==0?-2:-1;break}t=Xi[i+21684>>2]|0;le=Xi[i+21728>>2]|0;f=Wi[s+(t<<2|le&2|1)>>0]|0;t=u+(h+3+(le&h<<1)+(Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)<<2)|0;if(Xi[G>>2]|0){n=(n&128|0)!=0;if(!(Xi[w>>2]|0)){if(!n){u=t;break}le=Xi[t>>2]|0;u=c+8|0;Xi[u>>2]=le;Gi[c+10>>1]=le>>16<<1;f=f>>1;break}else{if(n){u=t;break}le=Xi[t>>2]|0;u=c+8|0;Xi[u>>2]=le;Gi[c+10>>1]=(le>>16|0)/2|0;f=f<<1;break}}else u=t}else{u=156384;f=-1}else{t=Xi[i+21692>>2]|0;f=Wi[s+(t<<2|2)>>0]|0;t=u+((Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)+(h*3|0)<<2)|0;if(Xi[G>>2]|0){n=(n&128|0)!=0;if(!(Xi[w>>2]|0)){if(!n){u=t;break}le=Xi[t>>2]|0;u=c+8|0;Xi[u>>2]=le;Gi[c+10>>1]=le>>16<<1;f=f>>1;break}else{if(n){u=t;break}le=Xi[t>>2]|0;u=c+8|0;Xi[u>>2]=le;Gi[c+10>>1]=(le>>16|0)/2|0;f=f<<1;break}}else u=t}}while(0);n=(o|0)!=0;l=(l|0)!=0;f=(n&1^1)+(l&1^1)+((f|0)==0&1)|0;do{if((f|0)>1){le=Gi[b>>1]|0;f=le<<16>>16;l=Gi[k>>1]|0;n=l<<16>>16;t=Gi[u>>1]|0;o=t<<16>>16;if(le<<16>>16>l<<16>>16)if(t<<16>>16>l<<16>>16)o=(o|0)>(f|0)?f:o;else o=n;else if(l<<16>>16>t<<16>>16)o=(o|0)>(f|0)?o:f;else o=n;le=Gi[b+2>>1]|0;s=le<<16>>16;n=Gi[k+2>>1]|0;f=n<<16>>16;l=Gi[u+2>>1]|0;t=l<<16>>16;if(le<<16>>16>n<<16>>16){if(l<<16>>16<=n<<16>>16)break;f=(t|0)>(s|0)?s:t;break}else{if(n<<16>>16<=l<<16>>16)break;f=(t|0)>(s|0)?t:s;break}}else{if((f|0)==1){if(!l){o=Gi[b>>1]|0;f=Gi[b+2>>1]|0;break}if(n){o=Gi[u>>1]|0;f=Gi[u+2>>1]|0;break}else{o=Gi[k>>1]|0;f=Gi[k+2>>1]|0;break}}le=Gi[b>>1]|0;f=le<<16>>16;l=Gi[k>>1]|0;n=l<<16>>16;t=Gi[u>>1]|0;o=t<<16>>16;if(le<<16>>16>l<<16>>16)if(t<<16>>16>l<<16>>16)o=(o|0)>(f|0)?f:o;else o=n;else if(l<<16>>16>t<<16>>16)o=(o|0)>(f|0)?o:f;else o=n;le=Gi[b+2>>1]|0;s=le<<16>>16;n=Gi[k+2>>1]|0;f=n<<16>>16;l=Gi[u+2>>1]|0;t=l<<16>>16;if(le<<16>>16>n<<16>>16){if(l<<16>>16<=n<<16>>16)break;f=(t|0)>(s|0)?s:t;break}else{if(n<<16>>16<=l<<16>>16)break;f=(t|0)>(s|0)?t:s;break}}}while(0);le=f<<16|o&65535;Xi[i+43824>>2]=le;Xi[i+43828>>2]=le;Xi[i+43832>>2]=le;Xi[i+43836>>2]=le;Xi[i+43856>>2]=le;Xi[i+43860>>2]=le;Xi[i+43864>>2]=le;Xi[i+43868>>2]=le;Xi[i+43888>>2]=le;Xi[i+43892>>2]=le;Xi[i+43896>>2]=le;Xi[i+43900>>2]=le;Xi[i+43920>>2]=le;Xi[i+43924>>2]=le;Xi[i+43928>>2]=le;Xi[i+43932>>2]=le}}while(0);if((re|0)==79){Z=i+43824|0;Q=i+43856|0;fe=i+43888|0;le=i+43920|0;Xi[Z>>2]=0;Xi[Z+4>>2]=0;Xi[Z+8>>2]=0;Xi[Z+12>>2]=0;Xi[Q>>2]=0;Xi[Q+4>>2]=0;Xi[Q+8>>2]=0;Xi[Q+12>>2]=0;Xi[fe>>2]=0;Xi[fe+4>>2]=0;Xi[fe+8>>2]=0;Xi[fe+12>>2]=0;Xi[le>>2]=0;Xi[le+4>>2]=0;Xi[le+8>>2]=0;Xi[le+12>>2]=0}}l=Xi[r>>2]|0;r=(Zi(l<<2,Xi[ie>>2]|0)|0)+(Xi[ee>>2]<<2)|0;f=Xi[ae>>2]<<2;if(!(a&12288)){le=Xi[e+24688>>2]|0;Gi[le+f>>1]=-1;Gi[le+(f|2)>>1]=-1}else{ee=Xi[e+24656>>2]|0;le=i+43824|0;fe=Xi[le+4>>2]|0;ie=ee+(r<<2)|0;Xi[ie>>2]=Xi[le>>2];Xi[ie+4>>2]=fe;ie=i+43832|0;fe=Xi[ie+4>>2]|0;le=ee+((r|2)<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=i+43856|0;fe=Xi[le+4>>2]|0;ie=r+l|0;Q=ee+(ie<<2)|0;Xi[Q>>2]=Xi[le>>2];Xi[Q+4>>2]=fe;Q=i+43864|0;fe=Xi[Q+4>>2]|0;ie=ee+(ie+2<<2)|0;Xi[ie>>2]=Xi[Q>>2];Xi[ie+4>>2]=fe;ie=i+43888|0;fe=Xi[ie+4>>2]|0;Q=r+(l<<1)|0;le=ee+(Q<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=i+43896|0;fe=Xi[le+4>>2]|0;Q=ee+(Q+2<<2)|0;Xi[Q>>2]=Xi[le>>2];Xi[Q+4>>2]=fe;Q=i+43920|0;fe=Xi[Q+4>>2]|0;le=r+(l*3|0)|0;ie=ee+(le<<2)|0;Xi[ie>>2]=Xi[Q>>2];Xi[ie+4>>2]=fe;ie=i+43928|0;fe=Xi[ie+4>>2]|0;le=ee+(le+2<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=(Xi[i+48672>>2]|0)+(Xi[(Xi[e+26648>>2]|0)+(Xi[ae>>2]<<2)>>2]<<1)|0;Xi[le>>2]=0;Xi[le+4>>2]=0;Xi[le+8>>2]=0;Xi[le+12>>2]=0;le=Xi[e+24688>>2]|0;Wi[le+f>>0]=Wi[i+44108>>0]|0;Wi[le+(f|1)>>0]=Wi[i+44110>>0]|0;Wi[le+(f|2)>>0]=Wi[i+44124>>0]|0;Wi[le+(f|3)>>0]=Wi[i+44126>>0]|0}if(a&49152|0){ee=Xi[e+24660>>2]|0;le=i+43984|0;fe=Xi[le+4>>2]|0;ie=ee+(r<<2)|0;Xi[ie>>2]=Xi[le>>2];Xi[ie+4>>2]=fe;ie=i+43992|0;fe=Xi[ie+4>>2]|0;le=ee+((r|2)<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=i+44016|0;fe=Xi[le+4>>2]|0;ie=r+l|0;Q=ee+(ie<<2)|0;Xi[Q>>2]=Xi[le>>2];Xi[Q+4>>2]=fe;Q=i+44024|0;fe=Xi[Q+4>>2]|0;ie=ee+(ie+2<<2)|0;Xi[ie>>2]=Xi[Q>>2];Xi[ie+4>>2]=fe;ie=i+44048|0;fe=Xi[ie+4>>2]|0;Q=r+(l<<1)|0;le=ee+(Q<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=i+44056|0;fe=Xi[le+4>>2]|0;Q=ee+(Q+2<<2)|0;Xi[Q>>2]=Xi[le>>2];Xi[Q+4>>2]=fe;Q=i+44080|0;fe=Xi[Q+4>>2]|0;le=r+(l*3|0)|0;ie=ee+(le<<2)|0;Xi[ie>>2]=Xi[Q>>2];Xi[ie+4>>2]=fe;ie=i+44088|0;fe=Xi[ie+4>>2]|0;le=ee+(le+2<<2)|0;Xi[le>>2]=Xi[ie>>2];Xi[le+4>>2]=fe;le=(Xi[i+48676>>2]|0)+(Xi[(Xi[e+26648>>2]|0)+(Xi[ae>>2]<<2)>>2]<<1)|0;Xi[le>>2]=0;Xi[le+4>>2]=0;Xi[le+8>>2]=0;Xi[le+12>>2]=0;le=Xi[e+24692>>2]|0;Wi[le+f>>0]=Wi[i+44148>>0]|0;Wi[le+(f|1)>>0]=Wi[i+44150>>0]|0;Wi[le+(f|2)>>0]=Wi[i+44164>>0]|0;Wi[le+(f|3)>>0]=Wi[i+44166>>0]|0}if(!((a&64|0)==0|(Xi[$>>2]|0)!=3)){ae=Xi[ae>>2]<<2;le=Xi[e+205840>>2]|0;Wi[le+(ae|1)>>0]=(Ji[i+44378>>1]|0)>>>1;Wi[le+(ae|2)>>0]=(Ji[i+44380>>1]|0)>>>1;Wi[le+(ae|3)>>0]=(Ji[i+44382>>1]|0)>>>1}Xi[(Xi[e+24668>>2]|0)+(d<<2)>>2]=Xi[E>>2];Wi[(Xi[e+24644>>2]|0)+d>>0]=Xi[i+824>>2];Gi[(Xi[e+205804>>2]|0)+(d<<1)>>1]=Xi[i+808>>2];Xi[i+21624>>2]=1;Gi[(Xi[e+205824>>2]|0)+(ne<<1)>>1]=0;Wi[(Xi[e+205828>>2]|0)+ne>>0]=0;Xi[i+840>>2]=0;r=0}else re=89}else re=89;e:do{if((re|0)==89){if(Xi[G>>2]|0?(Xi[ie>>2]&1|0)==0:0){X=hD(e,i)|0;Xi[i+21796>>2]=X;Xi[i+21800>>2]=X}Xi[i+21624>>2]=0;K=i+21796|0;wD(e,i,0-(Xi[K>>2]|0)|0);i:do{switch(Xi[$>>2]|0){case 3:{r=i+48680|0;r:do{if(!(uD(r,28-(((Xi[i+21716>>2]|0)+511|0)>>>8&1)+(((Xi[i+21708>>2]|0)+511|0)>>>8&1^1)+(i+48728)|0)|0)){Xi[fe>>2]=0;r=0}else{if(!(uD(r,i+48758|0)|0)){r=(uD(r,i+48760|0)|0)+1|0;Xi[fe>>2]=r;break}l=(uD(r,i+48759|0)|0)<<3;f=i+48760|0;l=((uD(r,f)|0)<<2)+l|0;l=l+((uD(r,f)|0)<<1)|0;l=l+(uD(r,f)|0)|0;if((l|0)<8){r=l+3|0;Xi[fe>>2]=r;break}switch(l|0){case 13:{r=bD(i,32,0)|0;Xi[fe>>2]=r;re=113;break i}case 14:{Xi[fe>>2]=11;r=11;break r}case 15:{Xi[fe>>2]=22;r=22;break r}default:{r=(l<<1)+-4+(uD(r,f)|0)|0;Xi[fe>>2]=r;break r}}}}while(0);I=qi[92960+(r<<2)+2>>0]|0;l=Ji[92960+(r<<2)>>1]|0;Xi[fe>>2]=l;X=0;r=I;break}case 2:{r=i+48680|0;if(uD(r,i+48742|0)|0){r=bD(i,17,0)|0;Xi[fe>>2]=r;re=113;break i}if(!(uD(r,i+48743|0)|0))r=(uD(r,i+48744|0)|0)*3|0;else r=2-(uD(r,i+48745|0)|0)|0;I=qi[93052+(r<<2)+2>>0]|0;l=Ji[93052+(r<<2)>>1]|0;Xi[fe>>2]=l;X=0;r=I;break}default:{r=bD(i,3,1)|0;Xi[fe>>2]=r;if(r|0?(Xi[i+812>>2]|0)==5:0){r=r+-1|0;Xi[fe>>2]=r;re=113}else re=113}}}while(0);if((re|0)==113){X=qi[93072+(r<<2)+3>>0]|0;Xi[i+21636>>2]=qi[93072+(r<<2)+2>>0];l=Ji[93072+(r<<2)>>1]|0;Xi[fe>>2]=l;r=0}if(Xi[K>>2]|0){l=l|128;Xi[fe>>2]=l}Gi[(Xi[e+205804>>2]|0)+(ne<<1)>>1]=Xi[i+808>>2];if(l&4|0){r=(Zi(Ji[92952+(Xi[Q>>2]<<1)>>1]|0,Xi[e+27844>>2]|0)|0)>>3;f=i+48680|0;a=Xi[i+48696>>2]|0;l=Xi[f>>2]|0;a=(l&1|0)==0?a:a+-1|0;a=(l&511|0)==0?a:a+-1|0;l=Xi[i+48700>>2]|0;if((l-a|0)<(r|0)){r=-1;break}Xi[i+43608>>2]=a;r=a+r|0;r=AN(f,r,l-r|0)|0;if((r|0)<0)break;Gi[(Xi[e+205824>>2]|0)+(ne<<1)>>1]=-2065;Wi[(Xi[e+205828>>2]|0)+ne>>0]=0;Wi[(Xi[e+24644>>2]|0)+ne>>0]=0;a=(Xi[e+26256>>2]|0)+(ne*48|0)|0;n=a+48|0;do{Wi[a>>0]=16;a=a+1|0}while((a|0)<(n|0));Xi[(Xi[e+24668>>2]|0)+(ne<<2)>>2]=Xi[fe>>2];Xi[i+840>>2]=0;r=0;break}kD(e,i,l);i:do{if(!(l&7)){if((r|0)==4){o=i+48680|0;if((Xi[$>>2]|0)==3){f=i+48764|0;l=i+48765|0;a=i+48767|0;n=i+48766|0;t=0;do{do{if(!(dD(o,f)|0))r=0;else{if(!(dD(o,l)|0)){r=(dD(o,a)|0)+1|0;break}if(dD(o,n)|0)if(!(dD(o,a)|0))r=7;else{r=(dD(o,a)|0)+11|0;break}else r=3;r=((dD(o,a)|0)<<1)+r|0;r=r+(dD(o,a)|0)|0}}while(0);Xi[Y+(t<<2)>>2]=qi[93176+((r&65535)<<2)+2>>0];Gi[i+44376+(t<<1)>>1]=Gi[93176+((r&65535)<<2)>>1]|0;t=t+1|0}while((t|0)!=4);if((Gi[i+44378>>1]|Gi[i+44376>>1]|Gi[i+44380>>1]|Gi[i+44382>>1])&256){DD(e,i,fe);Wi[i+44166>>0]=-2;Wi[i+44126>>0]=-2;Wi[i+44150>>0]=-2;Wi[i+44110>>0]=-2;r=0;do{x=qi[120643+(r<<2)>>0]|0;U=((Ji[i+44376+(r<<1)>>1]|0)>>>1&255)*257&65535;Gi[i+44336+x>>1]=U;Gi[x+8+(i+44336)>>1]=U;r=r+1|0}while((r|0)!=4)}}else{f=i+48749|0;l=i+48750|0;a=i+48751|0;n=0;do{if(!(dD(o,f)|0))if(!(dD(o,l)|0))r=1;else{r=(dD(o,a)|0)==0;r=r?3:2}else r=0;Xi[Y+(n<<2)>>2]=qi[93228+(r<<2)+2>>0];Gi[i+44376+(n<<1)>>1]=Gi[93228+(r<<2)>>1]|0;n=n+1|0}while((n|0)!=4)}B=i+23380|0;r:do{if(!(Xi[B>>2]|0))r=0;else{t=i+21800|0;o=0;f:while(1){l=4096<<(o<<1);a=i+23372+(o<<2)|0;n=0;do{r=Ji[i+44376+(n<<1)>>1]|0;if(!(r&256)){if(r&l){f=Xi[a>>2]<<Xi[t>>2];if(f>>>0>1){r=vD(i,o,n<<2)|0;if(r>>>0>=f>>>0)break f}else r=0}else r=-1;U=r&255;x=qi[120643+(n<<2)>>0]|0;Wi[x+9+(i+44096+(o*40|0))>>0]=U;Wi[x+8+(i+44096+(o*40|0))>>0]=U;Wi[x+1+(i+44096+(o*40|0))>>0]=U}n=n+1|0}while((n|0)<4);o=o+1|0;r=Xi[B>>2]|0;if(o>>>0>=r>>>0)break r}e=Xi[e+4>>2]|0;Xi[s>>2]=r;Xi[s+4>>2]=f;nA(e,16,109882,s);r=-1;break e}}while(0);if(!j)s=0;else{j=(Xi[e+26732>>2]|0)==0;s=i+44376|0;s=(((j?24117616:7340144)&Xi[s>>2]|0)==0?((j?24117616:7340144)&Xi[s+4>>2]|0)==0:0)&1}if(!r)break;O=e+24620|0;A=i+21716|0;g=i+21696|0;M=e+26644|0;R=e+26652|0;H=0;while(1){C=H<<1;T=4096<<C;N=i+44096+(H*40|0)+11|0;D=i+43776+(H*160|0)+40|0;C=12288<<C;P=i+43776+(H*160|0)+42|0;I=0;do{L=I<<2;r=qi[120643+L>>0]|0;Wi[i+44096+(H*40|0)+r>>0]=Wi[r+1+(i+44096+(H*40|0))>>0]|0;f=Ji[i+44376+(I<<1)>>1]|0;do{if(!(f&256)){if(!(f&T)){Xi[i+43776+(H*160|0)+(r<<2)>>2]=0;Xi[i+43776+(H*160|0)+(r<<2)+4>>2]=0;Xi[i+43776+(H*160|0)+(r<<2)+32>>2]=0;Xi[i+43776+(H*160|0)+(r<<2)+36>>2]=0;Xi[i+44176+(H*80|0)+(r<<1)>>2]=0;Xi[i+44176+(H*80|0)+(r<<1)+16>>2]=0;break}m=f&24|0?2:1;p=Xi[Y+(I<<2)>>2]|0;if((p|0)>0){F=(f&8|0)==0;y=(f&16|0)==0;E=(f&32|0)==0;_=0;do{r=Wi[120643+((Zi(_,m)|0)+L)>>0]|0;S=r&255;o=Wi[i+44096+(H*40|0)+S>>0]|0;u=o<<24>>24;d=S+-8|0;w=Wi[i+44096+(H*40|0)+d>>0]|0;v=S+-1|0;k=Wi[i+44096+(H*40|0)+v>>0]|0;h=i+43776+(H*160|0)+(v<<2)|0;b=i+43776+(H*160|0)+(d<<2)|0;n=d+m|0;l=Wi[i+44096+(H*40|0)+n>>0]|0;f=l<<24>>24;l=l<<24>>24==-2;do{if((S&7|0)==4&((r&255)>19&(l&(Xi[G>>2]|0)!=0))){if((Wi[N>>0]|0)==-2){re=189;break}t=Xi[(Xi[O>>2]|0)+44>>2]|0;Xi[D>>2]=0;a=(Xi[A>>2]&128|0)==0;if(!(Xi[K>>2]|0)){if(a){re=189;break}j=Xi[W>>2]|0;r=j+(Xi[g>>2]|0)|0;f=(Xi[ie>>2]<<1&2)+(S>>>5)|0;if(!(Xi[t+((Zi(f>>>2,j)|0)+r<<2)>>2]&C)){a=-1;c=D;break}c=(Xi[(Xi[M>>2]|0)+(r<<2)>>2]|0)+3+(Zi(Xi[R>>2]|0,f)|0)|0;a=Xi[O>>2]|0;j=Xi[a+32+(H<<2)>>2]|0;Gi[D>>1]=Gi[j+(c<<2)>>1]|0;Gi[P>>1]=Gi[j+(c<<2)+2>>1]<<1;a=Wi[(Xi[a+64+(H<<2)>>2]|0)+((f&14)+(r<<2|1))>>0]>>1;c=D;break}else{if(!a){re=189;break}r=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;f=S>>>2;if(!(Xi[t+(r<<2)>>2]&C)){a=-1;c=D;break}c=(Xi[(Xi[M>>2]|0)+(r<<2)>>2]|0)+3+(Zi(Xi[R>>2]|0,f&3)|0)|0;a=Xi[O>>2]|0;j=Xi[a+32+(H<<2)>>2]|0;Gi[D>>1]=Gi[j+(c<<2)>>1]|0;Gi[P>>1]=(Gi[j+(c<<2)+2>>1]|0)/2|0;a=Wi[(Xi[a+64+(H<<2)>>2]|0)+(f&2|r<<2|1)>>0]<<1;c=D;break}}else re=189}while(0);do{if((re|0)==189){re=0;if(l){c=S+-9|0;a=Wi[i+44096+(H*40|0)+c>>0]|0;c=i+43776+(H*160|0)+(c<<2)|0;break}else{a=f;c=i+43776+(H*160|0)+(n<<2)|0;break}}}while(0);l=w<<24>>24==o<<24>>24;f=k<<24>>24==o<<24>>24;r=(f&1)+(l&1)+((a|0)==(u|0)&1)|0;do{if((r|0)>1){j=Gi[h>>1]|0;n=j<<16>>16;r=Gi[b>>1]|0;f=r<<16>>16;l=Gi[c>>1]|0;a=l<<16>>16;do{if(j<<16>>16>r<<16>>16){if(l<<16>>16<=r<<16>>16)break;f=(a|0)>(n|0)?n:a}else{if(r<<16>>16<=l<<16>>16)break;f=(a|0)>(n|0)?a:n}}while(0);j=Gi[i+43776+(H*160|0)+(v<<2)+2>>1]|0;t=j<<16>>16;l=Gi[i+43776+(H*160|0)+(d<<2)+2>>1]|0;a=l<<16>>16;r=Gi[c+2>>1]|0;n=r<<16>>16;if(j<<16>>16>l<<16>>16){if(r<<16>>16<=l<<16>>16)break;a=(n|0)>(t|0)?t:n;break}else{if(l<<16>>16<=r<<16>>16)break;a=(n|0)>(t|0)?n:t;break}}else{if((r|0)==1){if(f){f=Gi[h>>1]|0;a=Gi[i+43776+(H*160|0)+(v<<2)+2>>1]|0;break}if(l){f=Gi[b>>1]|0;a=Gi[i+43776+(H*160|0)+(d<<2)+2>>1]|0;break}else{f=Gi[c>>1]|0;a=Gi[c+2>>1]|0;break}}n=Gi[h>>1]|0;t=n<<16>>16;if(k<<24>>24!=-2&(w<<24>>24==-2&(a|0)==-2)){f=t;a=Gi[i+43776+(H*160|0)+(v<<2)+2>>1]|0;break}r=Gi[b>>1]|0;f=r<<16>>16;l=Gi[c>>1]|0;a=l<<16>>16;do{if(n<<16>>16>r<<16>>16){if(l<<16>>16<=r<<16>>16)break;f=(a|0)>(t|0)?t:a}else{if(r<<16>>16<=l<<16>>16)break;f=(a|0)>(t|0)?a:t}}while(0);j=Gi[i+43776+(H*160|0)+(v<<2)+2>>1]|0;t=j<<16>>16;l=Gi[i+43776+(H*160|0)+(d<<2)+2>>1]|0;a=l<<16>>16;r=Gi[c+2>>1]|0;n=r<<16>>16;if(j<<16>>16>l<<16>>16){if(r<<16>>16<=l<<16>>16)break;a=(n|0)>(t|0)?t:n;break}else{if(l<<16>>16<=r<<16>>16)break;a=(n|0)>(t|0)?n:t;break}}}while(0);l=(qi[i+44176+(H*80|0)+(d<<1)+1>>0]|0)+(qi[i+44176+(H*80|0)+(v<<1)+1>>0]|0)|0;r=ED(i,40,(qi[i+44176+(H*80|0)+(d<<1)>>0]|0)+(qi[i+44176+(H*80|0)+(v<<1)>>0]|0)|0,z)|0;l=ED(i,47,l,V)|0;if((r|0)==-2147483648|(l|0)==-2147483648){r=-1094995529;break e}f=r+f|0;r=l+a|0;do{if(F){if(!y){a=f&65535;j=S+1|0;Gi[i+43776+(H*160|0)+(j<<2)>>1]=a;r=r&65535;Gi[i+43776+(H*160|0)+(j<<2)+2>>1]=r;f=Xi[z>>2]|0;Wi[i+44176+(H*80|0)+(j<<1)>>0]=f;l=Xi[V>>2]|0;Wi[i+44176+(H*80|0)+(j<<1)+1>>0]=l;break}if(E){a=f&65535;r=r&65535;f=Xi[z>>2]|0;l=Xi[V>>2]|0;break}else{a=f&65535;j=S+8|0;Gi[i+43776+(H*160|0)+(j<<2)>>1]=a;r=r&65535;Gi[i+43776+(H*160|0)+(j<<2)+2>>1]=r;f=Xi[z>>2]|0;Wi[i+44176+(H*80|0)+(j<<1)>>0]=f;l=Xi[V>>2]|0;Wi[i+44176+(H*80|0)+(j<<1)+1>>0]=l;break}}else{a=f&65535;v=S+9|0;Gi[i+43776+(H*160|0)+(v<<2)>>1]=a;U=S+8|0;Gi[i+43776+(H*160|0)+(U<<2)>>1]=a;j=S+1|0;Gi[i+43776+(H*160|0)+(j<<2)>>1]=a;r=r&65535;Gi[i+43776+(H*160|0)+(v<<2)+2>>1]=r;Gi[i+43776+(H*160|0)+(U<<2)+2>>1]=r;Gi[i+43776+(H*160|0)+(j<<2)+2>>1]=r;f=Xi[z>>2]|0;l=f&255;Wi[i+44176+(H*80|0)+(v<<1)>>0]=l;Wi[i+44176+(H*80|0)+(U<<1)>>0]=l;Wi[i+44176+(H*80|0)+(j<<1)>>0]=l;l=Xi[V>>2]|0;x=l&255;Wi[i+44176+(H*80|0)+(v<<1)+1>>0]=x;Wi[i+44176+(H*80|0)+(U<<1)+1>>0]=x;Wi[i+44176+(H*80|0)+(j<<1)+1>>0]=x}}while(0);Gi[i+43776+(H*160|0)+(S<<2)>>1]=a;Gi[i+43776+(H*160|0)+(S<<2)+2>>1]=r;Wi[i+44176+(H*80|0)+(S<<1)>>0]=f;Wi[i+44176+(H*80|0)+(S<<1)+1>>0]=l;_=_+1|0}while((_|0)<(p|0))}}else{Xi[i+44176+(H*80|0)+(r<<1)>>2]=0;Xi[i+44176+(H*80|0)+(r<<1)+16>>2]=0}}while(0);I=I+1|0}while((I|0)<4);H=H+1|0;if(H>>>0>=(Xi[B>>2]|0)>>>0)break i}}if(l&256|0){DD(e,i,fe);Xi[i+44200>>2]=0;Xi[i+44204>>2]=0;Xi[i+44216>>2]=0;Xi[i+44220>>2]=0;Xi[i+44232>>2]=0;Xi[i+44236>>2]=0;Xi[i+44248>>2]=0;Xi[i+44252>>2]=0;Xi[i+44280>>2]=0;Xi[i+44284>>2]=0;Xi[i+44296>>2]=0;Xi[i+44300>>2]=0;Xi[i+44312>>2]=0;Xi[i+44316>>2]=0;Xi[i+44328>>2]=0;Xi[i+44332>>2]=0;s=Xi[e+26732>>2]&j;break}if(l&8|0){c=i+23380|0;r=Xi[c>>2]|0;if(!r){s=j;break}n=i+21800|0;a=0;do{if(l&4096<<(a<<1)){f=Xi[i+23372+(a<<2)>>2]<<Xi[n>>2];if(f>>>0>1){r=vD(i,a,0)|0;if(r>>>0>=f>>>0){re=242;break}}else r=0;r=Zi(r,16843009)|0;Xi[i+44096+(a*40|0)+12>>2]=r;Xi[i+44096+(a*40|0)+20>>2]=r;Xi[i+44096+(a*40|0)+28>>2]=r;Xi[i+44096+(a*40|0)+36>>2]=r;r=Xi[c>>2]|0}a=a+1|0}while(a>>>0<r>>>0);if((re|0)==242){e=Xi[e+4>>2]|0;Xi[t>>2]=r;Xi[t+4>>2]=f;nA(e,16,109882,t);r=-1;break e}if(!r){s=j;break}else f=0;while(1){if(l&4096<<(f<<1)){l=Wi[i+44096+(f*40|0)+12>>0]|0;u=Wi[i+44096+(f*40|0)+4>>0]|0;h=Wi[i+44096+(f*40|0)+11>>0]|0;t=i+43776+(f*160|0)+44|0;w=i+43776+(f*160|0)+16|0;r=Wi[i+44096+(f*40|0)+8>>0]|0;if(r<<24>>24==-2){s=Wi[i+44096+(f*40|0)+3>>0]|0;k=i+43776+(f*160|0)+12|0;b=3}else{s=r<<24>>24;k=i+43776+(f*160|0)+32|0;b=8}a=u<<24>>24==l<<24>>24;n=h<<24>>24==l<<24>>24;r=(n&1)+(a&1)+((s|0)==(l<<24>>24|0)&1)|0;do{if((r|0)>1){G=Gi[t>>1]|0;t=G<<16>>16;a=Gi[w>>1]|0;n=a<<16>>16;r=Gi[k>>1]|0;l=r<<16>>16;do{if(G<<16>>16>a<<16>>16){if(r<<16>>16<=a<<16>>16){l=n;break}l=(l|0)>(t|0)?t:l}else{if(a<<16>>16<=r<<16>>16){l=n;break}l=(l|0)>(t|0)?l:t}}while(0);G=Gi[i+43776+(f*160|0)+46>>1]|0;o=G<<16>>16;n=Gi[i+43776+(f*160|0)+18>>1]|0;a=n<<16>>16;r=Gi[i+43776+(f*160|0)+(b<<2)+2>>1]|0;t=r<<16>>16;if(G<<16>>16>n<<16>>16){if(r<<16>>16<=n<<16>>16){n=l;break}n=l;a=(t|0)>(o|0)?o:t;break}else{if(n<<16>>16<=r<<16>>16){n=l;break}n=l;a=(t|0)>(o|0)?t:o;break}}else{if((r|0)==1){if(n){n=Gi[t>>1]|0;a=Gi[i+43776+(f*160|0)+46>>1]|0;break}if(a){n=Gi[w>>1]|0;a=Gi[i+43776+(f*160|0)+18>>1]|0;break}else{n=Gi[k>>1]|0;a=Gi[i+43776+(f*160|0)+(b<<2)+2>>1]|0;break}}t=Gi[t>>1]|0;o=t<<16>>16;if(h<<24>>24!=-2&(u<<24>>24==-2&(s|0)==-2)){n=o;a=Gi[i+43776+(f*160|0)+46>>1]|0;break}n=Gi[w>>1]|0;l=n<<16>>16;r=Gi[k>>1]|0;a=r<<16>>16;do{if(t<<16>>16>n<<16>>16){if(r<<16>>16<=n<<16>>16)break;l=(a|0)>(o|0)?o:a}else{if(n<<16>>16<=r<<16>>16)break;l=(a|0)>(o|0)?a:o}}while(0);G=Gi[i+43776+(f*160|0)+46>>1]|0;o=G<<16>>16;n=Gi[i+43776+(f*160|0)+18>>1]|0;a=n<<16>>16;r=Gi[i+43776+(f*160|0)+(b<<2)+2>>1]|0;t=r<<16>>16;if(G<<16>>16>n<<16>>16){if(r<<16>>16<=n<<16>>16){n=l;break}n=l;a=(t|0)>(o|0)?o:t;break}else{if(n<<16>>16<=r<<16>>16){n=l;break}n=l;a=(t|0)>(o|0)?t:o;break}}}while(0);l=(qi[i+44176+(f*80|0)+9>>0]|0)+(qi[i+44176+(f*80|0)+23>>0]|0)|0;r=ED(i,40,(qi[i+44176+(f*80|0)+8>>0]|0)+(qi[i+44176+(f*80|0)+22>>0]|0)|0,d)|0;l=ED(i,47,l,v)|0;if((r|0)==-2147483648|(l|0)==-2147483648){r=-1094995529;break e}G=(Xi[v>>2]<<8&65280|Xi[d>>2]&255)*65537|0;Xi[i+44176+(f*80|0)+24>>2]=G;Xi[i+44176+(f*80|0)+28>>2]=G;Xi[i+44176+(f*80|0)+40>>2]=G;Xi[i+44176+(f*80|0)+44>>2]=G;Xi[i+44176+(f*80|0)+56>>2]=G;Xi[i+44176+(f*80|0)+60>>2]=G;Xi[i+44176+(f*80|0)+72>>2]=G;Xi[i+44176+(f*80|0)+76>>2]=G;r=l+a<<16|r+n&65535;Xi[i+43776+(f*160|0)+48>>2]=r;Xi[i+43776+(f*160|0)+52>>2]=r;Xi[i+43776+(f*160|0)+56>>2]=r;Xi[i+43776+(f*160|0)+60>>2]=r;Xi[i+43776+(f*160|0)+80>>2]=r;Xi[i+43776+(f*160|0)+84>>2]=r;Xi[i+43776+(f*160|0)+88>>2]=r;Xi[i+43776+(f*160|0)+92>>2]=r;Xi[i+43776+(f*160|0)+112>>2]=r;Xi[i+43776+(f*160|0)+116>>2]=r;Xi[i+43776+(f*160|0)+120>>2]=r;Xi[i+43776+(f*160|0)+124>>2]=r;Xi[i+43776+(f*160|0)+144>>2]=r;Xi[i+43776+(f*160|0)+148>>2]=r;Xi[i+43776+(f*160|0)+152>>2]=r;Xi[i+43776+(f*160|0)+156>>2]=r;r=Xi[c>>2]|0}f=f+1|0;if(f>>>0>=r>>>0){s=j;break i}l=Xi[fe>>2]|0}}z=i+23380|0;r=(Xi[z>>2]|0)==0;if(l&16|0){if(r){s=j;break}o=i+21800|0;s=0;r:do{a=s<<1;n=i+23372+(s<<2)|0;t=0;do{if(!(l&4096<<t+a)){Y=t<<4|12;Xi[i+44096+(s*40|0)+Y>>2]=-1;Xi[Y+8+(i+44096+(s*40|0))>>2]=-1}else{f=Xi[n>>2]<<Xi[o>>2];if(f>>>0>1){r=vD(i,s,t<<3)|0;if(r>>>0>=f>>>0){re=293;break r}}else r=0;Y=t<<4|12;V=Zi(r,16843009)|0;Xi[i+44096+(s*40|0)+Y>>2]=V;Xi[Y+8+(i+44096+(s*40|0))>>2]=V}t=t+1|0}while((t|0)<2);s=s+1|0;r=Xi[z>>2]|0}while(s>>>0<r>>>0);if((re|0)==293){e=Xi[e+4>>2]|0;Xi[h>>2]=r;Xi[h+4>>2]=f;nA(e,16,109882,h);r=-1;break e}if(!r){s=j;break}E=e+24620|0;S=i+21716|0;_=i+21696|0;m=e+26644|0;p=e+26652|0;I=0;while(1){F=I<<1;y=i+44096+(I*40|0)+4|0;O=i+43776+(I*160|0)+16|0;A=i+43776+(I*160|0)+18|0;g=i+44096+(I*40|0)+11|0;M=i+43776+(I*160|0)+40|0;R=12288<<F;T=i+43776+(I*160|0)+42|0;N=i+44096+(I*40|0)+27|0;D=i+43776+(I*160|0)+108|0;C=i+43776+(I*160|0)+110|0;L=0;do{if(!(Xi[fe>>2]&4096<<L+F)){Y=L<<4|12;Xi[i+44176+(I*80|0)+(Y<<1)>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+4>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+16>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+20>>2]=0;V=i+43776+(I*160|0)+(Y<<2)|0;Y=i+43776+(I*160|0)+(Y<<2)+32|0;Xi[V>>2]=0;Xi[V+4>>2]=0;Xi[V+8>>2]=0;Xi[V+12>>2]=0;Xi[Y>>2]=0;Xi[Y+4>>2]=0;Xi[Y+8>>2]=0;Xi[Y+12>>2]=0}else{v=L<<3;P=L<<4|12;s=Wi[i+44096+(I*40|0)+P>>0]|0;u=s<<24>>24;do{if(!L){if((Wi[y>>0]|0)!=s<<24>>24){re=305;break}n=Gi[O>>1]|0;l=Gi[A>>1]|0}else{if((Wi[N>>0]|0)!=s<<24>>24){re=305;break}n=Gi[D>>1]|0;l=Gi[C>>1]|0}}while(0);do{if((re|0)==305){re=0;r=Wi[120643+v>>0]|0;n=r&255;d=n+-8|0;w=Wi[i+44096+(I*40|0)+d>>0]|0;c=n+-1|0;k=Wi[i+44096+(I*40|0)+c>>0]|0;h=i+43776+(I*160|0)+(c<<2)|0;b=i+43776+(I*160|0)+(d<<2)|0;t=n+-4|0;l=Wi[i+44096+(I*40|0)+t>>0]|0;f=l<<24>>24;l=l<<24>>24==-2;do{if((n&7|0)==4&((r&255)>19&(l&(Xi[G>>2]|0)!=0))){if((Wi[g>>0]|0)==-2){re=314;break}o=Xi[(Xi[E>>2]|0)+44>>2]|0;Xi[M>>2]=0;a=(Xi[S>>2]&128|0)==0;if(!(Xi[K>>2]|0)){if(a){re=314;break}Y=Xi[W>>2]|0;f=Y+(Xi[_>>2]|0)|0;r=(Xi[ie>>2]<<1&2)+(n>>>5)|0;if(!(Xi[o+((Zi(r>>>2,Y)|0)+f<<2)>>2]&R)){n=-1;o=M;break}o=(Xi[(Xi[m>>2]|0)+(f<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r)|0)|0;n=Xi[E>>2]|0;Y=Xi[n+32+(I<<2)>>2]|0;Gi[M>>1]=Gi[Y+(o<<2)>>1]|0;Gi[T>>1]=Gi[Y+(o<<2)+2>>1]<<1;n=Wi[(Xi[n+64+(I<<2)>>2]|0)+((r&14)+(f<<2|1))>>0]>>1;o=M;break}else{if(!a){re=314;break}f=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;r=n>>>2;if(!(Xi[o+(f<<2)>>2]&R)){n=-1;o=M;break}o=(Xi[(Xi[m>>2]|0)+(f<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r&3)|0)|0;n=Xi[E>>2]|0;Y=Xi[n+32+(I<<2)>>2]|0;Gi[M>>1]=Gi[Y+(o<<2)>>1]|0;Gi[T>>1]=(Gi[Y+(o<<2)+2>>1]|0)/2|0;n=Wi[(Xi[n+64+(I<<2)>>2]|0)+(r&2|f<<2|1)>>0]<<1;o=M;break}}else re=314}while(0);do{if((re|0)==314){re=0;if(l){o=n+-9|0;n=Wi[i+44096+(I*40|0)+o>>0]|0;o=i+43776+(I*160|0)+(o<<2)|0;break}else{n=f;o=i+43776+(I*160|0)+(t<<2)|0;break}}}while(0);l=w<<24>>24==s<<24>>24;f=k<<24>>24==s<<24>>24;r=(f&1)+(l&1)+((n|0)==(u|0)&1)|0;if((r|0)>1){Y=Gi[h>>1]|0;n=Y<<16>>16;r=Gi[b>>1]|0;f=r<<16>>16;l=Gi[o>>1]|0;a=l<<16>>16;do{if(Y<<16>>16>r<<16>>16){if(l<<16>>16<=r<<16>>16){n=f;break}n=(a|0)>(n|0)?n:a}else{if(r<<16>>16<=l<<16>>16){n=f;break}n=(a|0)>(n|0)?a:n}}while(0);Y=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;t=Y<<16>>16;f=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;l=f<<16>>16;r=Gi[o+2>>1]|0;a=r<<16>>16;if(Y<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16)break;l=(a|0)>(t|0)?t:a;break}else{if(f<<16>>16<=r<<16>>16)break;l=(a|0)>(t|0)?a:t;break}}if((r|0)==1){if(f){n=Gi[h>>1]|0;l=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;break}if(l){n=Gi[b>>1]|0;l=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;break}else{n=Gi[o>>1]|0;l=Gi[o+2>>1]|0;break}}a=Gi[h>>1]|0;t=a<<16>>16;if(k<<24>>24!=-2&(w<<24>>24==-2&(n|0)==-2)){n=t;l=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;break}r=Gi[b>>1]|0;n=r<<16>>16;f=Gi[o>>1]|0;l=f<<16>>16;do{if(a<<16>>16>r<<16>>16){if(f<<16>>16<=r<<16>>16)break;n=(l|0)>(t|0)?t:l}else{if(r<<16>>16<=f<<16>>16)break;n=(l|0)>(t|0)?l:t}}while(0);Y=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;t=Y<<16>>16;f=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;l=f<<16>>16;r=Gi[o+2>>1]|0;a=r<<16>>16;if(Y<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16)break;l=(a|0)>(t|0)?t:a;break}else{if(f<<16>>16<=r<<16>>16)break;l=(a|0)>(t|0)?a:t;break}}}while(0);Y=qi[120643+v>>0]|0;r=Y+-1|0;Y=Y+-8|0;f=(qi[i+44176+(I*80|0)+(Y<<1)+1>>0]|0)+(qi[i+44176+(I*80|0)+(r<<1)+1>>0]|0)|0;r=ED(i,40,(qi[i+44176+(I*80|0)+(Y<<1)>>0]|0)+(qi[i+44176+(I*80|0)+(r<<1)>>0]|0)|0,H)|0;f=ED(i,47,f,B)|0;if((r|0)==-2147483648|(f|0)==-2147483648){r=-1094995529;break e}Y=(Xi[B>>2]<<8&65280|Xi[H>>2]&255)*65537|0;Xi[i+44176+(I*80|0)+(P<<1)>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+4>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+16>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+20>>2]=Y;Y=f+l<<16|r+n&65535;Xi[i+43776+(I*160|0)+(P<<2)>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+4>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+8>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+12>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+32>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+36>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+40>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+44>>2]=Y}L=L+1|0}while((L|0)<2);I=I+1|0;if(I>>>0>=(Xi[z>>2]|0)>>>0){s=j;break i}}}if(!r){o=i+21800|0;s=0;r:do{a=s<<1;n=i+23372+(s<<2)|0;t=0;do{if(!(l&4096<<t+a)){Y=t<<1;Gi[Y+12+(i+44096+(s*40|0))>>1]=-1;Gi[Y+20+(i+44096+(s*40|0))>>1]=-1;Gi[Y+28+(i+44096+(s*40|0))>>1]=-1;Gi[Y+36+(i+44096+(s*40|0))>>1]=-1}else{f=Xi[n>>2]<<Xi[o>>2];if(f>>>0>1){r=vD(i,s,t<<2)|0;if(r>>>0>=f>>>0){re=357;break r}}else r=0;Y=t<<1;V=r*257&65535;Gi[Y+12+(i+44096+(s*40|0))>>1]=V;Gi[Y+20+(i+44096+(s*40|0))>>1]=V;Gi[Y+28+(i+44096+(s*40|0))>>1]=V;Gi[Y+36+(i+44096+(s*40|0))>>1]=V}t=t+1|0}while((t|0)<2);s=s+1|0;r=Xi[z>>2]|0}while(s>>>0<r>>>0);if((re|0)==357){e=Xi[e+4>>2]|0;Xi[u>>2]=r;Xi[u+4>>2]=f;nA(e,16,109882,u);r=-1;break e}if(r){E=e+24620|0;S=i+21716|0;_=i+21696|0;m=e+26644|0;p=e+26652|0;I=0;while(1){F=I<<1;y=i+44096+(I*40|0)+11|0;O=i+43776+(I*160|0)+44|0;A=i+43776+(I*160|0)+46|0;g=i+43776+(I*160|0)+40|0;M=12288<<F;R=i+43776+(I*160|0)+42|0;T=i+44096+(I*40|0)+8|0;N=i+43776+(I*160|0)+20|0;D=i+44096+(I*40|0)+5|0;C=i+43776+(I*160|0)+32|0;L=0;do{if(!(Xi[fe>>2]&4096<<L+F)){Y=(L<<1)+12|0;Xi[i+44176+(I*80|0)+(Y<<1)>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+16>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+32>>2]=0;Xi[i+44176+(I*80|0)+(Y<<1)+48>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+4>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+32>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+36>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+64>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+68>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+96>>2]=0;Xi[i+43776+(I*160|0)+(Y<<2)+100>>2]=0}else{v=L<<2;P=(L<<1)+12|0;u=Wi[i+44096+(I*40|0)+P>>0]|0;k=u<<24>>24;do{if(!L)if((Wi[y>>0]|0)==u<<24>>24){n=Gi[O>>1]|0;l=Gi[A>>1]|0}else re=371;else{r=Wi[T>>0]|0;if(r<<24>>24==-2){r=Wi[D>>0]|0;f=N;l=5}else{f=C;l=8}if(r<<24>>24!=u<<24>>24){re=371;break}n=Gi[f>>1]|0;l=Gi[i+43776+(I*160|0)+(l<<2)+2>>1]|0}}while(0);do{if((re|0)==371){re=0;r=Wi[120643+v>>0]|0;n=r&255;d=n+-8|0;h=Wi[i+44096+(I*40|0)+d>>0]|0;c=n+-1|0;w=Wi[i+44096+(I*40|0)+c>>0]|0;s=i+43776+(I*160|0)+(c<<2)|0;b=i+43776+(I*160|0)+(d<<2)|0;t=n+-6|0;l=Wi[i+44096+(I*40|0)+t>>0]|0;f=l<<24>>24;l=l<<24>>24==-2;do{if((n&7|0)==4&((r&255)>19&(l&(Xi[G>>2]|0)!=0))){if((Wi[y>>0]|0)==-2){re=380;break}o=Xi[(Xi[E>>2]|0)+44>>2]|0;Xi[g>>2]=0;a=(Xi[S>>2]&128|0)==0;if(!(Xi[K>>2]|0)){if(a){re=380;break}Y=Xi[W>>2]|0;f=Y+(Xi[_>>2]|0)|0;r=(Xi[ie>>2]<<1&2)+(n>>>5)|0;if(!(Xi[o+((Zi(r>>>2,Y)|0)+f<<2)>>2]&M)){n=-1;o=g;break}o=(Xi[(Xi[m>>2]|0)+(f<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r)|0)|0;n=Xi[E>>2]|0;Y=Xi[n+32+(I<<2)>>2]|0;Gi[g>>1]=Gi[Y+(o<<2)>>1]|0;Gi[R>>1]=Gi[Y+(o<<2)+2>>1]<<1;n=Wi[(Xi[n+64+(I<<2)>>2]|0)+((r&14)+(f<<2|1))>>0]>>1;o=g;break}else{if(!a){re=380;break}f=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;r=n>>>2;if(!(Xi[o+(f<<2)>>2]&M)){n=-1;o=g;break}o=(Xi[(Xi[m>>2]|0)+(f<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r&3)|0)|0;n=Xi[E>>2]|0;Y=Xi[n+32+(I<<2)>>2]|0;Gi[g>>1]=Gi[Y+(o<<2)>>1]|0;Gi[R>>1]=(Gi[Y+(o<<2)+2>>1]|0)/2|0;n=Wi[(Xi[n+64+(I<<2)>>2]|0)+(r&2|f<<2|1)>>0]<<1;o=g;break}}else re=380}while(0);do{if((re|0)==380){re=0;if(l){o=n+-9|0;n=Wi[i+44096+(I*40|0)+o>>0]|0;o=i+43776+(I*160|0)+(o<<2)|0;break}else{n=f;o=i+43776+(I*160|0)+(t<<2)|0;break}}}while(0);l=h<<24>>24==u<<24>>24;f=w<<24>>24==u<<24>>24;r=(f&1)+(l&1)+((n|0)==(k|0)&1)|0;if((r|0)>1){Y=Gi[s>>1]|0;n=Y<<16>>16;r=Gi[b>>1]|0;f=r<<16>>16;l=Gi[o>>1]|0;a=l<<16>>16;do{if(Y<<16>>16>r<<16>>16){if(l<<16>>16<=r<<16>>16){n=f;break}n=(a|0)>(n|0)?n:a}else{if(r<<16>>16<=l<<16>>16){n=f;break}n=(a|0)>(n|0)?a:n}}while(0);Y=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;t=Y<<16>>16;f=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;l=f<<16>>16;r=Gi[o+2>>1]|0;a=r<<16>>16;if(Y<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16)break;l=(a|0)>(t|0)?t:a;break}else{if(f<<16>>16<=r<<16>>16)break;l=(a|0)>(t|0)?a:t;break}}if((r|0)==1){if(f){n=Gi[s>>1]|0;l=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;break}if(l){n=Gi[b>>1]|0;l=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;break}else{n=Gi[o>>1]|0;l=Gi[o+2>>1]|0;break}}a=Gi[s>>1]|0;t=a<<16>>16;if(w<<24>>24!=-2&(h<<24>>24==-2&(n|0)==-2)){n=t;l=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;break}r=Gi[b>>1]|0;n=r<<16>>16;f=Gi[o>>1]|0;l=f<<16>>16;do{if(a<<16>>16>r<<16>>16){if(f<<16>>16<=r<<16>>16)break;n=(l|0)>(t|0)?t:l}else{if(r<<16>>16<=f<<16>>16)break;n=(l|0)>(t|0)?l:t}}while(0);Y=Gi[i+43776+(I*160|0)+(c<<2)+2>>1]|0;t=Y<<16>>16;f=Gi[i+43776+(I*160|0)+(d<<2)+2>>1]|0;l=f<<16>>16;r=Gi[o+2>>1]|0;a=r<<16>>16;if(Y<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16)break;l=(a|0)>(t|0)?t:a;break}else{if(f<<16>>16<=r<<16>>16)break;l=(a|0)>(t|0)?a:t;break}}}while(0);Y=qi[120643+v>>0]|0;r=Y+-1|0;Y=Y+-8|0;f=(qi[i+44176+(I*80|0)+(Y<<1)+1>>0]|0)+(qi[i+44176+(I*80|0)+(r<<1)+1>>0]|0)|0;r=ED(i,40,(qi[i+44176+(I*80|0)+(Y<<1)>>0]|0)+(qi[i+44176+(I*80|0)+(r<<1)>>0]|0)|0,U)|0;f=ED(i,47,f,x)|0;if((r|0)==-2147483648|(f|0)==-2147483648){r=-1094995529;break e}Y=(Xi[x>>2]<<8&65280|Xi[U>>2]&255)*65537|0;Xi[i+44176+(I*80|0)+(P<<1)>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+16>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+32>>2]=Y;Xi[i+44176+(I*80|0)+(P<<1)+48>>2]=Y;Y=f+l<<16|r+n&65535;Xi[i+43776+(I*160|0)+(P<<2)>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+4>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+32>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+36>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+64>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+68>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+96>>2]=Y;Xi[i+43776+(I*160|0)+(P<<2)+100>>2]=Y}L=L+1|0}while((L|0)<2);I=I+1|0;if(I>>>0>=(Xi[z>>2]|0)>>>0){s=j;break}}}else s=j}else s=j}else{if(!(l&1)){W=i+21636|0;G=$N(e,i,Xi[W>>2]|0,0)|0;Xi[W>>2]=G;if((G|0)<0){r=-1;break e}}else{if((j|0)!=0?(uD(i+48680|0,(Xi[i+21808>>2]|0)+399+(i+48728)|0)|0)!=0:0){Xi[fe>>2]=l|16777216;r=0;do{G=qi[120643+r>>0]|0;W=Wi[G+-1+(i+21640)>>0]|0;K=Wi[G+-8+(i+21640)>>0]|0;W=(W|0)>(K|0)?K:W;W=(cD(i,(W|0)<0?2:W)|0)*257&65535;Gi[i+21640+G>>1]=W;Gi[G+8+(i+21640)>>1]=W;r=r+4|0}while((r|0)<16)}else{r=0;re=126}if((re|0)==126)while(1){re=0;G=qi[120643+r>>0]|0;W=Wi[G+-1+(i+21640)>>0]|0;K=Wi[G+-8+(i+21640)>>0]|0;W=(W|0)>(K|0)?K:W;Wi[i+21640+G>>0]=cD(i,(W|0)<0?2:W)|0;r=r+1|0;if((r|0)==16)break;else re=126}W=Xi[i+21680>>2]|0;G=Xi[(Xi[e+26648>>2]|0)+(Xi[ae>>2]<<2)>>2]|0;Xi[W+G>>2]=Xi[i+21676>>2];Wi[W+(G+4)>>0]=Wi[i+21671>>0]|0;Wi[W+(G+5)>>0]=Wi[i+21663>>0]|0;Wi[W+(G+6)>>0]=Wi[i+21655>>0]|0;if((QN(e,i)|0)<0){r=-1;break e}}if(!J){Xi[i+21632>>2]=6;s=j;break}if(!(Xi[i+21716>>2]|0))r=0;else r=(Wi[(Xi[e+205828>>2]|0)+(Xi[i+21696>>2]|0)>>0]|0)!=0&1;if(Xi[i+21708>>2]|0)r=((Wi[(Xi[e+205828>>2]|0)+(Xi[i+21688>>2]|0)>>0]|0)!=0&1)+r|0;f=i+48680|0;if(uD(f,r+64+(i+48728)|0)|0){r=i+48795|0;if(!(uD(f,r)|0))r=1;else{r=(uD(f,r)|0)==0;r=r?2:3}}else r=0;Wi[(Xi[e+205828>>2]|0)+ne>>0]=r;r=$N(e,i,r,1)|0;if((r|0)<0){r=-1;break e}Xi[i+21632>>2]=r;s=j}}while(0);if(Xi[fe>>2]&120|0){Wi[(Xi[e+205828>>2]|0)+ne>>0]=0;t=Xi[fe>>2]|0;r=Xi[e+26652>>2]|0;f=(Zi(r<<2,Xi[ie>>2]|0)|0)+(Xi[ee>>2]<<2)|0;o=Xi[ae>>2]<<2;if(!(t&12288)){G=Xi[e+24688>>2]|0;Gi[G+o>>1]=-1;Gi[G+(o|2)>>1]=-1}else{G=Xi[e+24656>>2]|0;l=i+43824|0;a=Xi[l+4>>2]|0;n=G+(f<<2)|0;Xi[n>>2]=Xi[l>>2];Xi[n+4>>2]=a;n=i+43832|0;a=Xi[n+4>>2]|0;l=G+((f|2)<<2)|0;Xi[l>>2]=Xi[n>>2];Xi[l+4>>2]=a;l=i+43856|0;a=Xi[l+4>>2]|0;n=f+r|0;W=G+(n<<2)|0;Xi[W>>2]=Xi[l>>2];Xi[W+4>>2]=a;W=i+43864|0;a=Xi[W+4>>2]|0;n=G+(n+2<<2)|0;Xi[n>>2]=Xi[W>>2];Xi[n+4>>2]=a;n=i+43888|0;a=Xi[n+4>>2]|0;W=f+(r<<1)|0;l=G+(W<<2)|0;Xi[l>>2]=Xi[n>>2];Xi[l+4>>2]=a;l=i+43896|0;a=Xi[l+4>>2]|0;W=G+(W+2<<2)|0;Xi[W>>2]=Xi[l>>2];Xi[W+4>>2]=a;W=i+43920|0;a=Xi[W+4>>2]|0;l=f+(r*3|0)|0;n=G+(l<<2)|0;Xi[n>>2]=Xi[W>>2];Xi[n+4>>2]=a;n=i+43928|0;a=Xi[n+4>>2]|0;l=G+(l+2<<2)|0;Xi[l>>2]=Xi[n>>2];Xi[l+4>>2]=a;l=Xi[(Xi[e+26648>>2]|0)+(Xi[ae>>2]<<2)>>2]|0;a=Xi[i+48672>>2]|0;n=a+(l<<1)|0;if(!(t&2048)){K=i+44248|0;W=Xi[K+4>>2]|0;G=n;Xi[G>>2]=Xi[K>>2];Xi[G+4>>2]=W;Gi[a+(l+6<<1)>>1]=Gi[i+44206>>1]|0;Gi[a+(l+5<<1)>>1]=Gi[i+44222>>1]|0;Gi[a+(l+4<<1)>>1]=Gi[i+44238>>1]|0}else{Xi[n>>2]=0;Xi[n+4>>2]=0;Xi[n+8>>2]=0;Xi[n+12>>2]=0}G=Xi[e+24688>>2]|0;Wi[G+o>>0]=Wi[i+44108>>0]|0;Wi[G+(o|1)>>0]=Wi[i+44110>>0]|0;Wi[G+(o|2)>>0]=Wi[i+44124>>0]|0;Wi[G+(o|3)>>0]=Wi[i+44126>>0]|0}if(t&49152|0){G=Xi[e+24660>>2]|0;l=i+43984|0;W=Xi[l+4>>2]|0;j=G+(f<<2)|0;Xi[j>>2]=Xi[l>>2];Xi[j+4>>2]=W;j=i+43992|0;W=Xi[j+4>>2]|0;l=G+((f|2)<<2)|0;Xi[l>>2]=Xi[j>>2];Xi[l+4>>2]=W;l=i+44016|0;W=Xi[l+4>>2]|0;j=f+r|0;K=G+(j<<2)|0;Xi[K>>2]=Xi[l>>2];Xi[K+4>>2]=W;K=i+44024|0;W=Xi[K+4>>2]|0;j=G+(j+2<<2)|0;Xi[j>>2]=Xi[K>>2];Xi[j+4>>2]=W;j=i+44048|0;W=Xi[j+4>>2]|0;K=f+(r<<1)|0;l=G+(K<<2)|0;Xi[l>>2]=Xi[j>>2];Xi[l+4>>2]=W;l=i+44056|0;W=Xi[l+4>>2]|0;K=G+(K+2<<2)|0;Xi[K>>2]=Xi[l>>2];Xi[K+4>>2]=W;K=i+44080|0;W=Xi[K+4>>2]|0;r=f+(r*3|0)|0;l=G+(r<<2)|0;Xi[l>>2]=Xi[K>>2];Xi[l+4>>2]=W;l=i+44088|0;f=Xi[l+4>>2]|0;r=G+(r+2<<2)|0;Xi[r>>2]=Xi[l>>2];Xi[r+4>>2]=f;r=Xi[(Xi[e+26648>>2]|0)+(Xi[ae>>2]<<2)>>2]|0;f=Xi[i+48676>>2]|0;l=f+(r<<1)|0;if(!(t&2048)){K=i+44328|0;W=Xi[K+4>>2]|0;G=l;Xi[G>>2]=Xi[K>>2];Xi[G+4>>2]=W;Gi[f+(r+6<<1)>>1]=Gi[i+44286>>1]|0;Gi[f+(r+5<<1)>>1]=Gi[i+44302>>1]|0;Gi[f+(r+4<<1)>>1]=Gi[i+44318>>1]|0}else{Xi[l>>2]=0;Xi[l+4>>2]=0;Xi[l+8>>2]=0;Xi[l+12>>2]=0}G=Xi[e+24692>>2]|0;Wi[G+o>>0]=Wi[i+44148>>0]|0;Wi[G+(o|1)>>0]=Wi[i+44150>>0]|0;Wi[G+(o|2)>>0]=Wi[i+44164>>0]|0;Wi[G+(o|3)>>0]=Wi[i+44166>>0]|0}if(!((t&64|0)==0|(Xi[$>>2]|0)!=3)){$=Xi[ae>>2]<<2;G=Xi[e+205840>>2]|0;Wi[G+($|1)>>0]=(Ji[i+44378>>1]|0)>>>1;Wi[G+($|2)>>0]=(Ji[i+44380>>1]|0)>>>1;Wi[G+($|3)>>0]=(Ji[i+44382>>1]|0)>>>1}}if(!(Xi[fe>>2]&2)){r=i+21832|0;n=Xi[r>>2]|0;l=i+21828|0;q=Xi[l>>2]|0;a=i+48680|0;$=uD(a,76-(q>>>1&2|n>>>1&1)+(i+48728)|0)|0;$=((uD(a,76-(q>>>2&2|$&1)+(i+48728)|0)|0)<<1)+$|0;n=$+((uD(a,76-($<<1&2|n>>>3&1)+(i+48728)|0)|0)<<2)|0;n=n+((uD(a,76-(n>>>2&1|n&2)+(i+48728)|0)|0)<<3)|0;if(J){f=(Xi[r>>2]|0)>>>4&3;r=(Xi[l>>2]|0)>>>4&3;$=(f|0)!=0&1;if(!(uD(a,((r|0)==0?$:$|2)+77+(i+48728)|0)|0))r=0;else{$=(f|0)==2?5:4;r=(uD(a,((r|0)==2?$|2:$)+77+(i+48728)|0)|0)+1|0}c=r<<4|n}else c=n}else if(X>>>0>15&(J^1)){nA(Xi[e+4>>2]|0,16,112159,q);r=-1094995529;break}else c=X;Xi[i+21824>>2]=c;Gi[(Xi[e+205824>>2]|0)+(ne<<1)>>1]=c;k=(c&15|0)==0;if(!((s|0)==0|k)?(Xi[fe>>2]&7|0)==0:0){$=(uD(i+48680|0,(Xi[i+21808>>2]|0)+399+(i+48728)|0)|0)<<24;Xi[fe>>2]=Xi[fe>>2]|$}r=Xi[fe>>2]|0;if(!((Xi[Q>>2]|0)!=3|(r&16777216|0)==0)){f=r&7;l=f|0?64:0;a=0;do{$=Xi[i+21716+(a<<2)>>2]|0;if(($|0)!=0&($&16777216|0)==0){$=a<<4;Wi[$+99+(i+43648)>>0]=l;Wi[$+91+(i+43648)>>0]=l;Wi[$+59+(i+43648)>>0]=l;Wi[$+51+(i+43648)>>0]=l;Wi[$+19+(i+43648)>>0]=l;Wi[($|11)+(i+43648)>>0]=l}a=a+1|0}while((a|0)!=2);$=Xi[i+21708>>2]|0;if(($|0)!=0&($&16777216|0)==0){$=(f|0)==0?0:1077952576;Xi[i+43652>>2]=$;Xi[i+43692>>2]=$;Xi[i+43732>>2]=$}}Xi[(Xi[e+24668>>2]|0)+(ne<<2)>>2]=r;r=Xi[fe>>2]|0;i:do{if(!(c|r&2)){Xi[i+43660>>2]=0;Xi[i+43668>>2]=0;Xi[i+43676>>2]=0;Xi[i+43684>>2]=0;Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;Xi[i+840>>2]=0;r=i+824|0}else{v=(r&128|0)==0;r=i+824|0;b=(Xi[r>>2]|0)!=0;d=v?b?e+205844|0:e+206132|0:b?e+205988|0:e+206276|0;b=v?b?e+205860|0:e+206148|0:b?e+206004|0:e+206292|0;v=i+48680|0;n=i+840|0;if(!(uD(v,((Xi[n>>2]|0)!=0|60)+(i+48728)|0)|0)){Xi[n>>2]=0;f=Xi[r>>2]|0}else{t=(Xi[e+27844>>2]|0)*6|0;o=t+3|0;l=o<<1;a=62;f=1;while(1){if(!(uD(v,i+48728+a|0)|0))break;if((f|0)<(l|0)){a=63;f=f+1|0}else{re=453;break}}if((re|0)==453){r=Xi[e+4>>2]|0;e=Xi[ie>>2]|0;Xi[Z>>2]=Xi[ee>>2];Xi[Z+4>>2]=e;nA(r,16,109935,Z);r=-1;break e}re=f+1>>1;f=(f&1|0)==0?0-re|0:re;Xi[n>>2]=f;f=(Xi[r>>2]|0)+f|0;Xi[r>>2]=f;do{if(f>>>0>o>>>0){l=t+4|0;if((f|0)<0){f=f+l|0;Xi[r>>2]=f;break}else{f=f-l|0;Xi[r>>2]=f;break}}}while(0);Xi[i+828>>2]=qi[e+32512+f>>0];Xi[i+832>>2]=qi[e+32600+f>>0]}l=Xi[fe>>2]|0;do{if(!(l&2)){h=l&7|0?0:3;s=(l&16777216|0)==0;u=e+205756+(h<<2)|0;h=e+205780+(h<<2)|0;w=0;do{r:do{if(!(1<<w&c)){re=qi[120643+(w<<2)>>0]|0;Gi[i+43648+re>>1]=0;Gi[re+8+(i+43648)>>1]=0}else{if(!s){l=w<<2;a=i+44384+(w<<6<<le<<1)|0;n=(Xi[h>>2]|0)+(f<<8)|0;do{if((Xi[Q>>2]|0)==3){t=qi[120643+l>>0]|0;re=(Wi[t+-1+(i+43648)>>0]|0)!=0&1;if(dD(v,((Wi[t+-8+(i+43648)>>0]|0?re|2:re)|1012)+(i+48728)|0)|0)break;Gi[i+43648+t>>1]=0;Gi[t+8+(i+43648)>>1]=0;break r}}while(0);mD(e,i,a,5,l,b,n,64);break}l=(Xi[u>>2]|0)+(f<<6)|0;a=w<<2;o=0;do{n=o+a|0;t=qi[120643+n>>0]|0;re=(Wi[t+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,(Wi[t+-8+(i+43648)>>0]|0?re|2:re)+93+(i+48728)|0)|0))Wi[i+43648+t>>0]=0;else mD(e,i,i+44384+(n<<4<<le<<1)|0,2,n,d,l,16);o=o+1|0}while((o|0)!=4)}}while(0);w=w+1|0}while((w|0)!=4)}else{l=i+47456|0;a=l;n=a+64|0;do{Xi[a>>2]=0;a=a+4|0}while((a|0)<(n|0));if(!(dD(v,((Xi[i+21828>>2]|0)>>>7&2|(Xi[i+21832>>2]|0)>>>8&1)+85+(i+48728)|0)|0))Wi[i+43648>>0]=0;else _D(e,i,l,0,48,d,16);if(k){Xi[i+43660>>2]=0;Xi[i+43668>>2]=0;Xi[i+43676>>2]=0;Xi[i+43684>>2]=0;break}f=(Xi[e+205756>>2]|0)+(f<<6)|0;l=d+1|0;n=0;do{a=qi[120643+n>>0]|0;re=(Wi[a+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,(Wi[a+-8+(i+43648)>>0]|0?re|2:re)+89+(i+48728)|0)|0))Wi[i+43648+a>>0]=0;else mD(e,i,i+44384+(n<<4<<le<<1)|0,1,n,l,f,15);n=n+1|0}while((n|0)!=16)}}while(0);l=Xi[Q>>2]|0;if((l|0)!=3){f=(c&48|0)!=0;if((l|0)!=2){if(f){f=i+21832|0;l=i+21828|0;n=0;do{a=n+49|0;ie=1<<n+6;re=(Xi[f>>2]&ie|0)!=0&1;if(!(dD(v,(Xi[l>>2]&ie|0?re|2:re)+97+(i+48728)|0)|0))Wi[(qi[120643+a>>0]|0)+(i+43648)>>0]=0;else _D(e,i,i+44384+((n<<8)+256<<le<<1)|0,3,a,110161,4);n=n+1|0}while((n|0)!=2)}if(!(c&32)){Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;break}f=d+1|0;o=0;while(1){a=o;o=o+1|0;l=(Xi[e+205756+((Xi[fe>>2]&7|0?0:3)+o<<2)>>2]|0)+(Xi[i+828+(a<<2)>>2]<<6)|0;a=(a<<4)+16|0;s=0;do{n=a+s|0;t=qi[120643+n>>0]|0;re=(Wi[t+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,(Wi[t+-8+(i+43648)>>0]|0?re|2:re)+101+(i+48728)|0)|0))Wi[i+43648+t>>0]=0;else mD(e,i,i+44384+(n<<4<<le<<1)|0,4,n,f,l,15);s=s+1|0}while((s|0)!=4);if((o|0)==2)break i}}if(f){f=i+21832|0;l=i+21828|0;n=0;do{a=n+49|0;ie=1<<n+6;re=(Xi[f>>2]&ie|0)!=0&1;if(!(dD(v,(Xi[l>>2]&ie|0?re|2:re)+97+(i+48728)|0)|0))Wi[(qi[120643+a>>0]|0)+(i+43648)>>0]=0;else pD(e,i,i+44384+((n<<8)+256<<le<<1)|0,a);n=n+1|0}while((n|0)!=2)}if(!(c&32)){Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;break}c=16<<le;f=d+1|0;l=c<<2;u=0;while(1){a=(u<<4)+16|0;n=u;u=u+1|0;n=(Xi[e+205756+((Xi[fe>>2]&7|0?0:3)+u<<2)>>2]|0)+(Xi[i+828+(n<<2)>>2]<<6)|0;w=0;k=i+44384+(a<<4<<le<<1)|0;while(1){t=(w<<3)+a|0;h=0;b=k;while(1){o=t+h|0;s=qi[120643+o>>0]|0;re=(Wi[s+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,(Wi[s+-8+(i+43648)>>0]|0?re|2:re)+101+(i+48728)|0)|0))Wi[i+43648+s>>0]=0;else mD(e,i,b,4,o,f,n,15);h=h+1|0;if((h|0)==4)break;else b=b+(c<<1)|0}w=w+1|0;if((w|0)==2)break;else k=k+(l<<1)|0}if((u|0)==2)break i}}f=Xi[fe>>2]|0;w=Xi[i+828>>2]|0;do{if(!(f&2)){u=f&7|0?1:4;o=(f&16777216|0)==0;s=e+205756+(u<<2)|0;u=e+205780+(u<<2)|0;h=0;do{do{if(!(1<<h&c)){re=qi[120643+((h<<2)+16)>>0]|0;Gi[i+43648+re>>1]=0;Gi[re+8+(i+43648)>>1]=0}else{if(!o){f=(h<<2)+16|0;l=Xi[u>>2]|0;a=qi[120643+f>>0]|0;re=(Wi[a+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[a+-8+(i+43648)>>0]|0?re|2:re)|1016)+(i+48728)|0)|0)){Gi[i+43648+a>>1]=0;Gi[a+8+(i+43648)>>1]=0;break}else{mD(e,i,i+44384+(f<<4<<le<<1)|0,9,f,b,l+(w<<8)|0,64);break}}f=(Xi[s>>2]|0)+(w<<6)|0;l=(h<<2)+16|0;t=0;do{a=l+t|0;n=qi[120643+a>>0]|0;re=(Wi[n+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[n+-8+(i+43648)>>0]|0?re|2:re)|468)+(i+48728)|0)|0))Wi[i+43648+n>>0]=0;else mD(e,i,i+44384+(a<<4<<le<<1)|0,8,a,d,f,16);t=t+1|0}while((t|0)!=4)}}while(0);h=h+1|0}while((h|0)!=4)}else{f=i+47520|0;a=f;n=a+64|0;do{Xi[a>>2]=0;a=a+4|0}while((a|0)<(n|0));if(!(dD(v,((Xi[i+21832>>2]|0)>>>9&1|(Xi[i+21828>>2]|0)>>>8&2|460)+(i+48728)|0)|0))Wi[i+43688>>0]=0;else _D(e,i,f,6,49,d,16);if(k){Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;break}f=(Xi[e+205760>>2]|0)+(w<<6)|0;l=d+1|0;t=0;do{a=t+16|0;n=qi[120643+a>>0]|0;re=(Wi[n+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[n+-8+(i+43648)>>0]|0?re|2:re)|464)+(i+48728)|0)|0))Wi[i+43648+n>>0]=0;else mD(e,i,i+44384+(a<<4<<le<<1)|0,7,a,l,f,15);t=t+1|0}while((t|0)!=16)}}while(0);f=Xi[fe>>2]|0;w=Xi[i+832>>2]|0;if(f&2|0){f=i+47584|0;a=f;n=a+64|0;do{Xi[a>>2]=0;a=a+4|0}while((a|0)<(n|0));if(!(dD(v,((Xi[i+21832>>2]|0)>>>10&1|(Xi[i+21828>>2]|0)>>>9&2|472)+(i+48728)|0)|0))Wi[i+43728>>0]=0;else _D(e,i,f,10,50,d,16);if(k){Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;break}t=(Xi[e+205764>>2]|0)+(w<<6)|0;f=d+1|0;n=0;while(1){l=n+32|0;a=qi[120643+l>>0]|0;fe=(Wi[a+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[a+-8+(i+43648)>>0]|0?fe|2:fe)|476)+(i+48728)|0)|0))Wi[i+43648+a>>0]=0;else mD(e,i,i+44384+(l<<4<<le<<1)|0,11,l,f,t,15);n=n+1|0;if((n|0)==16)break i}}u=f&7|0?2:5;o=(f&16777216|0)==0;s=e+205756+(u<<2)|0;u=e+205780+(u<<2)|0;h=0;do{do{if(!(1<<h&c)){fe=qi[120643+((h<<2)+32)>>0]|0;Gi[i+43648+fe>>1]=0;Gi[fe+8+(i+43648)>>1]=0}else{if(!o){f=(h<<2)+32|0;l=Xi[u>>2]|0;a=qi[120643+f>>0]|0;fe=(Wi[a+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[a+-8+(i+43648)>>0]|0?fe|2:fe)|1020)+(i+48728)|0)|0)){Gi[i+43648+a>>1]=0;Gi[a+8+(i+43648)>>1]=0;break}else{mD(e,i,i+44384+(f<<4<<le<<1)|0,13,f,b,l+(w<<8)|0,64);break}}f=(Xi[s>>2]|0)+(w<<6)|0;l=(h<<2)+32|0;t=0;do{a=l+t|0;n=qi[120643+a>>0]|0;fe=(Wi[n+-1+(i+43648)>>0]|0)!=0&1;if(!(dD(v,((Wi[n+-8+(i+43648)>>0]|0?fe|2:fe)|480)+(i+48728)|0)|0))Wi[i+43648+n>>0]=0;else mD(e,i,i+44384+(a<<4<<le<<1)|0,12,a,d,f,16);t=t+1|0}while((t|0)!=4)}}while(0);h=h+1|0}while((h|0)!=4)}}while(0);Wi[(Xi[e+24644>>2]|0)+ne>>0]=Xi[r>>2];r=Xi[ae>>2]|0;f=Xi[e+26256>>2]|0;Xi[f+(r*48|0)>>2]=Xi[i+43660>>2];Xi[f+(r*48|0)+4>>2]=Xi[i+43668>>2];Xi[f+(r*48|0)+8>>2]=Xi[i+43676>>2];Xi[f+(r*48|0)+12>>2]=Xi[i+43684>>2];Xi[f+(r*48|0)+16>>2]=Xi[i+43700>>2];Xi[f+(r*48|0)+20>>2]=Xi[i+43708>>2];Xi[f+(r*48|0)+32>>2]=Xi[i+43740>>2];Xi[f+(r*48|0)+36>>2]=Xi[i+43748>>2];if(!(Xi[e+25976>>2]|0)){Xi[f+(r*48|0)+24>>2]=Xi[i+43716>>2];Xi[f+(r*48|0)+28>>2]=Xi[i+43724>>2];Xi[f+(r*48|0)+40>>2]=Xi[i+43756>>2];Xi[f+(r*48|0)+44>>2]=Xi[i+43764>>2];r=0}else r=0}}while(0);Ue=te;return r|0}function sD(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0;do{if(Xi[e+205808>>2]|0){s=Xi[e+206436>>2]|0;a=(Zi(s,f&-2)|0)+r|0;l=a+-1|0;t=(f&1|0)!=0;if(t?(Ji[(Xi[e+205804>>2]|0)+(l<<1)>>1]|0|0)==(Xi[i+808>>2]|0):0)n=((Xi[i+21796>>2]|0)==((Xi[(Xi[e+24668>>2]|0)+(l<<2)>>2]|0)>>>7&1|0)?s:0)+l|0;else n=l;if(!(Xi[i+21796>>2]|0)){o=n;t=(Zi(s,f+-1|0)|0)+r|0;break}l=a-s|0;if(!t?(Ji[(Xi[e+205804>>2]|0)+(l<<1)>>1]|0|0)==(Xi[i+808>>2]|0):0){o=n;t=l-((Xi[(Xi[e+24668>>2]|0)+(l<<2)>>2]&128|0)==0?0:s)|0}else{o=n;t=l}}else{t=Xi[i+21772>>2]|0;o=t+-1|0;t=t-(Xi[e+206436>>2]<<((Xi[e+205812>>2]|0)!=3&1))|0}}while(0);a=Xi[e+205804>>2]|0;n=Xi[i+808>>2]|0;if((Ji[a+(o<<1)>>1]|0|0)==(n|0))l=(Xi[(Xi[e+24668>>2]|0)+(o<<2)>>2]|0)>>>11&1^1;else l=0;if((Ji[a+(t<<1)>>1]|0|0)==(n|0))l=((Xi[(Xi[e+24668>>2]|0)+(t<<2)>>2]|0)>>>11&1^1)+l|0;return uD(i+48680|0,((Xi[i+816>>2]|0)==3?l+13|0:l)+11+(i+48728)|0)|0}function uD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;r=qi[i>>0]|0;f=e+4|0;a=Xi[f>>2]|0;n=qi[93532+((a<<1&384)+(r|512))>>0]|0;a=a-n|0;t=a<<17;o=Xi[e>>2]|0;l=t-o>>31;Xi[e>>2]=o-(l&t);Xi[f>>2]=(l&n-a)+a;r=l^r;Wi[i>>0]=Wi[93532+(r+1152)>>0]|0;l=Xi[f>>2]|0;i=qi[93532+l>>0]|0;Xi[f>>2]=l<<i;i=Xi[e>>2]<<i;Xi[e>>2]=i;if(!(i&65535)){o=e+16|0;t=Xi[o>>2]|0;Xi[e>>2]=(((qi[t+1>>0]|0)<<1|(qi[t>>0]|0)<<9)+-65535<<7-(qi[93532+((i+-1^i)>>>15)>>0]|0))+i;Xi[o>>2]=t+2}return r&1|0}function hD(e,i){e=e|0;i=i|0;var r=0;r=(Xi[i+21772>>2]|0)-(Xi[e+206436>>2]<<1)|0;return uD(i+48680|0,((Xi[i+21764>>2]|0)!=0&Xi[i+21796>>2]|70)+((Ji[(Xi[e+205804>>2]|0)+(r<<1)>>1]|0|0)==(Xi[i+808>>2]|0)&(Xi[(Xi[e+24668>>2]|0)+(r<<2)>>2]|0)>>>7)+(i+48728)|0)|0}function wD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;f=Xi[i+21772>>2]|0;l=i+21728|0;Xi[l>>2]=-1;k=Xi[e+206436>>2]|0;t=f-(k<<Xi[i+21796>>2])|0;u=t+-1|0;s=t+1|0;h=f+-1|0;o=i+21724|0;Xi[o>>2]=109754;c=Xi[e+24668>>2]|0;do{if(Xi[e+205808>>2]|0){a=Xi[c+(h<<2)>>2]&128;n=r&128;if(Xi[i+21768>>2]&1|0){if((a|0)==(n|0)){b=h;w=t;break}r=f-k+-1|0;if(!n){Xi[l>>2]=0;Xi[o>>2]=109786;b=r;h=r;w=t;u=k+u|0;break}else{Xi[o>>2]=109850;b=r;w=t;break}}r=(n|0)!=0;if(r){f=(((Xi[c+(t<<2)>>2]|0)>>>7&1)+-1&k)+t|0;l=(((Xi[c+(u<<2)>>2]|0)>>>7&1)+-1&k)+u|0;s=(((Xi[c+(s<<2)>>2]|0)>>>7&1)+-1&k)+s|0}else{f=t;l=u}if((a|0)!=(n|0))if(r){Xi[o>>2]=109850;b=h;h=k+h|0;w=f;u=l;break}else{Xi[o>>2]=109818;b=h;w=f;u=l;break}else{b=h;w=f;u=l}}else{b=h;w=t}}while(0);Xi[i+21684>>2]=u;Xi[i+21688>>2]=w;Xi[i+21692>>2]=s;Xi[i+21696>>2]=b;Xi[i+21700>>2]=h;l=i+21704|0;Xi[l>>2]=Xi[c+(u<<2)>>2];a=i+21708|0;Xi[a>>2]=Xi[c+(w<<2)>>2];n=i+21712|0;Xi[n>>2]=Xi[c+(s<<2)>>2];t=i+21716|0;Xi[t>>2]=Xi[c+(b<<2)>>2];o=i+21720|0;Xi[o>>2]=Xi[c+(h<<2)>>2];f=Xi[e+205804>>2]|0;r=Xi[i+808>>2]|0;if((Ji[f+(u<<1)>>1]|0|0)!=(r|0)){Xi[l>>2]=0;if((Ji[f+(w<<1)>>1]|0|0)!=(r|0))Xi[a>>2]=0;if((Ji[f+(b<<1)>>1]|0|0)!=(r|0)){Xi[o>>2]=0;Xi[t>>2]=0}}if((Ji[f+(s<<1)>>1]|0|0)!=(r|0))Xi[n>>2]=0;return}function kD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0,ge=0;Fe=Ue;Ue=Ue+16|0;me=Fe+8|0;_e=Fe;ae=Xi[i+21724>>2]|0;ue=Xi[i+21684>>2]|0;he=Xi[i+21688>>2]|0;be=Xi[i+21692>>2]|0;Se=Xi[i+21696>>2]|0;Xi[me>>2]=Se;ne=Xi[i+21700>>2]|0;Xi[me+4>>2]=ne;te=Xi[i+21704>>2]|0;pe=Xi[i+21708>>2]|0;oe=Xi[i+21712>>2]|0;f=Xi[i+21716>>2]|0;Xi[_e>>2]=f;se=Xi[i+21720>>2]|0;Xi[_e+4>>2]=se;do{if(!(r&2048)){c=(r&7|0)!=0;e:do{if(c){h=Xi[e+32020>>2]|0?7:-1;n=i+21744|0;Xi[n>>2]=65535;l=i+21736|0;Xi[l>>2]=65535;o=i+21732|0;Xi[o>>2]=65535;s=i+21740|0;Xi[s>>2]=61162;u=(h&pe|0)!=0;if(u){l=65535;t=60138}else{Xi[o>>2]=46079;Xi[l>>2]=13311;Xi[s>>2]=9962;l=46079;t=8938}a=r&128;do{if((a|0)==(f&128|0)){if(!(f&h)){l=l&57183;Xi[o>>2]=l;Xi[n>>2]=24415}}else{if(!a){if(!((f&h|0)==0?1:(Xi[(Xi[e+24668>>2]|0)+((Xi[e+206436>>2]|0)+Se<<2)>>2]&h|0)==0))break;l=l&57183;Xi[o>>2]=l;Xi[n>>2]=24415;break}if(!(f&h)){l=l&57343;Xi[o>>2]=l;Xi[n>>2]=24575;a=24415}else a=65375;if(!(se&h)){l=l&65375;Xi[o>>2]=l;Xi[n>>2]=a}}}while(0);if(!(h&te))Xi[o>>2]=l&32767;if(!(h&oe))Xi[s>>2]=t;if(r&1|0){if(!(pe&1)){jT(i+21644|0,2-(0-(u&1^1)&3)&255|0,4)|0;a=i+21680|0;n=e+26648|0}else{a=i+21680|0;n=e+26648|0;Xi[i+21644>>2]=Xi[(Xi[a>>2]|0)+(Xi[(Xi[n>>2]|0)+(he<<2)>>2]|0)>>2]}t=f;l=0;while(1){if(!(t&1)){fe=(t&h|0)==0?-1:2;le=l<<4;Wi[le+19+(i+21640)>>0]=fe;Wi[(le|11)+(i+21640)>>0]=fe}else{ie=Xi[a>>2]|0;fe=l<<1;re=(Xi[(Xi[n>>2]|0)+(Xi[me+(l<<2)>>2]<<2)>>2]|0)+6|0;le=l<<4;Wi[(le|11)+(i+21640)>>0]=Wi[ie+(re-(qi[ae+fe>>0]|0))>>0]|0;Wi[le+19+(i+21640)>>0]=Wi[ie+(re-(qi[ae+(fe|1)>>0]|0))>>0]|0}l=l+1|0;if((l|0)==2)break e;t=Xi[_e+(l<<2)>>2]|0}}}}while(0);b=(pe|0)!=0;do{if(b){l=e+26256|0;a=Xi[l>>2]|0;Xi[i+43652>>2]=Xi[a+(he*48|0)+12>>2];if(!(Xi[e+25976>>2]|0)){Xi[i+43692>>2]=Xi[a+(he*48|0)+28>>2];Xi[i+43732>>2]=Xi[a+(he*48|0)+44>>2];break}else{Xi[i+43692>>2]=Xi[a+(he*48|0)+20>>2];Xi[i+43732>>2]=Xi[a+(he*48|0)+36>>2];break}}else{l=c?1077952576:0;Xi[i+43652>>2]=l;Xi[i+43692>>2]=l;Xi[i+43732>>2]=l;l=e+26256|0}}while(0);w=c?64:0;k=e+26672|0;n=f;a=0;while(1){e:do{if(!n){le=a<<4;Wi[le+99+(i+43648)>>0]=w;Wi[le+91+(i+43648)>>0]=w;Wi[le+59+(i+43648)>>0]=w;Wi[le+51+(i+43648)>>0]=w;Wi[le+19+(i+43648)>>0]=w;Wi[(le|11)+(i+43648)>>0]=w}else{n=Xi[me+(a<<2)>>2]|0;t=Xi[l>>2]|0;o=a<<1;s=ae+(o+8)|0;u=a<<4;Wi[(u|11)+(i+43648)>>0]=Wi[(qi[s>>0]|0)+(t+(n*48|0))>>0]|0;h=ae+(o+9)|0;Wi[u+19+(i+43648)>>0]=Wi[(qi[h>>0]|0)+(t+(n*48|0))>>0]|0;switch(Xi[k>>2]|0){case 3:{Wi[u+51+(i+43648)>>0]=Wi[(qi[s>>0]|0)+16+(t+(n*48|0))>>0]|0;Wi[u+59+(i+43648)>>0]=Wi[(qi[h>>0]|0)+16+(t+(n*48|0))>>0]|0;Wi[u+91+(i+43648)>>0]=Wi[(qi[s>>0]|0)+32+(t+(n*48|0))>>0]|0;Wi[u+99+(i+43648)>>0]=Wi[(qi[h>>0]|0)+32+(t+(n*48|0))>>0]|0;break e}case 2:{Wi[u+51+(i+43648)>>0]=Wi[(qi[s>>0]|0)+14+(t+(n*48|0))>>0]|0;Wi[u+59+(i+43648)>>0]=Wi[(qi[h>>0]|0)+14+(t+(n*48|0))>>0]|0;Wi[u+91+(i+43648)>>0]=Wi[(qi[s>>0]|0)+30+(t+(n*48|0))>>0]|0;Wi[u+99+(i+43648)>>0]=Wi[(qi[h>>0]|0)+30+(t+(n*48|0))>>0]|0;break e}default:{le=a<<3;Wi[le+51+(i+43648)>>0]=Wi[(qi[ae+(o+12)>>0]|0)+(t+(n*48|0))>>0]|0;Wi[le+91+(i+43648)>>0]=Wi[(qi[ae+(o+13)>>0]|0)+(t+(n*48|0))>>0]|0;break e}}}}while(0);a=a+1|0;if((a|0)==2)break;n=Xi[_e+(a<<2)>>2]|0}if(b)l=Ji[(Xi[e+205824>>2]|0)+(he<<1)>>1]|0;else l=c?1999:15;Xi[i+21828>>2]=l;if(!f){Xi[i+21832>>2]=c?1999:15;break}else{le=Xi[e+205824>>2]|0;fe=Ji[le+(Se<<1)>>1]|0;Xi[i+21832>>2]=fe>>>(qi[ae>>0]&254)&2|fe&2032|(Ji[le+(ne<<1)>>1]|0)>>>(qi[ae+2>>0]&254)<<2&8;break}}}while(0);if(!(r&120)){if((r&256|0)!=0?(Xi[i+21812>>2]|0)!=0:0)d=52}else d=52;if((d|0)==52){w=Xi[e+26652>>2]|0;k=i+23380|0;if(Xi[k>>2]|0){b=e+26644|0;c=w*3|0;v=he<<2;d=v|2;v=v|3;E=(r&80|0)==0;S=f|0?-1:-2;_=Se<<2|1;m=oe|0?-1:-2;p=te|0?-1:-2;F=i+21728|0;y=w<<1;O=w+3|0;A=ue<<2;g=(r&2304|0)==0;M=e+26648|0;R=i+816|0;T=i+44348|0;N=e+205840|0;D=i+44356|0;C=i+44364|0;P=i+44372|0;L=(pe&256|0)==0;I=(pe&64|0)==0;H=i+44340|0;B=i+44342|0;U=(f&256|0)==0;x=(f&64|0)==0;z=i+44347|0;V=(se&256|0)==0;Y=(se&64|0)==0;j=i+44363|0;K=ne<<2|1;W=ae+2|0;G=ae+3|0;X=ae+1|0;q=e+205808|0;J=i+21796|0;Z=(te&128|0)!=0;Q=(pe&128|0)==0;$=(oe&128|0)==0;ee=(f&128|0)==0;ie=(se&128|0)==0;re=be<<2|2;fe=pe|0?-1:-16843010;le=0;do{o=Xi[e+24688+(le<<2)>>2]|0;s=Xi[e+24656+(le<<2)>>2]|0;u=12288<<(le<<1);do{if(u&r|0){h=(u&pe|0)!=0;if(h){a=(Xi[(Xi[b>>2]|0)+(he<<2)>>2]|0)+c|0;l=s+(a<<2)|0;t=Xi[l+4>>2]|0;n=i+43776+(le*160|0)+16|0;Xi[n>>2]=Xi[l>>2];Xi[n+4>>2]=t;a=s+(a<<2)+8|0;n=Xi[a+4>>2]|0;t=i+43776+(le*160|0)+24|0;Xi[t>>2]=Xi[a>>2];Xi[t+4>>2]=n;t=Wi[o+d>>0]|0;Wi[i+44096+(le*40|0)+5>>0]=t;Wi[i+44096+(le*40|0)+4>>0]=t;t=Wi[o+v>>0]|0;Wi[i+44096+(le*40|0)+7>>0]=t;Wi[i+44096+(le*40|0)+6>>0]=t}else{t=i+43776+(le*160|0)+16|0;Xi[t>>2]=0;Xi[t+4>>2]=0;Xi[t+8>>2]=0;Xi[t+12>>2]=0;Xi[i+44096+(le*40|0)+4>>2]=fe}do{if(E)if(!(f&u)){Xi[i+43776+(le*160|0)+44>>2]=0;Wi[i+44096+(le*40|0)+11>>0]=S;break}else{Xi[i+43776+(le*160|0)+44>>2]=Xi[s+((Xi[(Xi[b>>2]|0)+(Se<<2)>>2]|0)+3+(Zi(qi[ae>>0]|0,w)|0)<<2)>>2];Wi[i+44096+(le*40|0)+11>>0]=Wi[o+((qi[ae>>0]&254)+_)>>0]|0;break}else{t=0;do{l=t<<1;a=t<<4;n=Xi[_e+(t<<2)>>2]|0;if(!(n&u)){l=a|11;Xi[i+43776+(le*160|0)+(l<<2)>>2]=0;a=(a|7)+12|0;Xi[i+43776+(le*160|0)+(a<<2)>>2]=0;n=n|0?-1:-2;Wi[i+44096+(le*40|0)+a>>0]=n;Wi[i+44096+(le*40|0)+l>>0]=n}else{ye=Xi[me+(t<<2)>>2]|0;ge=(Xi[(Xi[b>>2]|0)+(ye<<2)>>2]|0)+3|0;ye=ye<<2|1;Ae=ae+l|0;Oe=a|11;Xi[i+43776+(le*160|0)+(Oe<<2)>>2]=Xi[s+((Zi(qi[Ae>>0]|0,w)|0)+ge<<2)>>2];l=ae+(l|1)|0;n=(a|7)+12|0;Xi[i+43776+(le*160|0)+(n<<2)>>2]=Xi[s+((Zi(qi[l>>0]|0,w)|0)+ge<<2)>>2];Wi[i+44096+(le*40|0)+Oe>>0]=Wi[o+((qi[Ae>>0]&254)+ye)>>0]|0;Wi[i+44096+(le*40|0)+n>>0]=Wi[o+((qi[l>>0]&254)+ye)>>0]|0}t=t+1|0}while((t|0)!=2)}}while(0);if(!(u&oe)){Xi[i+43776+(le*160|0)+32>>2]=0;l=m}else{Xi[i+43776+(le*160|0)+32>>2]=Xi[s+((Xi[(Xi[b>>2]|0)+(be<<2)>>2]|0)+c<<2)>>2];l=Wi[o+re>>0]|0}t=i+44096+(le*40|0)+8|0;Wi[t>>0]=l;n=i+44096+(le*40|0)+6|0;do{if((Wi[n>>0]|l)<<24>>24<0)if(!(u&te)){Xi[i+43776+(le*160|0)+12>>2]=0;Wi[i+44096+(le*40|0)+3>>0]=p;break}else{ge=Xi[F>>2]|0;Xi[i+43776+(le*160|0)+12>>2]=Xi[s+(O+(Xi[(Xi[b>>2]|0)+(ue<<2)>>2]|0)+(ge&y)<<2)>>2];Wi[i+44096+(le*40|0)+3>>0]=Wi[o+(A|ge&2|1)>>0]|0;break}}while(0);if(g){l=Xi[i+48672+(le<<2)>>2]|0;Wi[i+44096+(le*40|0)+30>>0]=-2;Wi[i+44096+(le*40|0)+14>>0]=-2;Xi[i+43776+(le*160|0)+56>>2]=0;Xi[i+43776+(le*160|0)+120>>2]=0;if(h){Oe=l+(Xi[(Xi[M>>2]|0)+(he<<2)>>2]<<1)|0;Ae=Xi[Oe+4>>2]|0;ge=i+44176+(le*80|0)+8|0;Xi[ge>>2]=Xi[Oe>>2];Xi[ge+4>>2]=Ae}else{ge=i+44176+(le*80|0)+8|0;Xi[ge>>2]=0;Xi[ge+4>>2]=0}if(!(f&u)){Gi[i+44176+(le*80|0)+22>>1]=0;Gi[i+44176+(le*80|0)+38>>1]=0}else{ge=(Xi[(Xi[M>>2]|0)+(Se<<2)>>2]|0)+6|0;Gi[i+44176+(le*80|0)+22>>1]=Gi[l+(ge-(qi[ae>>0]|0)<<1)>>1]|0;Gi[i+44176+(le*80|0)+38>>1]=Gi[l+(ge-(qi[X>>0]|0)<<1)>>1]|0}if(!(se&u)){Gi[i+44176+(le*80|0)+54>>1]=0;Gi[i+44176+(le*80|0)+70>>1]=0}else{ge=(Xi[(Xi[M>>2]|0)+(ne<<2)>>2]|0)+6|0;Gi[i+44176+(le*80|0)+54>>1]=Gi[l+(ge-(qi[W>>0]|0)<<1)>>1]|0;Gi[i+44176+(le*80|0)+70>>1]=Gi[l+(ge-(qi[G>>0]|0)<<1)>>1]|0}Gi[i+44176+(le*80|0)+28>>1]=0;Gi[i+44176+(le*80|0)+60>>1]=0;do{if((Xi[R>>2]|0)==3){l=Xi[N>>2]|0;Xi[T>>2]=67372036;Xi[D>>2]=67372036;Xi[C>>2]=67372036;Xi[P>>2]=67372036;do{if(L)if(I){Xi[H>>2]=67372036;break}else{Wi[H>>0]=Wi[l+d>>0]|0;Wi[B>>0]=Wi[l+v>>0]|0;break}else Xi[H>>2]=-2139062144}while(0);do{if(U)if(x){Wi[z>>0]=4;break}else{Wi[z>>0]=Wi[l+((qi[ae>>0]&254)+_)>>0]|0;break}else Wi[z>>0]=-128}while(0);if(!V){Wi[j>>0]=-128;break}if(Y){Wi[j>>0]=4;break}else{Wi[j>>0]=Wi[l+((qi[W>>0]&254)+K)>>0]|0;break}}}while(0);if(!(Xi[q>>2]|0))break}else if(!(Xi[q>>2]|0))break;if(!(Xi[J>>2]|0)){if(Z?(de=i+44096+(le*40|0)+3|0,ve=Wi[de>>0]|0,ve<<24>>24>-1):0){Wi[de>>0]=ve<<24>>24>>>1;ge=i+43776+(le*160|0)+14|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+7|0;Wi[ge>>0]=qi[ge>>0]<<1}do{if(!Q){l=i+44096+(le*40|0)+4|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+18|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+9|0;Wi[ge>>0]=qi[ge>>0]<<1}l=i+44096+(le*40|0)+5|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+22|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+11|0;Wi[ge>>0]=qi[ge>>0]<<1}l=Wi[n>>0]|0;if(l<<24>>24>-1){Wi[n>>0]=l<<24>>24>>>1;ge=i+43776+(le*160|0)+26|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+13|0;Wi[ge>>0]=qi[ge>>0]<<1}l=i+44096+(le*40|0)+7|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+30|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+15|0;Wi[ge>>0]=qi[ge>>0]<<1}}while(0);if(!$?(Ee=Wi[t>>0]|0,Ee<<24>>24>-1):0){Wi[t>>0]=Ee<<24>>24>>>1;ge=i+43776+(le*160|0)+34|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+17|0;Wi[ge>>0]=qi[ge>>0]<<1}do{if(!ee){l=i+44096+(le*40|0)+11|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+46|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+23|0;Wi[ge>>0]=qi[ge>>0]<<1}l=i+44096+(le*40|0)+19|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+78|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+39|0;Wi[ge>>0]=qi[ge>>0]<<1}}while(0);if(ie)break;l=i+44096+(le*40|0)+27|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+110|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+55|0;Wi[ge>>0]=qi[ge>>0]<<1}l=i+44096+(le*40|0)+35|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;ge=i+43776+(le*160|0)+142|0;Gi[ge>>1]=Gi[ge>>1]<<1;ge=i+44176+(le*80|0)+71|0;Wi[ge>>0]=qi[ge>>0]<<1;break}else{if(!Z?(we=i+44096+(le*40|0)+3|0,ke=Wi[we>>0]|0,ke<<24>>24>-1):0){Wi[we>>0]=ke<<24>>24<<1;ge=i+43776+(le*160|0)+14|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+7|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}do{if(Q){l=i+44096+(le*40|0)+4|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+18|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+9|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}l=i+44096+(le*40|0)+5|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+22|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+11|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}l=Wi[n>>0]|0;if(l<<24>>24>-1){Wi[n>>0]=l<<24>>24<<1;ge=i+43776+(le*160|0)+26|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+13|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}l=i+44096+(le*40|0)+7|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+30|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+15|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}}while(0);if($?(ce=Wi[t>>0]|0,ce<<24>>24>-1):0){Wi[t>>0]=ce<<24>>24<<1;ge=i+43776+(le*160|0)+34|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+17|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}do{if(ee){l=i+44096+(le*40|0)+11|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+46|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+23|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}l=i+44096+(le*40|0)+19|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+78|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+39|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}}while(0);if(!ie)break;l=i+44096+(le*40|0)+27|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+110|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+55|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1}l=i+44096+(le*40|0)+35|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;ge=i+43776+(le*160|0)+142|0;Gi[ge>>1]=(Gi[ge>>1]|0)/2|0;ge=i+44176+(le*80|0)+71|0;Wi[ge>>0]=(qi[ge>>0]|0)>>>1;break}}}while(0);le=le+1|0}while(le>>>0<(Xi[k>>2]|0)>>>0);f=Xi[_e>>2]|0}}Xi[i+21808>>2]=(f>>>24&1)+(pe>>>24&1);Ue=Fe;return}function bD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;if(!r){f=e+48680|0;if(!(uD(f,e+48728+i|0)|0))f=0;else{o=i;l=5}}else{o=(Xi[e+21716>>2]&6|0)!=0;f=e+48680|0;if(!(uD(f,((Xi[e+21708>>2]&6|0)==0?o&1:o?2:1)+i+(e+48728)|0)|0))f=0;else{o=i+2|0;l=5}}do{if((l|0)==5){i=e+48684|0;l=Xi[i>>2]|0;a=l+-2|0;Xi[i>>2]=a;t=e+48680|0;n=Xi[t>>2]|0;if((n|0)<(a<<17|0)){l=(l+-258|0)>>>31;Xi[i>>2]=a<<l;i=n<<l;Xi[t>>2]=i;if(!(i&65535)){n=e+48696|0;a=Xi[n>>2]|0;Xi[t>>2]=i+-65535+((qi[a+1>>0]|0)<<1|(qi[a>>0]|0)<<9);Xi[n>>2]=a+2}}else if((Xi[e+48696>>2]|0)!=(Xi[e+48692>>2]|0)){f=25;break}i=(uD(f,o+1+(e+48728)|0)|0)*12|1;if(uD(f,o+2+(e+48728)|0)|0)i=i+4+((uD(f,r+2+o+(e+48728)|0)|0)<<2)|0;t=((uD(f,r+3+o+(e+48728)|0)|0)<<1)+i|0;f=t+(uD(f,(r<<1)+3+o+(e+48728)|0)|0)|0}}while(0);return f|0}function cD(e,i){e=e|0;i=i|0;var r=0,f=0;r=e+48680|0;if(!(dD(r,e+48796|0)|0)){e=e+48797|0;f=dD(r,e)|0;f=((dD(r,e)|0)<<1)+f|0;e=f+((dD(r,e)|0)<<2)|0;i=((e|0)>=(i|0)&1)+e|0}return i|0}function dD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;r=qi[i>>0]|0;f=e+4|0;a=Xi[f>>2]|0;n=qi[93532+((a<<1&384)+(r|512))>>0]|0;a=a-n|0;t=a<<17;o=Xi[e>>2]|0;l=t-o>>31;Xi[e>>2]=o-(l&t);Xi[f>>2]=(l&n-a)+a;r=l^r;Wi[i>>0]=Wi[93532+(r+1152)>>0]|0;l=Xi[f>>2]|0;i=qi[93532+l>>0]|0;Xi[f>>2]=l<<i;i=Xi[e>>2]<<i;Xi[e>>2]=i;if(!(i&65535)){o=e+16|0;t=Xi[o>>2]|0;Xi[e>>2]=(((qi[t+1>>0]|0)<<1|(qi[t>>0]|0)<<9)+-65535<<7-(qi[93532+((i+-1^i)>>>15)>>0]|0))+i;Xi[o>>2]=t+2}return r&1|0}function vD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=qi[120643+r>>0]|0;f=l+-1|0;l=l+-8|0;a=Wi[e+44096+(i*40|0)+l>>0]|0;r=(Wi[e+44096+(i*40|0)+f>>0]|0)>0;if((Xi[e+816>>2]|0)==3){if(r)r=(qi[e+44336+f>>0]|0)>>>7&255^1;else r=0;if(a<<24>>24>0)r=(Wi[e+44336+l>>0]|0)<0?r:r|2}else{r=r&1;r=a<<24>>24>0?r|2:r}i=e+48680|0;f=r;r=0;while(1){if(!(dD(i,f+54+(e+48728)|0)|0))break;if((r|0)>30){r=-1;break}else{f=(f>>2)+4|0;r=r+1|0}}return r|0}function ED(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+16|0;a=o;t=e+48680|0;do{if(!(dD(t,i+2+(r+-3>>31)+(r+-33>>31)+(e+48728)|0)|0)){Xi[f>>2]=0;r=0}else{i=i+3|0;l=1;while(1){if(!(dD(t,e+48728+i|0)|0)){i=l;r=l;break}r=l+1|0;if((r|0)<9){i=((l|0)<4&1)+i|0;l=r}else{i=3;n=6;break}}if((n|0)==6){while(1){n=0;if(!(SD(t)|0))break;r=(1<<i)+r|0;if((i|0)>23){n=9;break}else{i=i+1|0;n=6}}if((n|0)==9){nA(Xi[(Xi[e>>2]|0)+4>>2]|0,16,109902,a);r=-2147483648;break}if(i)do{i=i+-1|0;r=((SD(t)|0)<<i)+r|0}while((i|0)!=0);i=r;r=(r|0)<70?r:70}Xi[f>>2]=r;r=Xi[t>>2]<<1;Xi[t>>2]=r;if(!(r&65534)){f=e+48696|0;n=Xi[f>>2]|0;r=r+-65535+((qi[n+1>>0]|0)<<1|(qi[n>>0]|0)<<9)|0;Xi[t>>2]=r;Xi[f>>2]=n+2}f=Xi[e+48684>>2]<<17;e=r-f|0;r=e>>31;Xi[t>>2]=(r&f)+e;r=(r^0-i)-r|0}}while(0);Ue=o;return r|0}function SD(e){e=e|0;var i=0,r=0,f=0;i=Xi[e>>2]<<1;Xi[e>>2]=i;if(!(i&65534)){r=e+16|0;f=Xi[r>>2]|0;i=i+-65535+((qi[f+1>>0]|0)<<1|(qi[f>>0]|0)<<9)|0;Xi[e>>2]=i;Xi[r>>2]=f+2}r=Xi[e+4>>2]<<17;if((i|0)<(r|0))i=0;else{Xi[e>>2]=i-r;i=1}return i|0}function _D(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0;m=Ue;Ue=Ue+304|0;c=m+48|0;b=m;v=i+48684|0;k=b+4|0;Xi[k>>2]=Xi[v>>2];E=i+48680|0;Xi[b>>2]=Xi[E>>2];S=i+48696|0;_=b+16|0;Xi[_>>2]=Xi[S>>2];u=Xi[i+21796>>2]|0;s=Xi[88016+(u*56|0)+(f<<2)>>2]|0;u=Xi[88128+(u*56|0)+(f<<2)>>2]|0;w=Xi[88240+(f<<2)>>2]|0;h=n+-1|0;e:do{if((n|0)>1){t=0;n=0;while(1){if(dD(b,n+s+(i+48728)|0)|0){o=t+1|0;Xi[c+(t<<2)>>2]=n;if(dD(b,n+u+(i+48728)|0)|0)break e}else o=t;n=n+1|0;if((n|0)<(h|0))t=o;else{d=5;break}}}else{o=0;n=0;d=5}}while(0);if((d|0)==5)if((n|0)==(h|0)){Xi[c+(o<<2)>>2]=h;o=o+1|0}n=Xi[i+21772>>2]|0;t=Xi[e+205824>>2]|0;if((f|0)==3){f=t+(n<<1)|0;Gi[f>>1]=Ji[f>>1]|0|64<<l+-49}else{f=t+(n<<1)|0;Gi[f>>1]=Ji[f>>1]|0|256<<l+-48}Wi[(qi[120643+l>>0]|0)+(i+43648)>>0]=o;if(!(Xi[e+25960>>2]|0)){u=o;n=0;while(1){u=u+-1|0;s=qi[a+(Xi[c+(u<<2)>>2]|0)>>0]|0;if(!(dD(b,(qi[109980+n>>0]|0)+w+(i+48728)|0)|0)){o=qi[109988+n>>0]|0;n=Xi[b>>2]<<1;Xi[b>>2]=n;if(!(n&65534)){l=Xi[_>>2]|0;n=n+-65535+((qi[l+1>>0]|0)<<1|(qi[l>>0]|0)<<9)|0;Xi[b>>2]=n;Xi[_>>2]=l+2}t=Xi[k>>2]|0;e=t<<17;n=n-e|0;l=n>>31;n=(l&e)+n|0;Xi[b>>2]=n;Gi[r+(s<<1)>>1]=(l^65535)-l}else{t=(qi[110004+n>>0]|0)+w+(i+48728)|0;o=qi[109996+n>>0]|0;n=2;while(1){if(!(dD(b,t)|0)){t=n;break}n=n+1|0;if((n|0)>=15){n=0;d=34;break}}if((d|0)==34){while(1){d=0;if((n|0)<30&(SD(b)|0)!=0){n=n+1|0;d=34}else{t=n;break}}if(!t)n=1;else{n=1;do{t=t+-1|0;n=(n<<1)+(SD(b)|0)|0}while((t|0)!=0)}t=n+14|0}n=Xi[b>>2]<<1;Xi[b>>2]=n;if(!(n&65534)){l=Xi[_>>2]|0;n=n+-65535+((qi[l+1>>0]|0)<<1|(qi[l>>0]|0)<<9)|0;Xi[b>>2]=n;Xi[_>>2]=l+2}l=Xi[k>>2]|0;f=l<<17;n=n-f|0;e=n>>31;n=(e&f)+n|0;Xi[b>>2]=n;Gi[r+(s<<1)>>1]=(e^0-t)-e;t=l}if(!u)break;else n=o}}else{u=o;n=0;while(1){u=u+-1|0;s=qi[a+(Xi[c+(u<<2)>>2]|0)>>0]|0;if(!(dD(b,(qi[109980+n>>0]|0)+w+(i+48728)|0)|0)){o=qi[109988+n>>0]|0;n=Xi[b>>2]<<1;Xi[b>>2]=n;if(!(n&65534)){l=Xi[_>>2]|0;n=n+-65535+((qi[l+1>>0]|0)<<1|(qi[l>>0]|0)<<9)|0;Xi[b>>2]=n;Xi[_>>2]=l+2}t=Xi[k>>2]|0;e=t<<17;n=n-e|0;l=n>>31;n=(l&e)+n|0;Xi[b>>2]=n;Xi[r+(s<<2)>>2]=~l-l}else{t=(qi[110004+n>>0]|0)+w+(i+48728)|0;o=qi[109996+n>>0]|0;n=2;while(1){if(!(dD(b,t)|0)){t=n;break}n=n+1|0;if((n|0)>=15){n=0;d=19;break}}if((d|0)==19){while(1){d=0;if((n|0)<30&(SD(b)|0)!=0){n=n+1|0;d=19}else{t=n;break}}if(!t)n=1;else{n=1;do{t=t+-1|0;n=(n<<1)+(SD(b)|0)|0}while((t|0)!=0)}t=n+14|0}n=Xi[b>>2]<<1;Xi[b>>2]=n;if(!(n&65534)){l=Xi[_>>2]|0;n=n+-65535+((qi[l+1>>0]|0)<<1|(qi[l>>0]|0)<<9)|0;Xi[b>>2]=n;Xi[_>>2]=l+2}l=Xi[k>>2]|0;f=l<<17;n=n-f|0;e=n>>31;n=(e&f)+n|0;Xi[b>>2]=n;Xi[r+(s<<2)>>2]=(e^0-t)-e;t=l}if(!u)break;else n=o}}Xi[v>>2]=t;Xi[E>>2]=n;Xi[S>>2]=Xi[_>>2];Ue=m;return}function mD(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;p=Ue;Ue=Ue+304|0;d=p+48|0;c=p;E=i+48684|0;b=c+4|0;Xi[b>>2]=Xi[E>>2];S=i+48680|0;Xi[c>>2]=Xi[S>>2];_=i+48696|0;m=c+16|0;Xi[m>>2]=Xi[_>>2];s=Xi[i+21796>>2]|0;u=Xi[88016+(s*56|0)+(f<<2)>>2]|0;h=Xi[88128+(s*56|0)+(f<<2)>>2]|0;k=Xi[88240+(f<<2)>>2]|0;w=(t|0)==64;e:do{if(w){o=0;t=0;while(1){if(dD(c,(qi[110020+(s*63|0)+t>>0]|0)+u+(i+48728)|0)|0){F=(qi[93532+(t+1280)>>0]|0)+h+(i+48728)|0;f=o+1|0;Xi[d+(o<<2)>>2]=t;if(dD(c,F)|0){t=f;break e}}else f=o;t=t+1|0;if((t|0)<63)o=f;else break}if((t|0)==63){Xi[d+(f<<2)>>2]=63;t=f+1|0}else t=f}else{s=t+-1|0;if((t|0)>1){o=0;f=0;while(1){if(dD(c,f+u+(i+48728)|0)|0){t=o+1|0;Xi[d+(o<<2)>>2]=f;if(dD(c,f+h+(i+48728)|0)|0)break e}else t=o;f=f+1|0;if((f|0)<(s|0))o=t;else break}}else{t=0;f=0}if((f|0)==(s|0)){Xi[d+(t<<2)>>2]=s;t=t+1|0}}}while(0);f=Wi[120643+l>>0]|0;if(w){F=f&255;l=t*257&65535;Gi[i+43648+F>>1]=l;Gi[F+8+(i+43648)>>1]=l}else Wi[(f&255)+(i+43648)>>0]=t;if(!(Xi[e+25960>>2]|0)){u=t;f=0;while(1){u=u+-1|0;s=qi[a+(Xi[d+(u<<2)>>2]|0)>>0]|0;if(!(dD(c,(qi[109980+f>>0]|0)+k+(i+48728)|0)|0)){o=qi[109988+f>>0]|0;t=0-(Xi[n+(s<<2)>>2]|0)|0;f=Xi[c>>2]<<1;Xi[c>>2]=f;if(!(f&65534)){F=Xi[m>>2]|0;f=f+-65535+((qi[F+1>>0]|0)<<1|(qi[F>>0]|0)<<9)|0;Xi[c>>2]=f;Xi[m>>2]=F+2}F=Xi[b>>2]|0;w=F<<17;l=f-w|0;e=l>>31;f=(e&w)+l|0;Xi[c>>2]=f;Gi[r+(s<<1)>>1]=((l>>>31|32)+(e^t)|0)>>>6;t=F}else{t=(qi[110004+f>>0]|0)+k+(i+48728)|0;o=qi[109996+f>>0]|0;f=2;while(1){if(!(dD(c,t)|0)){t=f;break}f=f+1|0;if((f|0)>=15){f=0;v=40;break}}if((v|0)==40){while(1){v=0;if((f|0)<30&(SD(c)|0)!=0){f=f+1|0;v=40}else{t=f;break}}if(!t)f=1;else{f=1;do{t=t+-1|0;f=(f<<1)+(SD(c)|0)|0}while((t|0)!=0)}t=f+14|0}f=Xi[c>>2]<<1;Xi[c>>2]=f;if(!(f&65534)){F=Xi[m>>2]|0;f=f+-65535+((qi[F+1>>0]|0)<<1|(qi[F>>0]|0)<<9)|0;Xi[c>>2]=f;Xi[m>>2]=F+2}F=Xi[b>>2]|0;l=F<<17;f=f-l|0;e=f>>31;f=(e&l)+f|0;Xi[c>>2]=f;Gi[r+(s<<1)>>1]=((Zi((e^0-t)-e|0,Xi[n+(s<<2)>>2]|0)|0)+32|0)>>>6;t=F}if(!u)break;else f=o}}else{u=t;f=0;while(1){u=u+-1|0;s=qi[a+(Xi[d+(u<<2)>>2]|0)>>0]|0;if(!(dD(c,(qi[109980+f>>0]|0)+k+(i+48728)|0)|0)){o=qi[109988+f>>0]|0;t=0-(Xi[n+(s<<2)>>2]|0)|0;f=Xi[c>>2]<<1;Xi[c>>2]=f;if(!(f&65534)){F=Xi[m>>2]|0;f=f+-65535+((qi[F+1>>0]|0)<<1|(qi[F>>0]|0)<<9)|0;Xi[c>>2]=f;Xi[m>>2]=F+2}F=Xi[b>>2]|0;w=F<<17;l=f-w|0;e=l>>31;f=(e&w)+l|0;Xi[c>>2]=f;Xi[r+(s<<2)>>2]=(l>>>31|32)+(e^t)>>6;t=F}else{t=(qi[110004+f>>0]|0)+k+(i+48728)|0;o=qi[109996+f>>0]|0;f=2;while(1){if(!(dD(c,t)|0)){t=f;break}f=f+1|0;if((f|0)>=15){f=0;v=25;break}}if((v|0)==25){while(1){v=0;if((f|0)<30&(SD(c)|0)!=0){f=f+1|0;v=25}else{t=f;break}}if(!t)f=1;else{f=1;do{t=t+-1|0;f=(f<<1)+(SD(c)|0)|0}while((t|0)!=0)}t=f+14|0}f=Xi[c>>2]<<1;Xi[c>>2]=f;if(!(f&65534)){F=Xi[m>>2]|0;f=f+-65535+((qi[F+1>>0]|0)<<1|(qi[F>>0]|0)<<9)|0;Xi[c>>2]=f;Xi[m>>2]=F+2}F=Xi[b>>2]|0;l=F<<17;f=f-l|0;e=f>>31;f=(e&l)+f|0;Xi[c>>2]=f;Xi[r+(s<<2)>>2]=(Zi((e^0-t)-e|0,Xi[n+(s<<2)>>2]|0)|0)+32>>6;t=F}if(!u)break;else f=o}}Xi[E>>2]=t;Xi[S>>2]=f;Xi[_>>2]=Xi[m>>2];Ue=p;return}function pD(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Ue;Ue=Ue+304|0;w=E+48|0;h=E;b=i+48684|0;u=h+4|0;Xi[u>>2]=Xi[b>>2];c=i+48680|0;Xi[h>>2]=Xi[c>>2];d=i+48696|0;v=h+16|0;Xi[v>>2]=Xi[d>>2];s=Xi[i+21796>>2]|0;o=Xi[88016+(s*56|0)+12>>2]|0;s=Xi[88128+(s*56|0)+12>>2]|0;t=0;a=0;while(1){n=qi[110146+a>>0]|0;if(dD(h,n+o+(i+48728)|0)|0){l=t+1|0;Xi[w+(t<<2)>>2]=a;if(dD(h,n+s+(i+48728)|0)|0)break}else l=t;a=a+1|0;if((a|0)<7)t=l;else{k=5;break}}if((k|0)==5)if((a|0)==7){Xi[w+(l<<2)>>2]=7;l=l+1|0}s=(Xi[e+205824>>2]|0)+(Xi[i+21772>>2]<<1)|0;Gi[s>>1]=Ji[s>>1]|0|64<<f+-49;Wi[(qi[120643+f>>0]|0)+(i+43648)>>0]=l;if(!(Xi[e+25960>>2]|0)){o=l;l=0;while(1){o=o+-1|0;t=qi[110153+(Xi[w+(o<<2)>>2]|0)>>0]|0;if(!(dD(h,(qi[109980+l>>0]|0)+257+(i+48728)|0)|0)){n=qi[109988+l>>0]|0;l=Xi[h>>2]<<1;Xi[h>>2]=l;if(!(l&65534)){f=Xi[v>>2]|0;l=l+-65535+((qi[f+1>>0]|0)<<1|(qi[f>>0]|0)<<9)|0;Xi[h>>2]=l;Xi[v>>2]=f+2}a=Xi[u>>2]|0;e=a<<17;l=l-e|0;f=l>>31;l=(f&e)+l|0;Xi[h>>2]=l;Gi[r+(t<<1)>>1]=(f^65535)-f}else{a=(qi[110012+l>>0]|0)+257+(i+48728)|0;n=qi[109996+l>>0]|0;l=2;while(1){if(!(dD(h,a)|0)){a=l;break}l=l+1|0;if((l|0)>=15){l=0;k=31;break}}if((k|0)==31){while(1){k=0;if((l|0)<30&(SD(h)|0)!=0){l=l+1|0;k=31}else{a=l;break}}if(!a)l=1;else{l=1;do{a=a+-1|0;l=(l<<1)+(SD(h)|0)|0}while((a|0)!=0)}a=l+14|0}l=Xi[h>>2]<<1;Xi[h>>2]=l;if(!(l&65534)){f=Xi[v>>2]|0;l=l+-65535+((qi[f+1>>0]|0)<<1|(qi[f>>0]|0)<<9)|0;Xi[h>>2]=l;Xi[v>>2]=f+2}f=Xi[u>>2]|0;s=f<<17;l=l-s|0;e=l>>31;l=(e&s)+l|0;Xi[h>>2]=l;Gi[r+(t<<1)>>1]=(e^0-a)-e;a=f}if(!o)break;else l=n}}else{o=l;l=0;while(1){o=o+-1|0;t=qi[110153+(Xi[w+(o<<2)>>2]|0)>>0]|0;if(!(dD(h,(qi[109980+l>>0]|0)+257+(i+48728)|0)|0)){n=qi[109988+l>>0]|0;l=Xi[h>>2]<<1;Xi[h>>2]=l;if(!(l&65534)){f=Xi[v>>2]|0;l=l+-65535+((qi[f+1>>0]|0)<<1|(qi[f>>0]|0)<<9)|0;Xi[h>>2]=l;Xi[v>>2]=f+2}a=Xi[u>>2]|0;e=a<<17;l=l-e|0;f=l>>31;l=(f&e)+l|0;Xi[h>>2]=l;Xi[r+(t<<2)>>2]=~f-f}else{a=(qi[110012+l>>0]|0)+257+(i+48728)|0;n=qi[109996+l>>0]|0;l=2;while(1){if(!(dD(h,a)|0)){a=l;break}l=l+1|0;if((l|0)>=15){l=0;k=16;break}}if((k|0)==16){while(1){k=0;if((l|0)<30&(SD(h)|0)!=0){l=l+1|0;k=16}else{a=l;break}}if(!a)l=1;else{l=1;do{a=a+-1|0;l=(l<<1)+(SD(h)|0)|0}while((a|0)!=0)}a=l+14|0}l=Xi[h>>2]<<1;Xi[h>>2]=l;if(!(l&65534)){f=Xi[v>>2]|0;l=l+-65535+((qi[f+1>>0]|0)<<1|(qi[f>>0]|0)<<9)|0;Xi[h>>2]=l;Xi[v>>2]=f+2}f=Xi[u>>2]|0;s=f<<17;l=l-s|0;e=l>>31;l=(e&s)+l|0;Xi[h>>2]=l;Xi[r+(t<<2)>>2]=(e^0-a)-e;a=f}if(!o)break;else l=n}}Xi[b>>2]=a;Xi[c>>2]=l;Xi[d>>2]=Xi[v>>2];Ue=E;return}function FD(){var e=0,i=0,r=0,f=0,l=0,a=0;if(!(Xi[38943]|0)){Xi[38943]=1;Xi[38945]=161084;Xi[38947]=256;mN(155776,8,20,110165,1,1,110185,1,1,0,0,0,4)|0;Xi[38949]=162108;Xi[38951]=8192;mN(155792,13,36,110205,1,1,110241,1,1,0,0,0,4)|0;i=0;r=0;while(1){Xi[155808+(i<<4)+4>>2]=194876+(r<<2);e=Xi[88296+(i<<2)>>2]|0;Xi[155808+(i<<4)+12>>2]=e;mN(155808+(i<<4)|0,8,68,110277+(i*68|0)|0,1,1,110549+(i*68|0)|0,1,1,0,0,0,4)|0;i=i+1|0;if((i|0)==4){e=0;break}else r=e+r|0}do{Xi[155872+(e<<4)+4>>2]=200428+(e<<5);Xi[155872+(e<<4)+12>>2]=8;mN(155872+(e<<4)|0,3,4,110821+(e<<2)|0,1,1,110833+(e<<2)|0,1,1,0,0,0,4)|0;e=e+1|0}while((e|0)!=3);e=0;do{Xi[155920+(e<<4)+4>>2]=200524+(e<<7);Xi[155920+(e<<4)+12>>2]=32;mN(155920+(e<<4)|0,5,8,110845+(e<<3)|0,1,1,110901+(e<<3)|0,1,1,0,0,0,4)|0;e=e+1|0}while((e|0)!=7);e=0;do{Xi[156032+(e<<4)+4>>2]=201420+(e<<11);Xi[156032+(e<<4)+12>>2]=512;mN(156032+(e<<4)|0,9,16,110957+(e<<4)|0,1,1,111213+(e<<4)|0,1,1,0,0,0,4)|0;e=e+1|0}while((e|0)!=15);e=0;do{Xi[156272+(e<<4)+4>>2]=232140+(e<<5);Xi[156272+(e<<4)+12>>2]=8;mN(156272+(e<<4)|0,3,7,111469+(e<<4)|0,1,1,111581+(e<<4)|0,1,1,0,0,0,4)|0;e=e+1|0}while((e|0)!=6);Xi[39093]=232332;Xi[39095]=96;mN(156368,6,16,111565,1,1,111677,1,1,0,0,0,4)|0;a=0;do{e=-1<<a;l=0;do{i=l<<1;r=(i&65280|0)==0;i=(r?8:0)-(qi[145894+(r?i:l>>>7&16777215)>>0]|0)|0;r=i+1|0;f=r+a|0;do{if((f|0)>=9)if((r|0)<9){Wi[232717+(a<<9)+(l<<1)>>0]=i+100;Wi[232717+(a<<9)+(l<<1)+1>>0]=r;break}else{Wi[232717+(a<<9)+(l<<1)>>0]=108;Wi[232717+(a<<9)+(l<<1)+1>>0]=8;break}else{r=(l&65280|0)==0;i=(i<<a)+e+(l>>>((r?0:8)-a+(qi[145894+(r?l:l>>>8)>>0]|0)|0))|0;r=i&1;Wi[232717+(a<<9)+(l<<1)>>0]=((i+2|0)>>>1^0-r)+r;Wi[232717+(a<<9)+(l<<1)+1>>0]=f}}while(0);l=l+1|0}while((l|0)!=256);a=a+1|0}while((a|0)!=7)}return}function yD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0;oe=Ue;Ue=Ue+240|0;$=oe+144|0;W=oe+136|0;Z=oe+120|0;J=oe+104|0;X=oe+96|0;_=oe+88|0;S=oe+80|0;E=oe+72|0;p=oe+64|0;d=oe+48|0;v=oe+32|0;b=oe+24|0;k=oe+8|0;w=oe;m=oe+216|0;F=oe+212|0;fe=oe+208|0;z=oe+192|0;x=oe+160|0;B=Xi[e+32028>>2]|0;ee=e+26672|0;q=((Xi[ee>>2]|0)+-1|0)>>>0<2;ae=Xi[e+25960>>2]|0;ie=i+21764|0;re=i+21768|0;h=Xi[re>>2]|0;j=e+206436|0;te=(Zi(Xi[j>>2]|0,h)|0)+(Xi[ie>>2]|0)|0;ne=i+21772|0;Xi[ne>>2]=te;c=i+816|0;f=Xi[c>>2]|0;if((f|0)!=1){u=i+21788|0;r=Xi[u>>2]|0;if((r|0)==-1){r=Xi[i+4>>2]|0;l=i+12|0;t=Xi[l>>2]|0;n=r+(t>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(t&7);a=t+16|0;o=r+(a>>>3)|0;a=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(a&7)>>>16|n&-65536;o=a>>>0>65535;a=o?n>>>16:a;o=o?16:0;n=(a&65280|0)==0;a=(n?o:o|8)+(qi[145894+(n?a:a>>>8)>>0]|0)|0;n=31-a|0;t=n+t|0;Xi[l>>2]=t;o=n+1|0;do{if(o){s=r+(t>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(t&7);if((o|0)<26){Xi[l>>2]=t+o;r=s>>>a;break}else{le=t+16|0;Xi[l>>2]=le;r=r+(le>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(le&7)>>>(47-n|0);Xi[l>>2]=t+o;r=r|s>>>16<<n+-15;break}}else r=0}while(0);r=r+-1|0;Xi[u>>2]=r}l=r+-1|0;Xi[u>>2]=l;if(r){k=e+205808|0;if(Xi[k>>2]|0?(h&1|l|0)==0:0){le=i+12|0;fe=Xi[le>>2]|0;ae=qi[(Xi[i+4>>2]|0)+(fe>>>3)>>0]<<(fe&7)>>>7&1;Xi[le>>2]=fe+1;Xi[i+21796>>2]=ae;Xi[i+21800>>2]=ae}Xi[F>>2]=0;l=(Xi[e+26256>>2]|0)+(te*48|0)|0;a=l+48|0;do{Wi[l>>0]=0;l=l+1|0}while((l|0)<(a|0));w=i+21796|0;if(!(Xi[w>>2]|0))r=0;else{Xi[F>>2]=128;r=128}if((Xi[c>>2]|0)==3){r=r|63744;Xi[F>>2]=r;if(Xi[i+21812>>2]|0){OD(e,i,r);AD(e,i,r)}DD(e,i,F);a=Xi[F>>2]|2048;Xi[F>>2]=a;r=e+26652|0}else{a=r|14344;Xi[F>>2]=a;OD(e,i,a);s=Xi[e+24688>>2]|0;u=Xi[e+24656>>2]|0;r=e+26652|0;h=Xi[r>>2]|0;Xi[i+44108>>2]=0;Xi[i+44116>>2]=0;Xi[i+44124>>2]=0;Xi[i+44132>>2]=0;f=Xi[i+21716>>2]|0;if(!(f&12288))if(!f)G=80;else{c=156384;l=-1;G=27}else{n=Xi[i+21696>>2]|0;ae=qi[Xi[i+21724>>2]>>0]|0;l=Wi[s+((ae&254)+(n<<2|1))>>0]|0;n=u+((Zi(ae,h)|0)+3+(Xi[(Xi[e+26644>>2]|0)+(n<<2)>>2]|0)<<2)|0;do{if(Xi[k>>2]|0){f=(f&128|0)!=0;if(!(Xi[w>>2]|0)){if(!f){f=n;break}f=Xi[n>>2]|0;Xi[m>>2]=f;Gi[m+2>>1]=f>>16<<1;f=m;l=l>>1;break}else{if(f){f=n;break}f=Xi[n>>2]|0;Xi[m>>2]=f;Gi[m+2>>1]=(f>>16|0)/2|0;f=m;l=l<<1;break}}else f=n}while(0);if(!(Xi[f>>2]|l))G=80;else{c=f;G=27}}do{if((G|0)==27){f=Xi[i+21708>>2]|0;if(!(f&12288))if(!f){G=80;break}else{b=156384;o=-1}else{t=Xi[i+21688>>2]|0;n=Wi[s+(t<<2|2)>>0]|0;t=u+((Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)+(h*3|0)<<2)|0;do{if(Xi[k>>2]|0){f=(f&128|0)!=0;if(!(Xi[w>>2]|0)){if(!f){f=t;break}ae=Xi[t>>2]|0;f=m+4|0;Xi[f>>2]=ae;Gi[m+6>>1]=ae>>16<<1;n=n>>1;break}else{if(f){f=t;break}ae=Xi[t>>2]|0;f=m+4|0;Xi[f>>2]=ae;Gi[m+6>>1]=(ae>>16|0)/2|0;n=n<<1;break}}else f=t}while(0);if(!(Xi[f>>2]|n)){G=80;break}else{b=f;o=n}}n=Xi[i+21712>>2]|0;do{if(!(n&12288))if(!n){n=Xi[i+21704>>2]|0;if(!(n&12288)){u=156384;f=(n|0)==0?-2:-1;break}t=Xi[i+21684>>2]|0;ae=Xi[i+21728>>2]|0;f=Wi[s+(t<<2|ae&2|1)>>0]|0;t=u+(h+3+(ae&h<<1)+(Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)<<2)|0;if(Xi[k>>2]|0){n=(n&128|0)!=0;if(!(Xi[w>>2]|0)){if(!n){u=t;break}ae=Xi[t>>2]|0;u=m+8|0;Xi[u>>2]=ae;Gi[m+10>>1]=ae>>16<<1;f=f>>1;break}else{if(n){u=t;break}ae=Xi[t>>2]|0;u=m+8|0;Xi[u>>2]=ae;Gi[m+10>>1]=(ae>>16|0)/2|0;f=f<<1;break}}else u=t}else{u=156384;f=-1}else{t=Xi[i+21692>>2]|0;f=Wi[s+(t<<2|2)>>0]|0;t=u+((Xi[(Xi[e+26644>>2]|0)+(t<<2)>>2]|0)+(h*3|0)<<2)|0;if(Xi[k>>2]|0){n=(n&128|0)!=0;if(!(Xi[w>>2]|0)){if(!n){u=t;break}ae=Xi[t>>2]|0;u=m+8|0;Xi[u>>2]=ae;Gi[m+10>>1]=ae>>16<<1;f=f>>1;break}else{if(n){u=t;break}ae=Xi[t>>2]|0;u=m+8|0;Xi[u>>2]=ae;Gi[m+10>>1]=(ae>>16|0)/2|0;f=f<<1;break}}else u=t}}while(0);n=(o|0)!=0;l=(l|0)!=0;f=(n&1^1)+(l&1^1)+((f|0)==0&1)|0;do{if((f|0)>1){ae=Gi[c>>1]|0;f=ae<<16>>16;l=Gi[b>>1]|0;n=l<<16>>16;t=Gi[u>>1]|0;o=t<<16>>16;if(ae<<16>>16>l<<16>>16)if(t<<16>>16>l<<16>>16)o=(o|0)>(f|0)?f:o;else o=n;else if(l<<16>>16>t<<16>>16)o=(o|0)>(f|0)?o:f;else o=n;ae=Gi[c+2>>1]|0;s=ae<<16>>16;n=Gi[b+2>>1]|0;f=n<<16>>16;l=Gi[u+2>>1]|0;t=l<<16>>16;if(ae<<16>>16>n<<16>>16){if(l<<16>>16<=n<<16>>16)break;f=(t|0)>(s|0)?s:t;break}else{if(n<<16>>16<=l<<16>>16)break;f=(t|0)>(s|0)?t:s;break}}else{if((f|0)==1){if(!l){o=Gi[c>>1]|0;f=Gi[c+2>>1]|0;break}if(n){o=Gi[u>>1]|0;f=Gi[u+2>>1]|0;break}else{o=Gi[b>>1]|0;f=Gi[b+2>>1]|0;break}}ae=Gi[c>>1]|0;f=ae<<16>>16;l=Gi[b>>1]|0;n=l<<16>>16;t=Gi[u>>1]|0;o=t<<16>>16;if(ae<<16>>16>l<<16>>16)if(t<<16>>16>l<<16>>16)o=(o|0)>(f|0)?f:o;else o=n;else if(l<<16>>16>t<<16>>16)o=(o|0)>(f|0)?o:f;else o=n;ae=Gi[c+2>>1]|0;s=ae<<16>>16;n=Gi[b+2>>1]|0;f=n<<16>>16;l=Gi[u+2>>1]|0;t=l<<16>>16;if(ae<<16>>16>n<<16>>16){if(l<<16>>16<=n<<16>>16)break;f=(t|0)>(s|0)?s:t;break}else{if(n<<16>>16<=l<<16>>16)break;f=(t|0)>(s|0)?t:s;break}}}while(0);ae=f<<16|o&65535;Xi[i+43824>>2]=ae;Xi[i+43828>>2]=ae;Xi[i+43832>>2]=ae;Xi[i+43836>>2]=ae;Xi[i+43856>>2]=ae;Xi[i+43860>>2]=ae;Xi[i+43864>>2]=ae;Xi[i+43868>>2]=ae;Xi[i+43888>>2]=ae;Xi[i+43892>>2]=ae;Xi[i+43896>>2]=ae;Xi[i+43900>>2]=ae;Xi[i+43920>>2]=ae;Xi[i+43924>>2]=ae;Xi[i+43928>>2]=ae;Xi[i+43932>>2]=ae}}while(0);if((G|0)==80){ee=i+43824|0;fe=i+43856|0;le=i+43888|0;ae=i+43920|0;Xi[ee>>2]=0;Xi[ee+4>>2]=0;Xi[ee+8>>2]=0;Xi[ee+12>>2]=0;Xi[fe>>2]=0;Xi[fe+4>>2]=0;Xi[fe+8>>2]=0;Xi[fe+12>>2]=0;Xi[le>>2]=0;Xi[le+4>>2]=0;Xi[le+8>>2]=0;Xi[le+12>>2]=0;Xi[ae>>2]=0;Xi[ae+4>>2]=0;Xi[ae+8>>2]=0;Xi[ae+12>>2]=0}}l=Xi[r>>2]|0;f=(Zi(l<<2,Xi[re>>2]|0)|0)+(Xi[ie>>2]<<2)|0;r=Xi[ne>>2]<<2;if(!(a&12288)){ne=Xi[e+24688>>2]|0;Gi[ne+r>>1]=-1;Gi[ne+(r|2)>>1]=-1}else{fe=Xi[e+24656>>2]|0;ne=i+43824|0;ae=Xi[ne+4>>2]|0;le=fe+(f<<2)|0;Xi[le>>2]=Xi[ne>>2];Xi[le+4>>2]=ae;le=i+43832|0;ae=Xi[le+4>>2]|0;ne=fe+((f|2)<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=i+43856|0;ae=Xi[ne+4>>2]|0;le=f+l|0;re=fe+(le<<2)|0;Xi[re>>2]=Xi[ne>>2];Xi[re+4>>2]=ae;re=i+43864|0;ae=Xi[re+4>>2]|0;le=fe+(le+2<<2)|0;Xi[le>>2]=Xi[re>>2];Xi[le+4>>2]=ae;le=i+43888|0;ae=Xi[le+4>>2]|0;re=f+(l<<1)|0;ne=fe+(re<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=i+43896|0;ae=Xi[ne+4>>2]|0;re=fe+(re+2<<2)|0;Xi[re>>2]=Xi[ne>>2];Xi[re+4>>2]=ae;re=i+43920|0;ae=Xi[re+4>>2]|0;ne=f+(l*3|0)|0;le=fe+(ne<<2)|0;Xi[le>>2]=Xi[re>>2];Xi[le+4>>2]=ae;le=i+43928|0;ae=Xi[le+4>>2]|0;ne=fe+(ne+2<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=Xi[e+24688>>2]|0;Wi[ne+r>>0]=Wi[i+44108>>0]|0;Wi[ne+(r|1)>>0]=Wi[i+44110>>0]|0;Wi[ne+(r|2)>>0]=Wi[i+44124>>0]|0;Wi[ne+(r|3)>>0]=Wi[i+44126>>0]|0}if(a&49152|0){fe=Xi[e+24660>>2]|0;ne=i+43984|0;ae=Xi[ne+4>>2]|0;le=fe+(f<<2)|0;Xi[le>>2]=Xi[ne>>2];Xi[le+4>>2]=ae;le=i+43992|0;ae=Xi[le+4>>2]|0;ne=fe+((f|2)<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=i+44016|0;ae=Xi[ne+4>>2]|0;le=f+l|0;re=fe+(le<<2)|0;Xi[re>>2]=Xi[ne>>2];Xi[re+4>>2]=ae;re=i+44024|0;ae=Xi[re+4>>2]|0;le=fe+(le+2<<2)|0;Xi[le>>2]=Xi[re>>2];Xi[le+4>>2]=ae;le=i+44048|0;ae=Xi[le+4>>2]|0;re=f+(l<<1)|0;ne=fe+(re<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=i+44056|0;ae=Xi[ne+4>>2]|0;re=fe+(re+2<<2)|0;Xi[re>>2]=Xi[ne>>2];Xi[re+4>>2]=ae;re=i+44080|0;ae=Xi[re+4>>2]|0;ne=f+(l*3|0)|0;le=fe+(ne<<2)|0;Xi[le>>2]=Xi[re>>2];Xi[le+4>>2]=ae;le=i+44088|0;ae=Xi[le+4>>2]|0;ne=fe+(ne+2<<2)|0;Xi[ne>>2]=Xi[le>>2];Xi[ne+4>>2]=ae;ne=Xi[e+24692>>2]|0;Wi[ne+r>>0]=Wi[i+44148>>0]|0;Wi[ne+(r|1)>>0]=Wi[i+44150>>0]|0;Wi[ne+(r|2)>>0]=Wi[i+44164>>0]|0;Wi[ne+(r|3)>>0]=Wi[i+44166>>0]|0}Xi[(Xi[e+24668>>2]|0)+(te<<2)>>2]=Xi[F>>2];Wi[(Xi[e+24644>>2]|0)+te>>0]=Xi[i+824>>2];Gi[(Xi[e+205804>>2]|0)+(te<<1)>>1]=Xi[i+808>>2];Xi[i+21624>>2]=1;r=0}else G=88}else G=88;e:do{if((G|0)==88){Y=e+205808|0;if((Xi[Y>>2]|0)!=0&(h&1|0)==0){Q=i+12|0;K=Xi[Q>>2]|0;le=qi[(Xi[i+4>>2]|0)+(K>>>3)>>0]<<(K&7)>>>7&1;Xi[Q>>2]=K+1;Xi[i+21796>>2]=le;Xi[i+21800>>2]=le}Xi[i+21624>>2]=0;le=i+4|0;Q=i+12|0;r=Xi[Q>>2]|0;l=(Xi[le>>2]|0)+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);do{if(l>>>0<=134217727){K=l>>>0>65535;V=K?l>>>16:l;K=K?16:0;a=(V&65280|0)==0;K=(qi[145894+(a?V:V>>>8)>>0]|0)+(a?K:K|8)<<1;a=K+-31|0;Xi[Q>>2]=r+63-K;if((a|0)<7){nA(0,16,118304,w);r=-1094995529;f=Xi[c>>2]|0;break}else{r=(l>>>a)+-1|0;break}}else{K=l>>>23;Xi[Q>>2]=(qi[98538+K>>0]|0)+r;r=qi[99050+K>>0]|0}}while(0);Xi[fe>>2]=r;i:do{switch(f|0){case 3:if(r>>>0<23){f=qi[92960+(r<<2)+2>>0]|0;r=Ji[92960+(r<<2)>>1]|0;Xi[fe>>2]=r;K=0;break i}else{r=r+-23|0;Xi[fe>>2]=r;G=104;break i}case 2:if(r>>>0<5){f=qi[93052+(r<<2)+2>>0]|0;r=Ji[93052+(r<<2)>>1]|0;Xi[fe>>2]=r;K=0;break i}else{r=r+-5|0;Xi[fe>>2]=r;G=104;break i}default:if(r|0?(Xi[i+812>>2]|0)==5:0){r=r+-1|0;Xi[fe>>2]=r;G=104}else G=104}}while(0);do{if((G|0)==104)if(r>>>0>25){e=Xi[e+4>>2]|0;ne=(ZM(Xi[i+812>>2]|0)|0)<<24>>24;te=Xi[ie>>2]|0;i=Xi[re>>2]|0;Xi[k>>2]=r;Xi[k+4>>2]=ne;Xi[k+8>>2]=te;Xi[k+12>>2]=i;nA(e,16,111821,k);r=-1;break e}else{K=qi[93072+(r<<2)+3>>0]|0;Xi[i+21636>>2]=qi[93072+(r<<2)+2>>0];r=Ji[93072+(r<<2)>>1]|0;Xi[fe>>2]=r;f=0;break}}while(0);V=i+21796|0;if(!(Xi[V>>2]|0))H=r;else{H=r|128;Xi[fe>>2]=H}Gi[(Xi[e+205804>>2]|0)+(te<<1)>>1]=Xi[i+808>>2];if(H&4|0){l=Zi(Ji[92952+(Xi[ee>>2]<<1)>>1]|0,Xi[e+27844>>2]|0)|0;r=Xi[Q>>2]|0;f=0-r&7;if(f){r=f+r|0;Xi[Q>>2]=r}Xi[i+43608>>2]=(Xi[le>>2]|0)+(r>>3);if(((Xi[i+16>>2]|0)-r|0)<(l|0)){nA(Xi[e+4>>2]|0,16,111864,b);r=-1094995529;break}else{Xi[Q>>2]=r+l;Wi[(Xi[e+24644>>2]|0)+te>>0]=0;l=(Xi[e+26256>>2]|0)+(te*48|0)|0;a=l+48|0;do{Wi[l>>0]=16;l=l+1|0}while((l|0)<(a|0));Xi[(Xi[e+24668>>2]|0)+(te<<2)>>2]=Xi[fe>>2];r=0;break}}OD(e,i,H);AD(e,i,H);i:do{if(!(H&7)){if((f|0)==4){r:do{if((Xi[c>>2]|0)==3){a=0;do{r=Xi[Q>>2]|0;f=(Xi[le>>2]|0)+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7)>>>23;Xi[Q>>2]=(qi[98538+f>>0]|0)+r;f=Wi[99050+f>>0]|0;r=f&255;l=i+44376+(a<<1)|0;Gi[l>>1]=f&255;if((f&255)>12){G=137;break}Xi[z+(a<<2)>>2]=qi[93176+(r<<2)+2>>0];Gi[l>>1]=Gi[93176+((f&255)<<2)>>1]|0;a=a+1|0}while((a|0)<4);if((G|0)==137){e=Xi[e+4>>2]|0;te=Xi[ie>>2]|0;i=Xi[re>>2]|0;Xi[v>>2]=r;Xi[v+4>>2]=te;Xi[v+8>>2]=i;nA(e,16,111905,v);r=-1;break e}if((Gi[i+44378>>1]|Gi[i+44376>>1]|Gi[i+44380>>1]|Gi[i+44382>>1])&256){DD(e,i,fe);Wi[i+44166>>0]=-2;Wi[i+44126>>0]=-2;Wi[i+44150>>0]=-2;Wi[i+44110>>0]=-2}}else{a=0;while(1){r=Xi[Q>>2]|0;f=(Xi[le>>2]|0)+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7)>>>23;Xi[Q>>2]=(qi[98538+f>>0]|0)+r;f=Wi[99050+f>>0]|0;r=f&255;l=i+44376+(a<<1)|0;Gi[l>>1]=f&255;if((f&255)>3)break;Xi[z+(a<<2)>>2]=qi[93228+(r<<2)+2>>0];Gi[l>>1]=Gi[93228+((f&255)<<2)>>1]|0;a=a+1|0;if((a|0)>=4)break r}e=Xi[e+4>>2]|0;te=Xi[ie>>2]|0;i=Xi[re>>2]|0;Xi[d>>2]=r;Xi[d+4>>2]=te;Xi[d+8>>2]=i;nA(e,16,111945,d);r=-1;break e}}while(0);U=i+23380|0;a=Xi[U>>2]|0;u=(a|0)==0;r:do{if(!u){n=i+21800|0;t=(Xi[fe>>2]&512|0)==0;s=0;f:while(1){if(t)l=Xi[i+23372+(s<<2)>>2]<<Xi[n>>2];else l=1;f=4096<<(s<<1);o=0;do{r=Ji[i+44376+(o<<1)>>1]|0;do{if(!(r&256)){if(!(r&f)){Xi[x+(s<<4)+(o<<2)>>2]=-1;break}switch(l|0){case 1:{r=0;break}case 2:{H=Xi[Q>>2]|0;r=qi[(Xi[le>>2]|0)+(H>>>3)>>0]<<(H&7)>>>7&1;Xi[Q>>2]=H+1;r=r^1;break}default:{H=Xi[Q>>2]|0;r=(Xi[le>>2]|0)+(H>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(H&7)>>>23;Xi[Q>>2]=(qi[98538+r>>0]|0)+H;r=qi[99050+r>>0]|0;if(r>>>0>=l>>>0)break f}}Xi[x+(s<<4)+(o<<2)>>2]=r}}while(0);o=o+1|0}while((o|0)<4);s=s+1|0;if(s>>>0>=a>>>0)break r}e=Xi[e+4>>2]|0;Xi[p>>2]=r;nA(e,16,111985,p);r=-1;break e}}while(0);if(!B)n=0;else{B=(Xi[e+26732>>2]|0)==0;n=i+44376|0;n=(((B?24117616:7340144)&Xi[n>>2]|0)==0?((B?24117616:7340144)&Xi[n+4>>2]|0)==0:0)&1}if(u)break;A=e+24620|0;g=i+21716|0;M=i+21696|0;R=e+26644|0;T=e+26652|0;B=0;while(1){P=B<<1;N=4096<<P;D=i+44096+(B*40|0)+11|0;C=i+43776+(B*160|0)+40|0;P=12288<<P;L=i+43776+(B*160|0)+42|0;H=0;do{r=i+44376+(H<<1)|0;do{if(!(Gi[r>>1]&256)){O=Xi[x+(B<<4)+(H<<2)>>2]&255;I=H<<2;f=qi[120643+I>>0]|0;Wi[f+9+(i+44096+(B*40|0))>>0]=O;Wi[f+8+(i+44096+(B*40|0))>>0]=O;Wi[f+1+(i+44096+(B*40|0))>>0]=O;Wi[i+44096+(B*40|0)+f>>0]=O;r=Ji[r>>1]|0;if(!(r&N)){Xi[i+43776+(B*160|0)+(f<<2)+36>>2]=0;Xi[i+43776+(B*160|0)+(f<<2)+32>>2]=0;Xi[i+43776+(B*160|0)+(f<<2)+4>>2]=0;Xi[i+43776+(B*160|0)+(f<<2)>>2]=0;break}p=r&24|0?2:1;F=Xi[z+(H<<2)>>2]|0;if((F|0)>0){y=(r&8|0)==0;O=(r&16|0)==0;S=(r&32|0)==0;m=0;do{r=Wi[120643+((Zi(m,p)|0)+I)>>0]|0;_=r&255;u=Wi[i+44096+(B*40|0)+_>>0]|0;h=u<<24>>24;E=_+-8|0;k=Wi[i+44096+(B*40|0)+E>>0]|0;v=_+-1|0;b=Wi[i+44096+(B*40|0)+v>>0]|0;w=i+43776+(B*160|0)+(v<<2)|0;c=i+43776+(B*160|0)+(E<<2)|0;t=E+p|0;l=Wi[i+44096+(B*40|0)+t>>0]|0;f=l<<24>>24;l=l<<24>>24==-2;do{if((_&7|0)==4&((r&255)>19&(l&(Xi[Y>>2]|0)!=0))){if((Wi[D>>0]|0)==-2){G=178;break}o=Xi[(Xi[A>>2]|0)+44>>2]|0;Xi[C>>2]=0;a=(Xi[g>>2]&128|0)==0;if(!(Xi[V>>2]|0)){if(a){G=178;break}d=Xi[j>>2]|0;r=d+(Xi[M>>2]|0)|0;f=(Xi[re>>2]<<1&2)+(_>>>5)|0;if(!(Xi[o+((Zi(f>>>2,d)|0)+r<<2)>>2]&P)){s=-1;d=C;break}d=(Xi[(Xi[R>>2]|0)+(r<<2)>>2]|0)+3+(Zi(Xi[T>>2]|0,f)|0)|0;s=Xi[A>>2]|0;o=Xi[s+32+(B<<2)>>2]|0;Gi[C>>1]=Gi[o+(d<<2)>>1]|0;Gi[L>>1]=Gi[o+(d<<2)+2>>1]<<1;s=Wi[(Xi[s+64+(B<<2)>>2]|0)+((f&14)+(r<<2|1))>>0]>>1;d=C;break}else{if(!a){G=178;break}r=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;f=_>>>2;if(!(Xi[o+(r<<2)>>2]&P)){s=-1;d=C;break}d=(Xi[(Xi[R>>2]|0)+(r<<2)>>2]|0)+3+(Zi(Xi[T>>2]|0,f&3)|0)|0;s=Xi[A>>2]|0;o=Xi[s+32+(B<<2)>>2]|0;Gi[C>>1]=Gi[o+(d<<2)>>1]|0;Gi[L>>1]=(Gi[o+(d<<2)+2>>1]|0)/2|0;s=Wi[(Xi[s+64+(B<<2)>>2]|0)+(f&2|r<<2|1)>>0]<<1;d=C;break}}else G=178}while(0);do{if((G|0)==178){G=0;if(l){d=_+-9|0;s=Wi[i+44096+(B*40|0)+d>>0]|0;d=i+43776+(B*160|0)+(d<<2)|0;break}else{s=f;d=i+43776+(B*160|0)+(t<<2)|0;break}}}while(0);l=k<<24>>24==u<<24>>24;f=b<<24>>24==u<<24>>24;r=(f&1)+(l&1)+((s|0)==(h|0)&1)|0;do{if((r|0)>1){b=Gi[w>>1]|0;t=b<<16>>16;r=Gi[c>>1]|0;f=r<<16>>16;l=Gi[d>>1]|0;a=l<<16>>16;do{if(b<<16>>16>r<<16>>16){if(l<<16>>16<=r<<16>>16){t=f;break}t=(a|0)>(t|0)?t:a}else{if(r<<16>>16<=l<<16>>16){t=f;break}t=(a|0)>(t|0)?a:t}}while(0);v=Gi[i+43776+(B*160|0)+(v<<2)+2>>1]|0;o=v<<16>>16;f=Gi[i+43776+(B*160|0)+(E<<2)+2>>1]|0;a=f<<16>>16;r=Gi[d+2>>1]|0;l=r<<16>>16;if(v<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16){s=t;break}s=t;a=(l|0)>(o|0)?o:l;break}else{if(f<<16>>16<=r<<16>>16){s=t;break}s=t;a=(l|0)>(o|0)?l:o;break}}else{if((r|0)==1){if(f){s=Gi[w>>1]|0;a=Gi[i+43776+(B*160|0)+(v<<2)+2>>1]|0;break}if(l){s=Gi[c>>1]|0;a=Gi[i+43776+(B*160|0)+(E<<2)+2>>1]|0;break}else{s=Gi[d>>1]|0;a=Gi[d+2>>1]|0;break}}a=Gi[w>>1]|0;o=a<<16>>16;if(b<<24>>24!=-2&(k<<24>>24==-2&(s|0)==-2)){s=o;a=Gi[i+43776+(B*160|0)+(v<<2)+2>>1]|0;break}r=Gi[c>>1]|0;t=r<<16>>16;f=Gi[d>>1]|0;l=f<<16>>16;do{if(a<<16>>16>r<<16>>16){if(f<<16>>16<=r<<16>>16)break;t=(l|0)>(o|0)?o:l}else{if(r<<16>>16<=f<<16>>16)break;t=(l|0)>(o|0)?l:o}}while(0);v=Gi[i+43776+(B*160|0)+(v<<2)+2>>1]|0;o=v<<16>>16;f=Gi[i+43776+(B*160|0)+(E<<2)+2>>1]|0;a=f<<16>>16;r=Gi[d+2>>1]|0;l=r<<16>>16;if(v<<16>>16>f<<16>>16){if(r<<16>>16<=f<<16>>16){s=t;break}s=t;a=(l|0)>(o|0)?o:l;break}else{if(f<<16>>16<=r<<16>>16){s=t;break}s=t;a=(l|0)>(o|0)?l:o;break}}}while(0);r=Xi[Q>>2]|0;t=Xi[le>>2]|0;f=t+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){l=f>>>23;r=(qi[98538+l>>0]|0)+r|0;Xi[Q>>2]=r;l=Wi[99562+l>>0]|0}else{l=f>>>0>65535;v=l?f>>>16:f;l=l?16:0;E=(v&65280|0)==0;l=(qi[145894+(E?v:v>>>8)>>0]|0)+(E?l:l|8)|0;r=31-l+r|0;E=t+(r>>>3)|0;E=(ZT(qi[E>>0]|qi[E+1>>0]<<8|qi[E+2>>0]<<16|qi[E+3>>0]<<24|0)|0)<<(r&7)>>>l;r=32-l+r|0;Xi[Q>>2]=r;l=E&1;l=(E>>>1^0-l)+l|0}f=t+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){E=f>>>23;Xi[Q>>2]=(qi[98538+E>>0]|0)+r;r=Wi[99562+E>>0]|0}else{v=f>>>0>65535;d=v?f>>>16:f;v=v?16:0;E=(d&65280|0)==0;v=(qi[145894+(E?d:d>>>8)>>0]|0)+(E?v:v|8)|0;r=31-v+r|0;E=t+(r>>>3)|0;E=(ZT(qi[E>>0]|qi[E+1>>0]<<8|qi[E+2>>0]<<16|qi[E+3>>0]<<24|0)|0)<<(r&7)>>>v;Xi[Q>>2]=32-v+r;r=E&1;r=(E>>>1^0-r)+r|0}r=r+a|0;f=l+s&65535;do{if(y){if(!O){E=_+1|0;Gi[i+43776+(B*160|0)+(E<<2)>>1]=f;r=r&65535;Gi[i+43776+(B*160|0)+(E<<2)+2>>1]=r;break}if(S){r=r&65535;break}else{E=_+8|0;Gi[i+43776+(B*160|0)+(E<<2)>>1]=f;r=r&65535;Gi[i+43776+(B*160|0)+(E<<2)+2>>1]=r;break}}else{d=_+9|0;Gi[i+43776+(B*160|0)+(d<<2)>>1]=f;v=_+8|0;Gi[i+43776+(B*160|0)+(v<<2)>>1]=f;E=_+1|0;Gi[i+43776+(B*160|0)+(E<<2)>>1]=f;r=r&65535;Gi[i+43776+(B*160|0)+(d<<2)+2>>1]=r;Gi[i+43776+(B*160|0)+(v<<2)+2>>1]=r;Gi[i+43776+(B*160|0)+(E<<2)+2>>1]=r}}while(0);Gi[i+43776+(B*160|0)+(_<<2)>>1]=f;Gi[i+43776+(B*160|0)+(_<<2)+2>>1]=r;m=m+1|0}while((m|0)<(F|0))}}else{I=qi[120643+(H<<2)>>0]|0;Wi[i+44096+(B*40|0)+I>>0]=Wi[I+1+(i+44096+(B*40|0))>>0]|0}}while(0);H=H+1|0}while((H|0)!=4);B=B+1|0;if(B>>>0>=(Xi[U>>2]|0)>>>0)break i}}if(H&256|0){DD(e,i,fe);n=Xi[e+26732>>2]&B;break}if(H&8|0){c=i+23380|0;r=Xi[c>>2]|0;if(!r){n=B;break}a=i+21800|0;l=0;r:do{if(H&4096<<(l<<1)){f=Xi[i+23372+(l<<2)>>2]<<Xi[a>>2];switch(f|0){case 1:{r=0;break}case 2:{j=Xi[Q>>2]|0;r=qi[(Xi[le>>2]|0)+(j>>>3)>>0]<<(j&7)>>>7&1;Xi[Q>>2]=j+1;r=r^1;break}default:{j=Xi[Q>>2]|0;r=(Xi[le>>2]|0)+(j>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(j&7)>>>23;Xi[Q>>2]=(qi[98538+r>>0]|0)+j;r=qi[99050+r>>0]|0;if(r>>>0>=f>>>0){G=237;break r}}}r=Zi(r,16843009)|0;Xi[i+44096+(l*40|0)+12>>2]=r;Xi[i+44096+(l*40|0)+20>>2]=r;Xi[i+44096+(l*40|0)+28>>2]=r;Xi[i+44096+(l*40|0)+36>>2]=r;r=Xi[c>>2]|0}l=l+1|0}while(l>>>0<r>>>0);if((G|0)==237){e=Xi[e+4>>2]|0;Xi[E>>2]=r;nA(e,16,111985,E);r=-1;break e}if(!r){n=B;break}else b=0;while(1){if(H&4096<<(b<<1)){f=Wi[i+44096+(b*40|0)+12>>0]|0;s=Wi[i+44096+(b*40|0)+4>>0]|0;u=Wi[i+44096+(b*40|0)+11>>0]|0;n=i+43776+(b*160|0)+44|0;h=i+43776+(b*160|0)+16|0;r=Wi[i+44096+(b*40|0)+8>>0]|0;if(r<<24>>24==-2){t=Wi[i+44096+(b*40|0)+3>>0]|0;w=i+43776+(b*160|0)+12|0;k=3}else{t=r<<24>>24;w=i+43776+(b*160|0)+32|0;k=8}l=s<<24>>24==f<<24>>24;a=u<<24>>24==f<<24>>24;r=(a&1)+(l&1)+((t|0)==(f<<24>>24|0)&1)|0;do{if((r|0)>1){G=Gi[n>>1]|0;n=G<<16>>16;l=Gi[h>>1]|0;a=l<<16>>16;r=Gi[w>>1]|0;f=r<<16>>16;do{if(G<<16>>16>l<<16>>16){if(r<<16>>16<=l<<16>>16)break;a=(f|0)>(n|0)?n:f}else{if(l<<16>>16<=r<<16>>16)break;a=(f|0)>(n|0)?f:n}}while(0);G=Gi[i+43776+(b*160|0)+46>>1]|0;l=G<<16>>16;n=Gi[i+43776+(b*160|0)+18>>1]|0;t=n<<16>>16;r=Gi[i+43776+(b*160|0)+(k<<2)+2>>1]|0;f=r<<16>>16;if(G<<16>>16>n<<16>>16){if(r<<16>>16<=n<<16>>16)break;t=(f|0)>(l|0)?l:f;break}else{if(n<<16>>16<=r<<16>>16)break;t=(f|0)>(l|0)?f:l;break}}else{if((r|0)==1){if(a){t=Gi[i+43776+(b*160|0)+46>>1]|0;a=Gi[n>>1]|0;break}if(l){t=Gi[i+43776+(b*160|0)+18>>1]|0;a=Gi[h>>1]|0;break}else{t=Gi[i+43776+(b*160|0)+(k<<2)+2>>1]|0;a=Gi[w>>1]|0;break}}n=Gi[n>>1]|0;o=n<<16>>16;if(u<<24>>24!=-2&(s<<24>>24==-2&(t|0)==-2)){t=Gi[i+43776+(b*160|0)+46>>1]|0;a=o;break}l=Gi[h>>1]|0;a=l<<16>>16;r=Gi[w>>1]|0;f=r<<16>>16;do{if(n<<16>>16>l<<16>>16){if(r<<16>>16<=l<<16>>16)break;a=(f|0)>(o|0)?o:f}else{if(l<<16>>16<=r<<16>>16)break;a=(f|0)>(o|0)?f:o}}while(0);G=Gi[i+43776+(b*160|0)+46>>1]|0;l=G<<16>>16;n=Gi[i+43776+(b*160|0)+18>>1]|0;t=n<<16>>16;r=Gi[i+43776+(b*160|0)+(k<<2)+2>>1]|0;f=r<<16>>16;if(G<<16>>16>n<<16>>16){if(r<<16>>16<=n<<16>>16)break;t=(f|0)>(l|0)?l:f;break}else{if(n<<16>>16<=r<<16>>16)break;t=(f|0)>(l|0)?f:l;break}}}while(0);r=Xi[Q>>2]|0;n=Xi[le>>2]|0;f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){l=f>>>23;r=(qi[98538+l>>0]|0)+r|0;Xi[Q>>2]=r;l=Wi[99562+l>>0]|0}else{l=f>>>0>65535;j=l?f>>>16:f;l=l?16:0;G=(j&65280|0)==0;l=(qi[145894+(G?j:j>>>8)>>0]|0)+(G?l:l|8)|0;r=31-l+r|0;G=n+(r>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(r&7)>>>l;r=32-l+r|0;Xi[Q>>2]=r;l=G&1;l=(G>>>1^0-l)+l|0}f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){G=f>>>23;Xi[Q>>2]=(qi[98538+G>>0]|0)+r;r=Wi[99562+G>>0]|0}else{j=f>>>0>65535;Y=j?f>>>16:f;j=j?16:0;G=(Y&65280|0)==0;j=(qi[145894+(G?Y:Y>>>8)>>0]|0)+(G?j:j|8)|0;r=31-j+r|0;G=n+(r>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(r&7)>>>j;Xi[Q>>2]=32-j+r;r=G&1;r=(G>>>1^0-r)+r|0}r=r+t<<16|l+a&65535;Xi[i+43776+(b*160|0)+48>>2]=r;Xi[i+43776+(b*160|0)+52>>2]=r;Xi[i+43776+(b*160|0)+56>>2]=r;Xi[i+43776+(b*160|0)+60>>2]=r;Xi[i+43776+(b*160|0)+80>>2]=r;Xi[i+43776+(b*160|0)+84>>2]=r;Xi[i+43776+(b*160|0)+88>>2]=r;Xi[i+43776+(b*160|0)+92>>2]=r;Xi[i+43776+(b*160|0)+112>>2]=r;Xi[i+43776+(b*160|0)+116>>2]=r;Xi[i+43776+(b*160|0)+120>>2]=r;Xi[i+43776+(b*160|0)+124>>2]=r;Xi[i+43776+(b*160|0)+144>>2]=r;Xi[i+43776+(b*160|0)+148>>2]=r;Xi[i+43776+(b*160|0)+152>>2]=r;Xi[i+43776+(b*160|0)+156>>2]=r;r=Xi[c>>2]|0}b=b+1|0;if(b>>>0>=r>>>0){n=B;break i}}}I=i+23380|0;r=(Xi[I>>2]|0)==0;if(H&16|0){if(r){n=B;break}t=i+21800|0;o=0;r:do{l=o<<1;a=i+23372+(o<<2)|0;n=0;do{f:do{if(!(H&4096<<n+l))r=255;else{f=Xi[a>>2]<<Xi[t>>2];switch(f|0){case 1:{r=0;break f}case 2:{z=Xi[Q>>2]|0;r=qi[(Xi[le>>2]|0)+(z>>>3)>>0]<<(z&7)>>>7&1;Xi[Q>>2]=z+1;r=r^1;break f}default:{z=Xi[Q>>2]|0;r=(Xi[le>>2]|0)+(z>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(z&7)>>>23;Xi[Q>>2]=(qi[98538+r>>0]|0)+z;r=qi[99050+r>>0]|0;if(r>>>0<f>>>0)break f;else{G=293;break r}}}}}while(0);z=n<<4|12;x=Zi(r,16843009)|0;Xi[i+44096+(o*40|0)+z>>2]=x;Xi[z+8+(i+44096+(o*40|0))>>2]=x;n=n+1|0}while((n|0)<2);o=o+1|0;r=Xi[I>>2]|0}while(o>>>0<r>>>0);if((G|0)==293){e=Xi[e+4>>2]|0;Xi[S>>2]=r;nA(e,16,111985,S);r=-1;break e}if(!r){n=B;break}E=e+24620|0;S=i+21716|0;_=i+21696|0;m=e+26644|0;p=e+26652|0;L=0;while(1){F=L<<1;y=i+44096+(L*40|0)+4|0;O=i+43776+(L*160|0)+16|0;A=i+43776+(L*160|0)+18|0;g=i+44096+(L*40|0)+11|0;M=i+43776+(L*160|0)+40|0;R=12288<<F;T=i+43776+(L*160|0)+42|0;N=i+44096+(L*40|0)+27|0;D=i+43776+(L*160|0)+108|0;C=i+43776+(L*160|0)+110|0;P=0;do{if(!(H&4096<<P+F)){f=P<<4|12;r=0}else{r=P<<3;f=P<<4|12;u=Wi[i+44096+(L*40|0)+f>>0]|0;h=u<<24>>24;do{if(!P){if((Wi[y>>0]|0)!=u<<24>>24){G=304;break}n=Gi[A>>1]|0;o=Gi[O>>1]|0}else{if((Wi[N>>0]|0)!=u<<24>>24){G=304;break}n=Gi[C>>1]|0;o=Gi[D>>1]|0}}while(0);do{if((G|0)==304){G=0;r=Wi[120643+r>>0]|0;o=r&255;v=o+-8|0;k=Wi[i+44096+(L*40|0)+v>>0]|0;d=o+-1|0;b=Wi[i+44096+(L*40|0)+d>>0]|0;w=i+43776+(L*160|0)+(d<<2)|0;c=i+43776+(L*160|0)+(v<<2)|0;t=o+-4|0;a=Wi[i+44096+(L*40|0)+t>>0]|0;l=a<<24>>24;a=a<<24>>24==-2;do{if((o&7|0)==4&((r&255)>19&(a&(Xi[Y>>2]|0)!=0))){if((Wi[g>>0]|0)==-2){G=313;break}s=Xi[(Xi[E>>2]|0)+44>>2]|0;Xi[M>>2]=0;n=(Xi[S>>2]&128|0)==0;if(!(Xi[V>>2]|0)){if(n){G=313;break}z=Xi[j>>2]|0;l=z+(Xi[_>>2]|0)|0;r=(Xi[re>>2]<<1&2)+(o>>>5)|0;if(!(Xi[s+((Zi(r>>>2,z)|0)+l<<2)>>2]&R)){n=-1;s=M;break}s=(Xi[(Xi[m>>2]|0)+(l<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r)|0)|0;n=Xi[E>>2]|0;z=Xi[n+32+(L<<2)>>2]|0;Gi[M>>1]=Gi[z+(s<<2)>>1]|0;Gi[T>>1]=Gi[z+(s<<2)+2>>1]<<1;n=Wi[(Xi[n+64+(L<<2)>>2]|0)+((r&14)+(l<<2|1))>>0]>>1;s=M;break}else{if(!n){G=313;break}l=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;r=o>>>2;if(!(Xi[s+(l<<2)>>2]&R)){n=-1;s=M;break}s=(Xi[(Xi[m>>2]|0)+(l<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r&3)|0)|0;n=Xi[E>>2]|0;z=Xi[n+32+(L<<2)>>2]|0;Gi[M>>1]=Gi[z+(s<<2)>>1]|0;Gi[T>>1]=(Gi[z+(s<<2)+2>>1]|0)/2|0;n=Wi[(Xi[n+64+(L<<2)>>2]|0)+(r&2|l<<2|1)>>0]<<1;s=M;break}}else G=313}while(0);do{if((G|0)==313){G=0;if(a){s=o+-9|0;n=Wi[i+44096+(L*40|0)+s>>0]|0;s=i+43776+(L*160|0)+(s<<2)|0;break}else{n=l;s=i+43776+(L*160|0)+(t<<2)|0;break}}}while(0);a=k<<24>>24==u<<24>>24;l=b<<24>>24==u<<24>>24;r=(l&1)+(a&1)+((n|0)==(h|0)&1)|0;if((r|0)>1){z=Gi[w>>1]|0;t=z<<16>>16;r=Gi[c>>1]|0;l=r<<16>>16;a=Gi[s>>1]|0;n=a<<16>>16;do{if(z<<16>>16>r<<16>>16){if(a<<16>>16<=r<<16>>16){o=l;break}o=(n|0)>(t|0)?t:n}else{if(r<<16>>16<=a<<16>>16){o=l;break}o=(n|0)>(t|0)?n:t}}while(0);z=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;t=z<<16>>16;a=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;n=a<<16>>16;r=Gi[s+2>>1]|0;l=r<<16>>16;if(z<<16>>16>a<<16>>16){if(r<<16>>16<=a<<16>>16)break;n=(l|0)>(t|0)?t:l;break}else{if(a<<16>>16<=r<<16>>16)break;n=(l|0)>(t|0)?l:t;break}}if((r|0)==1){if(l){n=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;o=Gi[w>>1]|0;break}if(a){n=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;o=Gi[c>>1]|0;break}else{n=Gi[s+2>>1]|0;o=Gi[s>>1]|0;break}}t=Gi[w>>1]|0;o=t<<16>>16;if(b<<24>>24!=-2&(k<<24>>24==-2&(n|0)==-2)){n=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;break}r=Gi[c>>1]|0;l=r<<16>>16;a=Gi[s>>1]|0;n=a<<16>>16;do{if(t<<16>>16>r<<16>>16){if(a<<16>>16<=r<<16>>16){o=l;break}o=(n|0)>(o|0)?o:n}else{if(r<<16>>16<=a<<16>>16){o=l;break}o=(n|0)>(o|0)?n:o}}while(0);z=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;t=z<<16>>16;a=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;n=a<<16>>16;r=Gi[s+2>>1]|0;l=r<<16>>16;if(z<<16>>16>a<<16>>16){if(r<<16>>16<=a<<16>>16)break;n=(l|0)>(t|0)?t:l;break}else{if(a<<16>>16<=r<<16>>16)break;n=(l|0)>(t|0)?l:t;break}}}while(0);r=Xi[Q>>2]|0;t=Xi[le>>2]|0;l=t+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){a=l>>>23;r=(qi[98538+a>>0]|0)+r|0;Xi[Q>>2]=r;a=Wi[99562+a>>0]|0}else{a=l>>>0>65535;x=a?l>>>16:l;a=a?16:0;z=(x&65280|0)==0;a=(qi[145894+(z?x:x>>>8)>>0]|0)+(z?a:a|8)|0;r=31-a+r|0;z=t+(r>>>3)|0;z=(ZT(qi[z>>0]|qi[z+1>>0]<<8|qi[z+2>>0]<<16|qi[z+3>>0]<<24|0)|0)<<(r&7)>>>a;r=32-a+r|0;Xi[Q>>2]=r;a=z&1;a=(z>>>1^0-a)+a|0}l=t+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){z=l>>>23;Xi[Q>>2]=(qi[98538+z>>0]|0)+r;r=Wi[99562+z>>0]|0}else{x=l>>>0>65535;U=x?l>>>16:l;x=x?16:0;z=(U&65280|0)==0;x=(qi[145894+(z?U:U>>>8)>>0]|0)+(z?x:x|8)|0;r=31-x+r|0;z=t+(r>>>3)|0;z=(ZT(qi[z>>0]|qi[z+1>>0]<<8|qi[z+2>>0]<<16|qi[z+3>>0]<<24|0)|0)<<(r&7)>>>x;Xi[Q>>2]=32-x+r;r=z&1;r=(z>>>1^0-r)+r|0}r=r+n<<16|a+o&65535}Xi[i+43776+(L*160|0)+(f<<2)>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+4>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+8>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+12>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+32>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+36>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+40>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+44>>2]=r;P=P+1|0}while((P|0)!=2);L=L+1|0;if(L>>>0>=(Xi[I>>2]|0)>>>0){n=B;break i}}}if(!r){t=i+21800|0;o=0;r:do{l=o<<1;a=i+23372+(o<<2)|0;n=0;do{f:do{if(!(H&4096<<n+l))r=255;else{f=Xi[a>>2]<<Xi[t>>2];switch(f|0){case 1:{r=0;break f}case 2:{z=Xi[Q>>2]|0;r=qi[(Xi[le>>2]|0)+(z>>>3)>>0]<<(z&7)>>>7&1;Xi[Q>>2]=z+1;r=r^1;break f}default:{z=Xi[Q>>2]|0;r=(Xi[le>>2]|0)+(z>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(z&7)>>>23;Xi[Q>>2]=(qi[98538+r>>0]|0)+z;r=qi[99050+r>>0]|0;if(r>>>0<f>>>0)break f;else{G=361;break r}}}}}while(0);z=n<<1;x=r*257&65535;Gi[z+12+(i+44096+(o*40|0))>>1]=x;Gi[z+20+(i+44096+(o*40|0))>>1]=x;Gi[z+28+(i+44096+(o*40|0))>>1]=x;Gi[z+36+(i+44096+(o*40|0))>>1]=x;n=n+1|0}while((n|0)<2);o=o+1|0;r=Xi[I>>2]|0}while(o>>>0<r>>>0);if((G|0)==361){e=Xi[e+4>>2]|0;Xi[_>>2]=r;nA(e,16,111985,_);r=-1;break e}if(r){E=e+24620|0;S=i+21716|0;_=i+21696|0;m=e+26644|0;p=e+26652|0;L=0;do{F=L<<1;y=i+44096+(L*40|0)+11|0;O=i+43776+(L*160|0)+44|0;A=i+43776+(L*160|0)+46|0;g=i+43776+(L*160|0)+40|0;M=12288<<F;R=i+43776+(L*160|0)+42|0;T=i+44096+(L*40|0)+8|0;N=i+43776+(L*160|0)+20|0;D=i+44096+(L*40|0)+5|0;C=i+43776+(L*160|0)+32|0;P=0;do{if(!(H&4096<<P+F)){f=(P<<1)+12|0;r=0}else{a=P<<2;f=(P<<1)+12|0;k=Wi[i+44096+(L*40|0)+f>>0]|0;b=k<<24>>24;do{if(!P){if((Wi[y>>0]|0)!=k<<24>>24){G=374;break}t=Gi[A>>1]|0;o=Gi[O>>1]|0}else{r=Wi[T>>0]|0;if(r<<24>>24==-2){r=Wi[D>>0]|0;n=N;l=5}else{n=C;l=8}if(r<<24>>24!=k<<24>>24){G=374;break}t=Gi[i+43776+(L*160|0)+(l<<2)+2>>1]|0;o=Gi[n>>1]|0}}while(0);do{if((G|0)==374){G=0;r=Wi[120643+a>>0]|0;o=r&255;v=o+-8|0;h=Wi[i+44096+(L*40|0)+v>>0]|0;d=o+-1|0;w=Wi[i+44096+(L*40|0)+d>>0]|0;u=i+43776+(L*160|0)+(d<<2)|0;c=i+43776+(L*160|0)+(v<<2)|0;t=o+-6|0;a=Wi[i+44096+(L*40|0)+t>>0]|0;l=a<<24>>24;a=a<<24>>24==-2;do{if((o&7|0)==4&((r&255)>19&(a&(Xi[Y>>2]|0)!=0))){if((Wi[y>>0]|0)==-2){G=383;break}s=Xi[(Xi[E>>2]|0)+44>>2]|0;Xi[g>>2]=0;n=(Xi[S>>2]&128|0)==0;if(!(Xi[V>>2]|0)){if(n){G=383;break}z=Xi[j>>2]|0;l=z+(Xi[_>>2]|0)|0;r=(Xi[re>>2]<<1&2)+(o>>>5)|0;if(!(Xi[s+((Zi(r>>>2,z)|0)+l<<2)>>2]&M)){n=-1;s=g;break}s=(Xi[(Xi[m>>2]|0)+(l<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r)|0)|0;n=Xi[E>>2]|0;z=Xi[n+32+(L<<2)>>2]|0;Gi[g>>1]=Gi[z+(s<<2)>>1]|0;Gi[R>>1]=Gi[z+(s<<2)+2>>1]<<1;n=Wi[(Xi[n+64+(L<<2)>>2]|0)+((r&14)+(l<<2|1))>>0]>>1;s=g;break}else{if(!n){G=383;break}l=Xi[i+21696+(((r&255)>35&1)<<2)>>2]|0;r=o>>>2;if(!(Xi[s+(l<<2)>>2]&M)){n=-1;s=g;break}s=(Xi[(Xi[m>>2]|0)+(l<<2)>>2]|0)+3+(Zi(Xi[p>>2]|0,r&3)|0)|0;n=Xi[E>>2]|0;z=Xi[n+32+(L<<2)>>2]|0;Gi[g>>1]=Gi[z+(s<<2)>>1]|0;Gi[R>>1]=(Gi[z+(s<<2)+2>>1]|0)/2|0;n=Wi[(Xi[n+64+(L<<2)>>2]|0)+(r&2|l<<2|1)>>0]<<1;s=g;break}}else G=383}while(0);do{if((G|0)==383){G=0;if(a){s=o+-9|0;n=Wi[i+44096+(L*40|0)+s>>0]|0;s=i+43776+(L*160|0)+(s<<2)|0;break}else{n=l;s=i+43776+(L*160|0)+(t<<2)|0;break}}}while(0);a=h<<24>>24==k<<24>>24;l=w<<24>>24==k<<24>>24;r=(l&1)+(a&1)+((n|0)==(b|0)&1)|0;if((r|0)>1){z=Gi[u>>1]|0;t=z<<16>>16;r=Gi[c>>1]|0;l=r<<16>>16;a=Gi[s>>1]|0;n=a<<16>>16;do{if(z<<16>>16>r<<16>>16){if(a<<16>>16<=r<<16>>16){o=l;break}o=(n|0)>(t|0)?t:n}else{if(r<<16>>16<=a<<16>>16){o=l;break}o=(n|0)>(t|0)?n:t}}while(0);z=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;t=z<<16>>16;a=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;n=a<<16>>16;r=Gi[s+2>>1]|0;l=r<<16>>16;if(z<<16>>16>a<<16>>16){if(r<<16>>16<=a<<16>>16){t=n;break}t=(l|0)>(t|0)?t:l;break}else{if(a<<16>>16<=r<<16>>16){t=n;break}t=(l|0)>(t|0)?l:t;break}}if((r|0)==1){if(l){t=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;o=Gi[u>>1]|0;break}if(a){t=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;o=Gi[c>>1]|0;break}else{t=Gi[s+2>>1]|0;o=Gi[s>>1]|0;break}}t=Gi[u>>1]|0;o=t<<16>>16;if(w<<24>>24!=-2&(h<<24>>24==-2&(n|0)==-2)){t=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;break}r=Gi[c>>1]|0;l=r<<16>>16;a=Gi[s>>1]|0;n=a<<16>>16;do{if(t<<16>>16>r<<16>>16){if(a<<16>>16<=r<<16>>16){o=l;break}o=(n|0)>(o|0)?o:n}else{if(r<<16>>16<=a<<16>>16){o=l;break}o=(n|0)>(o|0)?n:o}}while(0);z=Gi[i+43776+(L*160|0)+(d<<2)+2>>1]|0;t=z<<16>>16;a=Gi[i+43776+(L*160|0)+(v<<2)+2>>1]|0;n=a<<16>>16;r=Gi[s+2>>1]|0;l=r<<16>>16;if(z<<16>>16>a<<16>>16){if(r<<16>>16<=a<<16>>16){t=n;break}t=(l|0)>(t|0)?t:l;break}else{if(a<<16>>16<=r<<16>>16){t=n;break}t=(l|0)>(t|0)?l:t;break}}}while(0);r=Xi[Q>>2]|0;n=Xi[le>>2]|0;l=n+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){a=l>>>23;r=(qi[98538+a>>0]|0)+r|0;Xi[Q>>2]=r;a=Wi[99562+a>>0]|0}else{a=l>>>0>65535;x=a?l>>>16:l;a=a?16:0;z=(x&65280|0)==0;a=(qi[145894+(z?x:x>>>8)>>0]|0)+(z?a:a|8)|0;r=31-a+r|0;z=n+(r>>>3)|0;z=(ZT(qi[z>>0]|qi[z+1>>0]<<8|qi[z+2>>0]<<16|qi[z+3>>0]<<24|0)|0)<<(r&7)>>>a;r=32-a+r|0;Xi[Q>>2]=r;a=z&1;a=(z>>>1^0-a)+a|0}l=n+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){z=l>>>23;Xi[Q>>2]=(qi[98538+z>>0]|0)+r;r=Wi[99562+z>>0]|0}else{x=l>>>0>65535;U=x?l>>>16:l;x=x?16:0;z=(U&65280|0)==0;x=(qi[145894+(z?U:U>>>8)>>0]|0)+(z?x:x|8)|0;r=31-x+r|0;z=n+(r>>>3)|0;z=(ZT(qi[z>>0]|qi[z+1>>0]<<8|qi[z+2>>0]<<16|qi[z+3>>0]<<24|0)|0)<<(r&7)>>>x;Xi[Q>>2]=32-x+r;r=z&1;r=(z>>>1^0-r)+r|0}r=r+t<<16|a+o&65535}Xi[i+43776+(L*160|0)+(f<<2)>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+4>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+32>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+36>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+64>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+68>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+96>>2]=r;Xi[i+43776+(L*160|0)+(f<<2)+100>>2]=r;P=P+1|0}while((P|0)!=2);L=L+1|0}while(L>>>0<(Xi[I>>2]|0)>>>0);n=B}else n=B}else n=B}else{if(!(H&1)){j=i+21636|0;G=$N(e,i,Xi[j>>2]|0,0)|0;Xi[j>>2]=G;if((G|0)<0){r=-1;break e}}else{r=Xi[Q>>2]|0;if(B){l=Xi[le>>2]|0;G=qi[l+(r>>>3)>>0]|0;f=r+1|0;Xi[Q>>2]=f;if(!(G&128>>>(r&7))){r=f;s=1}else{Xi[fe>>2]=H|16777216;r=f;s=4}}else{l=Xi[le>>2]|0;s=1}o=(s|0)==4;t=0;do{n=qi[120643+t>>0]|0;f=Wi[n+-1+(i+21640)>>0]|0;G=Wi[n+-8+(i+21640)>>0]|0;f=(f|0)>(G|0)?G:f;f=(f|0)<0?2:f;G=qi[l+(r>>>3)>>0]|0;a=r+1|0;Xi[Q>>2]=a;if(!(G&128>>>(r&7))){G=l+(a>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(a&7)>>>29;r=r+4|0;Xi[Q>>2]=r;f=((G|0)>=(f|0)&1)+G|0}else r=a;if(o){G=f*257&65535;Gi[i+21640+n>>1]=G;Gi[n+8+(i+21640)>>1]=G}else Wi[i+21640+n>>0]=f;t=t+s|0}while((t|0)<16);j=Xi[i+21680>>2]|0;G=Xi[(Xi[e+26648>>2]|0)+(Xi[ne>>2]<<2)>>2]|0;Xi[j+G>>2]=Xi[i+21676>>2];Wi[j+(G+4)>>0]=Wi[i+21671>>0]|0;Wi[j+(G+5)>>0]=Wi[i+21663>>0]|0;Wi[j+(G+6)>>0]=Wi[i+21655>>0]|0;if((QN(e,i)|0)<0){r=-1;break e}}if(!q){Xi[i+21632>>2]=6;n=B;break}G=Xi[Q>>2]|0;r=(Xi[le>>2]|0)+(G>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(G&7)>>>23;Xi[Q>>2]=(qi[98538+r>>0]|0)+G;r=$N(e,i,qi[99050+r>>0]|0,1)|0;if((r|0)<0){r=-1;break e}Xi[i+21632>>2]=r;n=B}}while(0);r=Xi[fe>>2]|0;if(r&120|0){f=Xi[e+26652>>2]|0;l=(Zi(f<<2,Xi[re>>2]|0)|0)+(Xi[ie>>2]<<2)|0;a=Xi[ne>>2]<<2;if(!(r&12288)){G=Xi[e+24688>>2]|0;Gi[G+a>>1]=-1;Gi[G+(a|2)>>1]=-1}else{V=Xi[e+24656>>2]|0;G=i+43824|0;j=Xi[G+4>>2]|0;Y=V+(l<<2)|0;Xi[Y>>2]=Xi[G>>2];Xi[Y+4>>2]=j;Y=i+43832|0;j=Xi[Y+4>>2]|0;G=V+((l|2)<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=i+43856|0;j=Xi[G+4>>2]|0;Y=l+f|0;z=V+(Y<<2)|0;Xi[z>>2]=Xi[G>>2];Xi[z+4>>2]=j;z=i+43864|0;j=Xi[z+4>>2]|0;Y=V+(Y+2<<2)|0;Xi[Y>>2]=Xi[z>>2];Xi[Y+4>>2]=j;Y=i+43888|0;j=Xi[Y+4>>2]|0;z=l+(f<<1)|0;G=V+(z<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=i+43896|0;j=Xi[G+4>>2]|0;z=V+(z+2<<2)|0;Xi[z>>2]=Xi[G>>2];Xi[z+4>>2]=j;z=i+43920|0;j=Xi[z+4>>2]|0;G=l+(f*3|0)|0;Y=V+(G<<2)|0;Xi[Y>>2]=Xi[z>>2];Xi[Y+4>>2]=j;Y=i+43928|0;j=Xi[Y+4>>2]|0;G=V+(G+2<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=Xi[e+24688>>2]|0;Wi[G+a>>0]=Wi[i+44108>>0]|0;Wi[G+(a|1)>>0]=Wi[i+44110>>0]|0;Wi[G+(a|2)>>0]=Wi[i+44124>>0]|0;Wi[G+(a|3)>>0]=Wi[i+44126>>0]|0}if(r&49152|0){V=Xi[e+24660>>2]|0;G=i+43984|0;j=Xi[G+4>>2]|0;Y=V+(l<<2)|0;Xi[Y>>2]=Xi[G>>2];Xi[Y+4>>2]=j;Y=i+43992|0;j=Xi[Y+4>>2]|0;G=V+((l|2)<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=i+44016|0;j=Xi[G+4>>2]|0;Y=l+f|0;z=V+(Y<<2)|0;Xi[z>>2]=Xi[G>>2];Xi[z+4>>2]=j;z=i+44024|0;j=Xi[z+4>>2]|0;Y=V+(Y+2<<2)|0;Xi[Y>>2]=Xi[z>>2];Xi[Y+4>>2]=j;Y=i+44048|0;j=Xi[Y+4>>2]|0;z=l+(f<<1)|0;G=V+(z<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=i+44056|0;j=Xi[G+4>>2]|0;z=V+(z+2<<2)|0;Xi[z>>2]=Xi[G>>2];Xi[z+4>>2]=j;z=i+44080|0;j=Xi[z+4>>2]|0;G=l+(f*3|0)|0;Y=V+(G<<2)|0;Xi[Y>>2]=Xi[z>>2];Xi[Y+4>>2]=j;Y=i+44088|0;j=Xi[Y+4>>2]|0;G=V+(G+2<<2)|0;Xi[G>>2]=Xi[Y>>2];Xi[G+4>>2]=j;G=Xi[e+24692>>2]|0;Wi[G+a>>0]=Wi[i+44148>>0]|0;Wi[G+(a|1)>>0]=Wi[i+44150>>0]|0;Wi[G+(a|2)>>0]=Wi[i+44164>>0]|0;Wi[G+(a|3)>>0]=Wi[i+44166>>0]|0}}r=Xi[fe>>2]|0;do{if(!(r&2)){r=Xi[Q>>2]|0;f=(Xi[le>>2]|0)+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);do{if(f>>>0<=134217727){G=f>>>0>65535;W=G?f>>>16:f;G=G?16:0;l=(W&65280|0)==0;G=(qi[145894+(l?W:W>>>8)>>0]|0)+(l?G:G|8)<<1;l=G+-31|0;Xi[Q>>2]=r+63-G;if((l|0)<7){nA(0,16,118304,X);f=-1094995529;break}else{f=(f>>>l)+-1|0;break}}else{f=f>>>23;Xi[Q>>2]=(qi[98538+f>>0]|0)+r;f=qi[99050+f>>0]|0}}while(0);if(q){if(f>>>0>47){r=Xi[e+4>>2]|0;i=Xi[ie>>2]|0;e=Xi[re>>2]|0;Xi[J>>2]=f;Xi[J+4>>2]=i;Xi[J+8>>2]=e;nA(r,16,112002,J);r=-1;break e}r=Xi[fe>>2]|0;if(!(r&1)){E=qi[112079+f>>0]|0;break}else{E=qi[112031+f>>0]|0;break}}else{if(f>>>0>15){r=Xi[e+4>>2]|0;i=Xi[ie>>2]|0;e=Xi[re>>2]|0;Xi[Z>>2]=f;Xi[Z+4>>2]=i;Xi[Z+8>>2]=e;nA(r,16,112002,Z);r=-1;break e}r=Xi[fe>>2]|0;if(!(r&1)){E=qi[112143+f>>0]|0;break}else{E=qi[112127+f>>0]|0;break}}}else if(K>>>0>15&(q^1)){nA(Xi[e+4>>2]|0,16,112159,W);r=-1094995529;break e}else E=K}while(0);c=(E&15|0)==0;if((r&7|0)==0&(((n|0)==0|c)^1)){J=Xi[Q>>2]|0;Z=qi[(Xi[le>>2]|0)+(J>>>3)>>0]<<(J&7);Xi[Q>>2]=J+1;r=Z<<17&16777216|r;Xi[fe>>2]=r}k=e+205824|0;Gi[(Xi[k>>2]|0)+(te<<1)>>1]=E;Xi[i+21824>>2]=E&65535;Xi[(Xi[e+24668>>2]|0)+(te<<2)>>2]=r;s=Xi[fe>>2]|0;i:do{if(E|s&2){t=(Xi[e+27844>>2]|0)*6|0;o=t+3|0;f=(s&128|0)==0;r=i+824|0;n=Xi[r>>2]|0;d=(n|0)!=0;v=f?d?e+205844|0:e+206132|0:d?e+205988|0:e+206276|0;d=f?d?e+205924|0:e+206212|0:d?e+206068|0:e+206356|0;f=Xi[Q>>2]|0;l=Xi[le>>2]|0;a=l+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);if(a>>>0>134217727){l=a>>>23;Xi[Q>>2]=(qi[98538+l>>0]|0)+f;l=Wi[99562+l>>0]|0}else{q=a>>>0>65535;Z=q?a>>>16:a;q=q?16:0;J=(Z&65280|0)==0;q=(qi[145894+(J?Z:Z>>>8)>>0]|0)+(J?q:q|8)|0;J=31-q+f|0;Z=l+(J>>>3)|0;Z=(ZT(qi[Z>>0]|qi[Z+1>>0]<<8|qi[Z+2>>0]<<16|qi[Z+3>>0]<<24|0)|0)<<(J&7)>>>q;Xi[Q>>2]=32-q+J;l=Z&1;l=(Z>>>1^0-l)+l|0}f=n+l|0;Xi[r>>2]=f;if(f>>>0>o>>>0){f=((f|0)<0?t+4|0:-4-t|0)+f|0;Xi[r>>2]=f;if(f>>>0>o>>>0){r=Xi[e+4>>2]|0;i=Xi[ie>>2]|0;e=Xi[re>>2]|0;Xi[$>>2]=l;Xi[$+4>>2]=i;Xi[$+8>>2]=e;nA(r,16,112172,$);r=-1;break e}else h=f}else h=f;w=i+828|0;Xi[w>>2]=qi[e+32512+h>>0];b=i+832|0;Xi[b>>2]=qi[e+32600+h>>0];do{if(!(s&2)){u=s&7|0?0:3;t=(s&16777216|0)==0;o=e+205780+(u<<2)|0;s=e+205756+(u<<2)|0;u=0;f=0;do{r:do{if(!(1<<u&E)){re=qi[120643+(u<<2)>>0]|0;Wi[re+9+(i+43648)>>0]=0;Wi[re+8+(i+43648)>>0]=0;Wi[re+1+(i+43648)>>0]=0;Wi[i+43648+re>>0]=0}else{if(t){a=u<<2;n=0;while(1){l=n+a|0;if((gD(e,i,le,i+44384+(l<<4<<ae<<1)|0,l,v,(Xi[s>>2]|0)+(h<<6)|0,16)|0)<0){r=-1;break e}f=qi[(qi[120643+l>>0]|0)+(i+43648)>>0]<<u|f;n=n+1|0;if((n|0)>=4)break r}}l=i+44384+(u<<6<<ae<<1)|0;a=u<<2;n=0;do{if((gD(e,i,le,l,n+a|0,d+(n<<4)|0,(Xi[o>>2]|0)+(h<<8)|0,16)|0)<0){r=-1;break e}n=n+1|0}while((n|0)<4);re=qi[120643+a>>0]|0;ie=i+43648+re|0;re=(qi[re+8+(i+43648)>>0]|0)+(qi[re+1+(i+43648)>>0]|0)+(qi[re+9+(i+43648)>>0]|0)+(qi[ie>>0]|0)&255;Wi[ie>>0]=re;f=(re<<24>>24!=0&1)<<u|f}}while(0);u=u+1|0}while((u|0)<4);if((f|0)<0){r=-1;break e}}else{f=i+47456|0;l=f;a=l+64|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(a|0));if((gD(e,i,le,f,48,v,0,16)|0)<0){r=-1;break e}if(c){Xi[i+43660>>2]=0;Xi[i+43668>>2]=0;Xi[i+43676>>2]=0;Xi[i+43684>>2]=0;f=0;break}f=v+1|0;l=e+205756|0;t=0;while(1){a=t<<2;n=0;do{re=n+a|0;n=n+1|0;if((gD(e,i,le,i+44384+(re<<4<<ae<<1)|0,re,f,(Xi[l>>2]|0)+(h<<6)|0,15)|0)<0){r=-1;break e}}while((n|0)<4);t=t+1|0;if((t|0)>=4){f=15;break}}}}while(0);k=(Xi[k>>2]|0)+(te<<1)|0;Gi[k>>1]=Ji[k>>1]|f<<12;k=Xi[ee>>2]|0;if((k|0)!=3){if(E&48|0){f=k<<2;if((gD(e,i,le,i+44384+(256<<ae<<1)|0,49,(k|0)==2?112315:112323,0,f)|0)<0){r=-1;break e}if((gD(e,i,le,i+44384+(512<<ae<<1)|0,50,(Xi[ee>>2]|0)==2?112315:112323,0,f)|0)<0){r=-1;break e}}if(!(E&32)){Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;break}w=(k|0)>0;t=v+1|0;o=16<<ae;h=0;while(1){u=h;h=h+1|0;s=(Xi[e+205756+((Xi[fe>>2]&7|0?0:3)+h<<2)>>2]|0)+(Xi[i+828+(u<<2)>>2]<<6)|0;u=(u<<4)+16|0;if(w){f=0;l=i+44384+(u<<4<<ae<<1)|0;do{a=(f<<3)+u|0;n=0;do{if((gD(e,i,le,l,a+n|0,t,s,15)|0)<0){r=-1;break e}l=l+(o<<1)|0;n=n+1|0}while((n|0)<4);f=f+1|0}while((f|0)<(k|0))}if((h|0)>=2)break i}}f=Xi[fe>>2]|0;h=Xi[w>>2]|0;do{if(!(f&2)){s=f&7|0?1:4;t=(f&16777216|0)==0;o=e+205780+(s<<2)|0;s=e+205756+(s<<2)|0;u=0;f=0;do{r:do{if(!(1<<u&E)){re=qi[120643+((u<<2)+16)>>0]|0;Wi[re+9+(i+43648)>>0]=0;Wi[re+8+(i+43648)>>0]=0;Wi[re+1+(i+43648)>>0]=0;Wi[i+43648+re>>0]=0}else{if(t){a=(u<<2)+16|0;n=0;while(1){l=a+n|0;if((gD(e,i,le,i+44384+(l<<4<<ae<<1)|0,l,v,(Xi[s>>2]|0)+(h<<6)|0,16)|0)<0){r=-1;break e}f=qi[(qi[120643+l>>0]|0)+(i+43648)>>0]<<u|f;n=n+1|0;if((n|0)>=4)break r}}l=i+44384+((u<<6)+256<<ae<<1)|0;a=(u<<2)+16|0;n=0;do{if((gD(e,i,le,l,n+a|0,d+(n<<4)|0,(Xi[o>>2]|0)+(h<<8)|0,16)|0)<0){r=-1;break e}n=n+1|0}while((n|0)<4);re=qi[120643+a>>0]|0;ie=i+43648+re|0;re=(qi[re+8+(i+43648)>>0]|0)+(qi[re+1+(i+43648)>>0]|0)+(qi[re+9+(i+43648)>>0]|0)+(qi[ie>>0]|0)&255;Wi[ie>>0]=re;f=(re<<24>>24!=0&1)<<u|f}}while(0);u=u+1|0}while((u|0)<4);if((f|0)<0){r=-1;break e}}else{f=i+47520|0;l=f;a=l+64|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(a|0));if((gD(e,i,le,f,49,v,0,16)|0)<0){r=-1;break e}if(c){Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;break}f=v+1|0;l=e+205760|0;t=0;do{a=(t<<2)+16|0;n=0;do{re=a+n|0;n=n+1|0;if((gD(e,i,le,i+44384+(re<<4<<ae<<1)|0,re,f,(Xi[l>>2]|0)+(h<<6)|0,15)|0)<0){r=-1;break e}}while((n|0)<4);t=t+1|0}while((t|0)<4)}}while(0);f=Xi[fe>>2]|0;h=Xi[b>>2]|0;if(f&2|0){f=i+47584|0;l=f;a=l+64|0;do{Xi[l>>2]=0;l=l+4|0}while((l|0)<(a|0));if((gD(e,i,le,f,50,v,0,16)|0)<0){r=-1;break e}if(c){Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;break}f=v+1|0;l=e+205764|0;t=0;while(1){a=(t<<2)+32|0;n=0;do{fe=a+n|0;n=n+1|0;if((gD(e,i,le,i+44384+(fe<<4<<ae<<1)|0,fe,f,(Xi[l>>2]|0)+(h<<6)|0,15)|0)<0){r=-1;break e}}while((n|0)<4);t=t+1|0;if((t|0)>=4)break i}}s=f&7|0?2:5;t=(f&16777216|0)==0;o=e+205780+(s<<2)|0;s=e+205756+(s<<2)|0;u=0;f=0;do{r:do{if(!(1<<u&E)){fe=qi[120643+((u<<2)+32)>>0]|0;Wi[fe+9+(i+43648)>>0]=0;Wi[fe+8+(i+43648)>>0]=0;Wi[fe+1+(i+43648)>>0]=0;Wi[i+43648+fe>>0]=0}else{if(t){a=(u<<2)+32|0;n=0;while(1){l=a+n|0;if((gD(e,i,le,i+44384+(l<<4<<ae<<1)|0,l,v,(Xi[s>>2]|0)+(h<<6)|0,16)|0)<0){r=-1;break e}f=qi[(qi[120643+l>>0]|0)+(i+43648)>>0]<<u|f;n=n+1|0;if((n|0)>=4)break r}}l=i+44384+((u<<6)+512<<ae<<1)|0;a=(u<<2)+32|0;n=0;do{if((gD(e,i,le,l,n+a|0,d+(n<<4)|0,(Xi[o>>2]|0)+(h<<8)|0,16)|0)<0){r=-1;break e}n=n+1|0}while((n|0)<4);fe=qi[120643+a>>0]|0;re=i+43648+fe|0;fe=(qi[fe+8+(i+43648)>>0]|0)+(qi[fe+1+(i+43648)>>0]|0)+(qi[fe+9+(i+43648)>>0]|0)+(qi[re>>0]|0)&255;Wi[re>>0]=fe;f=(fe<<24>>24!=0&1)<<u|f}}while(0);u=u+1|0}while((u|0)<4);if((f|0)<0){r=-1;break e}}else{Xi[i+43660>>2]=0;Xi[i+43668>>2]=0;Xi[i+43676>>2]=0;Xi[i+43684>>2]=0;Xi[i+43700>>2]=0;Xi[i+43708>>2]=0;Xi[i+43716>>2]=0;Xi[i+43724>>2]=0;Xi[i+43740>>2]=0;Xi[i+43748>>2]=0;Xi[i+43756>>2]=0;Xi[i+43764>>2]=0;r=i+824|0}}while(0);Wi[(Xi[e+24644>>2]|0)+te>>0]=Xi[r>>2];r=Xi[ne>>2]|0;f=Xi[e+26256>>2]|0;Xi[f+(r*48|0)>>2]=Xi[i+43660>>2];Xi[f+(r*48|0)+4>>2]=Xi[i+43668>>2];Xi[f+(r*48|0)+8>>2]=Xi[i+43676>>2];Xi[f+(r*48|0)+12>>2]=Xi[i+43684>>2];Xi[f+(r*48|0)+16>>2]=Xi[i+43700>>2];Xi[f+(r*48|0)+20>>2]=Xi[i+43708>>2];Xi[f+(r*48|0)+32>>2]=Xi[i+43740>>2];Xi[f+(r*48|0)+36>>2]=Xi[i+43748>>2];if(!(Xi[e+25976>>2]|0)){Xi[f+(r*48|0)+24>>2]=Xi[i+43716>>2];Xi[f+(r*48|0)+28>>2]=Xi[i+43724>>2];Xi[f+(r*48|0)+40>>2]=Xi[i+43756>>2];Xi[f+(r*48|0)+44>>2]=Xi[i+43764>>2];r=0}else r=0}}while(0);Ue=oe;return r|0}function OD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;f=Xi[i+21772>>2]|0;l=i+21728|0;Xi[l>>2]=-1;k=Xi[e+206436>>2]|0;t=f-(k<<Xi[i+21796>>2])|0;u=t+-1|0;s=t+1|0;h=f+-1|0;o=i+21724|0;Xi[o>>2]=111693;c=Xi[e+24668>>2]|0;do{if(Xi[e+205808>>2]|0){a=Xi[c+(h<<2)>>2]&128;n=r&128;if(Xi[i+21768>>2]&1|0){if((a|0)==(n|0)){b=h;w=t;break}r=f-k+-1|0;if(!n){Xi[l>>2]=0;Xi[o>>2]=111725;b=r;h=r;w=t;u=k+u|0;break}else{Xi[o>>2]=111789;b=r;w=t;break}}r=(n|0)!=0;if(r){f=(((Xi[c+(t<<2)>>2]|0)>>>7&1)+-1&k)+t|0;l=(((Xi[c+(u<<2)>>2]|0)>>>7&1)+-1&k)+u|0;s=(((Xi[c+(s<<2)>>2]|0)>>>7&1)+-1&k)+s|0}else{f=t;l=u}if((a|0)!=(n|0))if(r){Xi[o>>2]=111789;b=h;h=k+h|0;w=f;u=l;break}else{Xi[o>>2]=111757;b=h;w=f;u=l;break}else{b=h;w=f;u=l}}else{b=h;w=t}}while(0);Xi[i+21684>>2]=u;Xi[i+21688>>2]=w;Xi[i+21692>>2]=s;Xi[i+21696>>2]=b;Xi[i+21700>>2]=h;l=i+21704|0;Xi[l>>2]=Xi[c+(u<<2)>>2];a=i+21708|0;Xi[a>>2]=Xi[c+(w<<2)>>2];n=i+21712|0;Xi[n>>2]=Xi[c+(s<<2)>>2];t=i+21716|0;Xi[t>>2]=Xi[c+(b<<2)>>2];o=i+21720|0;Xi[o>>2]=Xi[c+(h<<2)>>2];f=Xi[e+205804>>2]|0;r=Xi[i+808>>2]|0;if((Ji[f+(u<<1)>>1]|0|0)!=(r|0)){Xi[l>>2]=0;if((Ji[f+(w<<1)>>1]|0|0)!=(r|0))Xi[a>>2]=0;if((Ji[f+(b<<1)>>1]|0|0)!=(r|0)){Xi[o>>2]=0;Xi[t>>2]=0}}if((Ji[f+(s<<1)>>1]|0|0)!=(r|0))Xi[n>>2]=0;return}function AD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0;$=Ue;Ue=Ue+16|0;Z=$+8|0;J=$;H=Xi[i+21724>>2]|0;x=Xi[i+21684>>2]|0;Y=Xi[i+21688>>2]|0;G=Xi[i+21692>>2]|0;q=Xi[i+21696>>2]|0;Xi[Z>>2]=q;Xi[Z+4>>2]=Xi[i+21700>>2];B=Xi[i+21704>>2]|0;Q=Xi[i+21708>>2]|0;U=Xi[i+21712>>2]|0;f=Xi[i+21716>>2]|0;Xi[J>>2]=f;b=Xi[i+21720>>2]|0;Xi[J+4>>2]=b;e:do{if(!(r&2048)){i:do{if(r&7|0){h=Xi[e+32020>>2]|0?7:-1;n=i+21744|0;Xi[n>>2]=65535;l=i+21736|0;Xi[l>>2]=65535;o=i+21732|0;Xi[o>>2]=65535;s=i+21740|0;Xi[s>>2]=61162;u=(h&Q|0)!=0;if(u){l=65535;t=60138}else{Xi[o>>2]=46079;Xi[l>>2]=13311;Xi[s>>2]=9962;l=46079;t=8938}a=r&128;do{if((a|0)==(f&128|0)){if(!(f&h)){l=l&57183;Xi[o>>2]=l;Xi[n>>2]=24415}}else{if(!a){if(!((f&h|0)==0?1:(Xi[(Xi[e+24668>>2]|0)+((Xi[e+206436>>2]|0)+q<<2)>>2]&h|0)==0))break;l=l&57183;Xi[o>>2]=l;Xi[n>>2]=24415;break}if(!(f&h)){l=l&57343;Xi[o>>2]=l;Xi[n>>2]=24575;a=24415}else a=65375;if(!(b&h)){l=l&65375;Xi[o>>2]=l;Xi[n>>2]=a}}}while(0);if(!(h&B))Xi[o>>2]=l&32767;if(!(h&U))Xi[s>>2]=t;if(r&1|0){if(!(Q&1)){jT(i+21644|0,2-(0-(u&1^1)&3)&255|0,4)|0;a=i+21680|0;n=e+26648|0}else{a=i+21680|0;n=e+26648|0;Xi[i+21644>>2]=Xi[(Xi[a>>2]|0)+(Xi[(Xi[n>>2]|0)+(Y<<2)>>2]|0)>>2]}t=f;l=0;while(1){if(!(t&1)){L=(t&h|0)==0?-1:2;I=l<<4;Wi[I+19+(i+21640)>>0]=L;Wi[(I|11)+(i+21640)>>0]=L}else{C=Xi[a>>2]|0;L=l<<1;P=(Xi[(Xi[n>>2]|0)+(Xi[Z+(l<<2)>>2]<<2)>>2]|0)+6|0;I=l<<4;Wi[(I|11)+(i+21640)>>0]=Wi[C+(P-(qi[H+L>>0]|0))>>0]|0;Wi[I+19+(i+21640)>>0]=Wi[C+(P-(qi[H+(L|1)>>0]|0))>>0]|0}l=l+1|0;if((l|0)==2)break i;t=Xi[J+(l<<2)>>2]|0}}}}while(0);do{if(Q){l=e+26256|0;a=Xi[l>>2]|0;Xi[i+43652>>2]=Xi[a+(Y*48|0)+12>>2];if(!(Xi[e+25976>>2]|0)){Xi[i+43692>>2]=Xi[a+(Y*48|0)+28>>2];Xi[i+43732>>2]=Xi[a+(Y*48|0)+44>>2];break}else{Xi[i+43692>>2]=Xi[a+(Y*48|0)+20>>2];Xi[i+43732>>2]=Xi[a+(Y*48|0)+36>>2];break}}else{Xi[i+43652>>2]=1077952576;Xi[i+43692>>2]=1077952576;Xi[i+43732>>2]=1077952576;l=e+26256|0}}while(0);w=e+26672|0;n=f;a=0;while(1){i:do{if(!n){I=a<<4;Wi[I+99+(i+43648)>>0]=64;Wi[I+91+(i+43648)>>0]=64;Wi[I+59+(i+43648)>>0]=64;Wi[I+51+(i+43648)>>0]=64;Wi[I+19+(i+43648)>>0]=64;Wi[(I|11)+(i+43648)>>0]=64}else{n=Xi[Z+(a<<2)>>2]|0;t=Xi[l>>2]|0;o=a<<1;s=H+(o+8)|0;u=a<<4;Wi[(u|11)+(i+43648)>>0]=Wi[(qi[s>>0]|0)+(t+(n*48|0))>>0]|0;h=H+(o+9)|0;Wi[u+19+(i+43648)>>0]=Wi[(qi[h>>0]|0)+(t+(n*48|0))>>0]|0;switch(Xi[w>>2]|0){case 3:{Wi[u+51+(i+43648)>>0]=Wi[(qi[s>>0]|0)+16+(t+(n*48|0))>>0]|0;Wi[u+59+(i+43648)>>0]=Wi[(qi[h>>0]|0)+16+(t+(n*48|0))>>0]|0;Wi[u+91+(i+43648)>>0]=Wi[(qi[s>>0]|0)+32+(t+(n*48|0))>>0]|0;Wi[u+99+(i+43648)>>0]=Wi[(qi[h>>0]|0)+32+(t+(n*48|0))>>0]|0;break i}case 2:{Wi[u+51+(i+43648)>>0]=Wi[(qi[s>>0]|0)+14+(t+(n*48|0))>>0]|0;Wi[u+59+(i+43648)>>0]=Wi[(qi[h>>0]|0)+14+(t+(n*48|0))>>0]|0;Wi[u+91+(i+43648)>>0]=Wi[(qi[s>>0]|0)+30+(t+(n*48|0))>>0]|0;Wi[u+99+(i+43648)>>0]=Wi[(qi[h>>0]|0)+30+(t+(n*48|0))>>0]|0;break i}default:{I=a<<3;Wi[I+51+(i+43648)>>0]=Wi[(qi[H+(o+12)>>0]|0)+(t+(n*48|0))>>0]|0;Wi[I+91+(i+43648)>>0]=Wi[(qi[H+(o+13)>>0]|0)+(t+(n*48|0))>>0]|0;break i}}}}while(0);a=a+1|0;if((a|0)==2)break e;n=Xi[J+(a<<2)>>2]|0}}}while(0);if(!(r&120)){if((r&256|0)!=0?(Xi[i+21812>>2]|0)!=0:0)k=46}else k=46;if((k|0)==46){v=Xi[e+26652>>2]|0;E=i+23380|0;if(Xi[E>>2]|0){S=Q|0?-1:-16843010;_=(r&80|0)==0;m=f|0?-1:-2;p=e+26644|0;F=q<<2|1;y=U|0?-1:-2;O=B|0?-1:-2;A=i+21728|0;g=v<<1;M=v+3|0;R=x<<2;T=(r&2304|0)==0;N=e+205808|0;D=i+21796|0;C=(B&128|0)!=0;P=(Q&128|0)==0;L=(U&128|0)==0;I=(f&128|0)==0;h=(b&128|0)==0;w=v*3|0;k=G<<2|2;c=Y<<2;b=c|2;c=c|3;d=0;do{o=Xi[e+24688+(d<<2)>>2]|0;s=Xi[e+24656+(d<<2)>>2]|0;u=12288<<(d<<1);do{if(u&r|0){if(!(u&Q)){t=i+43776+(d*160|0)+16|0;Xi[t>>2]=0;Xi[t+4>>2]=0;Xi[t+8>>2]=0;Xi[t+12>>2]=0;Xi[i+44096+(d*40|0)+4>>2]=S}else{a=(Xi[(Xi[p>>2]|0)+(Y<<2)>>2]|0)+w|0;l=s+(a<<2)|0;t=Xi[l+4>>2]|0;n=i+43776+(d*160|0)+16|0;Xi[n>>2]=Xi[l>>2];Xi[n+4>>2]=t;a=s+(a<<2)+8|0;n=Xi[a+4>>2]|0;t=i+43776+(d*160|0)+24|0;Xi[t>>2]=Xi[a>>2];Xi[t+4>>2]=n;t=Wi[o+b>>0]|0;Wi[i+44096+(d*40|0)+5>>0]=t;Wi[i+44096+(d*40|0)+4>>0]=t;t=Wi[o+c>>0]|0;Wi[i+44096+(d*40|0)+7>>0]=t;Wi[i+44096+(d*40|0)+6>>0]=t}do{if(_)if(!(f&u)){Xi[i+43776+(d*160|0)+44>>2]=0;Wi[i+44096+(d*40|0)+11>>0]=m;break}else{Xi[i+43776+(d*160|0)+44>>2]=Xi[s+((Xi[(Xi[p>>2]|0)+(q<<2)>>2]|0)+3+(Zi(qi[H>>0]|0,v)|0)<<2)>>2];Wi[i+44096+(d*40|0)+11>>0]=Wi[o+((qi[H>>0]&254)+F)>>0]|0;break}else{t=0;do{l=t<<1;a=t<<4;n=Xi[J+(t<<2)>>2]|0;if(!(n&u)){l=a|11;Xi[i+43776+(d*160|0)+(l<<2)>>2]=0;a=(a|7)+12|0;Xi[i+43776+(d*160|0)+(a<<2)>>2]=0;n=n|0?-1:-2;Wi[i+44096+(d*40|0)+a>>0]=n;Wi[i+44096+(d*40|0)+l>>0]=n}else{ee=Xi[Z+(t<<2)>>2]|0;fe=(Xi[(Xi[p>>2]|0)+(ee<<2)>>2]|0)+3|0;ee=ee<<2|1;re=H+l|0;ie=a|11;Xi[i+43776+(d*160|0)+(ie<<2)>>2]=Xi[s+((Zi(qi[re>>0]|0,v)|0)+fe<<2)>>2];l=H+(l|1)|0;n=(a|7)+12|0;Xi[i+43776+(d*160|0)+(n<<2)>>2]=Xi[s+((Zi(qi[l>>0]|0,v)|0)+fe<<2)>>2];Wi[i+44096+(d*40|0)+ie>>0]=Wi[o+((qi[re>>0]&254)+ee)>>0]|0;Wi[i+44096+(d*40|0)+n>>0]=Wi[o+((qi[l>>0]&254)+ee)>>0]|0}t=t+1|0}while((t|0)!=2)}}while(0);if(!(u&U)){Xi[i+43776+(d*160|0)+32>>2]=0;l=y}else{Xi[i+43776+(d*160|0)+32>>2]=Xi[s+((Xi[(Xi[p>>2]|0)+(G<<2)>>2]|0)+w<<2)>>2];l=Wi[o+k>>0]|0}t=i+44096+(d*40|0)+8|0;Wi[t>>0]=l;n=i+44096+(d*40|0)+6|0;do{if((Wi[n>>0]|l)<<24>>24<0)if(!(u&B)){Xi[i+43776+(d*160|0)+12>>2]=0;Wi[i+44096+(d*40|0)+3>>0]=O;break}else{fe=Xi[A>>2]|0;Xi[i+43776+(d*160|0)+12>>2]=Xi[s+(M+(Xi[(Xi[p>>2]|0)+(x<<2)>>2]|0)+(fe&g)<<2)>>2];Wi[i+44096+(d*40|0)+3>>0]=Wi[o+(R|fe&2|1)>>0]|0;break}}while(0);if(T){Wi[i+44096+(d*40|0)+30>>0]=-2;Wi[i+44096+(d*40|0)+14>>0]=-2;Xi[i+43776+(d*160|0)+56>>2]=0;Xi[i+43776+(d*160|0)+120>>2]=0;if(!(Xi[N>>2]|0))break}else if(!(Xi[N>>2]|0))break;if(!(Xi[D>>2]|0)){if(C?(K=i+44096+(d*40|0)+3|0,W=Wi[K>>0]|0,W<<24>>24>-1):0){Wi[K>>0]=W<<24>>24>>>1;fe=i+43776+(d*160|0)+14|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+7|0;Wi[fe>>0]=qi[fe>>0]<<1}do{if(!P){l=i+44096+(d*40|0)+4|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+18|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+9|0;Wi[fe>>0]=qi[fe>>0]<<1}l=i+44096+(d*40|0)+5|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+22|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+11|0;Wi[fe>>0]=qi[fe>>0]<<1}l=Wi[n>>0]|0;if(l<<24>>24>-1){Wi[n>>0]=l<<24>>24>>>1;fe=i+43776+(d*160|0)+26|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+13|0;Wi[fe>>0]=qi[fe>>0]<<1}l=i+44096+(d*40|0)+7|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+30|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+15|0;Wi[fe>>0]=qi[fe>>0]<<1}}while(0);if(!L?(X=Wi[t>>0]|0,X<<24>>24>-1):0){Wi[t>>0]=X<<24>>24>>>1;fe=i+43776+(d*160|0)+34|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+17|0;Wi[fe>>0]=qi[fe>>0]<<1}do{if(!I){l=i+44096+(d*40|0)+11|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+46|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+23|0;Wi[fe>>0]=qi[fe>>0]<<1}l=i+44096+(d*40|0)+19|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+78|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+39|0;Wi[fe>>0]=qi[fe>>0]<<1}}while(0);if(h)break;l=i+44096+(d*40|0)+27|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+110|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+55|0;Wi[fe>>0]=qi[fe>>0]<<1}l=i+44096+(d*40|0)+35|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24>>>1;fe=i+43776+(d*160|0)+142|0;Gi[fe>>1]=Gi[fe>>1]<<1;fe=i+44176+(d*80|0)+71|0;Wi[fe>>0]=qi[fe>>0]<<1;break}else{if(!C?(z=i+44096+(d*40|0)+3|0,V=Wi[z>>0]|0,V<<24>>24>-1):0){Wi[z>>0]=V<<24>>24<<1;fe=i+43776+(d*160|0)+14|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+7|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}do{if(P){l=i+44096+(d*40|0)+4|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+18|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+9|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}l=i+44096+(d*40|0)+5|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+22|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+11|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}l=Wi[n>>0]|0;if(l<<24>>24>-1){Wi[n>>0]=l<<24>>24<<1;fe=i+43776+(d*160|0)+26|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+13|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}l=i+44096+(d*40|0)+7|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+30|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+15|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}}while(0);if(L?(j=Wi[t>>0]|0,j<<24>>24>-1):0){Wi[t>>0]=j<<24>>24<<1;fe=i+43776+(d*160|0)+34|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+17|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}do{if(I){l=i+44096+(d*40|0)+11|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+46|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+23|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}l=i+44096+(d*40|0)+19|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+78|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+39|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}}while(0);if(!h)break;l=i+44096+(d*40|0)+27|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+110|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+55|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1}l=i+44096+(d*40|0)+35|0;a=Wi[l>>0]|0;if(a<<24>>24<=-1)break;Wi[l>>0]=a<<24>>24<<1;fe=i+43776+(d*160|0)+142|0;Gi[fe>>1]=(Gi[fe>>1]|0)/2|0;fe=i+44176+(d*80|0)+71|0;Wi[fe>>0]=(qi[fe>>0]|0)>>>1;break}}}while(0);d=d+1|0}while(d>>>0<(Xi[E>>2]|0)>>>0);f=Xi[J>>2]|0}}Xi[i+21808>>2]=(f>>>24&1)+(Q>>>24&1);Ue=$;return}function gD(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;p=Ue;Ue=Ue+112|0;m=p+32|0;d=p+24|0;c=p+16|0;b=p;_=p+40|0;v=(t|0)<9;do{if(v)if((t|0)==4){w=Xi[38945]|0;S=r+8|0;E=Xi[S>>2]|0;k=(Xi[r>>2]|0)+(E>>>3)|0;k=(ZT(qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24|0)|0)<<(E&7)>>>24;o=Gi[w+(k<<2)>>1]|0;Xi[S>>2]=(Gi[w+(k<<2)+2>>1]|0)+E;break}else{w=Xi[38949]|0;S=r+8|0;E=Xi[S>>2]|0;k=(Xi[r>>2]|0)+(E>>>3)|0;k=(ZT(qi[k>>0]|qi[k+1>>0]<<8|qi[k+2>>0]<<16|qi[k+3>>0]<<24|0)|0)<<(E&7)>>>19;o=Gi[w+(k<<2)>>1]|0;Xi[S>>2]=(Gi[w+(k<<2)+2>>1]|0)+E;break}else if((l|0)>47){w=qi[120643+((l<<4)+-768)>>0]|0;w=(qi[w+-8+(i+43648)>>0]|0)+(qi[w+-1+(i+43648)>>0]|0)|0;w=Xi[155808+(Xi[88312+((((w|0)<64?(w+1|0)>>>1:w)&31)<<2)>>2]<<4)+4>>2]|0;k=r+8|0;s=Xi[k>>2]|0;h=Xi[r>>2]|0;S=h+(s>>>3)|0;S=(ZT(qi[S>>0]|qi[S+1>>0]<<8|qi[S+2>>0]<<16|qi[S+3>>0]<<24|0)|0)<<(s&7)>>>24;o=Gi[w+(S<<2)>>1]|0;S=Gi[w+(S<<2)+2>>1]|0;u=S<<16>>16;if(S<<16>>16<0){s=s+8|0;S=h+(s>>>3)|0;u=((ZT(qi[S>>0]|qi[S+1>>0]<<8|qi[S+2>>0]<<16|qi[S+3>>0]<<24|0)|0)<<(s&7)>>>(u+32|0))+o|0;o=Gi[w+(u<<2)>>1]|0;u=Gi[w+(u<<2)+2>>1]|0}Xi[k>>2]=u+s;break}else{w=qi[120643+l>>0]|0;w=(qi[w+-8+(i+43648)>>0]|0)+(qi[w+-1+(i+43648)>>0]|0)|0;w=Xi[155808+(Xi[88312+((((w|0)<64?(w+1|0)>>>1:w)&31)<<2)>>2]<<4)+4>>2]|0;k=r+8|0;s=Xi[k>>2]|0;h=Xi[r>>2]|0;S=h+(s>>>3)|0;S=(ZT(qi[S>>0]|qi[S+1>>0]<<8|qi[S+2>>0]<<16|qi[S+3>>0]<<24|0)|0)<<(s&7)>>>24;o=Gi[w+(S<<2)>>1]|0;S=Gi[w+(S<<2)+2>>1]|0;u=S<<16>>16;if(S<<16>>16<0){s=s+8|0;S=h+(s>>>3)|0;u=((ZT(qi[S>>0]|qi[S+1>>0]<<8|qi[S+2>>0]<<16|qi[S+3>>0]<<24|0)|0)<<(s&7)>>>(u+32|0))+o|0;o=Gi[w+(u<<2)>>1]|0;u=Gi[w+(u<<2)+2>>1]|0}Xi[k>>2]=u+s;break}}while(0);S=o>>2;Wi[(qi[120643+l>>0]|0)+(i+43648)>>0]=S;e:do{if(S){if(S>>>0>t>>>0){o=Xi[e+4>>2]|0;m=Xi[i+21768>>2]|0;Xi[b>>2]=Xi[i+21764>>2];Xi[b+4>>2]=m;Xi[b+8>>2]=S;nA(o,16,112207,b);o=-1;break}k=o&3;E=r+8|0;o=Xi[E>>2]|0;r=Xi[r>>2]|0;w=r+(o>>>3)|0;w=(ZT(qi[w>>0]|qi[w+1>>0]<<8|qi[w+2>>0]<<16|qi[w+3>>0]<<24|0)|0)<<(o&7);b=w>>>29;o=o+k|0;Xi[E>>2]=o;Xi[_>>2]=1-(w>>>30&2);Xi[_+4>>2]=1-(b&2);Xi[_+8>>2]=1-(b<<1&2);i:do{if((k|0)<(S|0)){w=(k|0)!=3;h=(S|0)>10&w;F=h&1;s=r+(o>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>24;b=Wi[232717+(F<<9)+(s<<1)>>0]|0;u=b<<24>>24;o=(Wi[232717+(F<<9)+(s<<1)+1>>0]|0)+o|0;Xi[E>>2]=o;if(b<<24>>24>99){s=u+-100|0;if((s|0)==8){b=r+(o>>>3)|0;b=(ZT(qi[b>>0]|qi[b+1>>0]<<8|qi[b+2>>0]<<16|qi[b+3>>0]<<24|0)|0)<<(o&7);s=b>>>0>65535;b=s?b>>>16:b;s=s?16:0;F=(b&65280|0)==0;s=32-(qi[145894+(F?b:b>>>8)>>0]|0)-(F?s:s|8)|0;o=s+o|0;Xi[E>>2]=o;s=u+-101+s|0}do{if((s|0)<14){if(h){F=qi[r+(o>>>3)>>0]<<(o&7)>>>7&1;o=o+1|0;Xi[E>>2]=o;s=F|s<<1}}else{if((s|0)==14){s=r+(o>>>3)|0;if(h){s=qi[s>>0]<<(o&7)>>>7&1;o=o+1|0;Xi[E>>2]=o;s=s|28;break}else{s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>28;o=o+4|0;Xi[E>>2]=o;s=s+14|0;break}}do{if((s|0)>15)if((s|0)>28){nA(Xi[e+4>>2]|0,16,112252,c);o=-1;break e}else{h=s+-3|0;u=h;h=(1<<h)+-4066|0;break}else{u=12;h=30}}while(0);F=r+(o>>>3)|0;s=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(o&7)>>>(35-s|0);o=u+o|0;Xi[E>>2]=o;s=s+h|0}}while(0);F=w?s+2|0:s;u=F&1;Xi[_+(k<<2)>>2]=(F+2>>1^0-u)+u;u=2}else{u=(w?u>>31|1:0)+u|0;Xi[_+(k<<2)>>2]=u;u=(u+3|0)>>>0>6?2:1}s=k+1|0;if((s|0)<(S|0)){k=u;while(1){c=r+(o>>>3)|0;c=(ZT(qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24|0)|0)<<(o&7)>>>24;F=Wi[232717+(k<<9)+(c<<1)>>0]|0;h=F<<24>>24;o=(Wi[232717+(k<<9)+(c<<1)+1>>0]|0)+o|0;Xi[E>>2]=o;if(F<<24>>24>99){u=h+-100|0;if((u|0)==8){c=r+(o>>>3)|0;c=(ZT(qi[c>>0]|qi[c+1>>0]<<8|qi[c+2>>0]<<16|qi[c+3>>0]<<24|0)|0)<<(o&7);u=c>>>0>65535;c=u?c>>>16:c;u=u?16:0;F=(c&65280|0)==0;u=32-(qi[145894+(F?c:c>>>8)>>0]|0)-(F?u:u|8)|0;o=u+o|0;Xi[E>>2]=o;u=h+-101+u|0}if((u|0)<15){F=r+(o>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(o&7)>>>(32-k|0);o=o+k|0;Xi[E>>2]=o;u=F+(u<<k)|0}else{h=15<<k;if((u|0)>15){if((u|0)>28)break;F=u+-3|0;w=F;h=h+-4096+(1<<F)|0}else w=12;F=r+(o>>>3)|0;u=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(o&7)>>>(35-u|0);o=w+o|0;Xi[E>>2]=o;u=u+h|0}h=u&1;h=(u+2>>1^0-h)+h|0}Xi[_+(s<<2)>>2]=h;u=Xi[88380+(k<<2)>>2]|0;s=s+1|0;if((s|0)>=(S|0))break i;else k=((u+h|0)>>>0>u<<1>>>0&1)+k|0}nA(Xi[e+4>>2]|0,16,112252,d);o=-1094995529;break e}}}while(0);do{if((S|0)!=(t|0)){if(!v){t=Xi[156016+(S<<4)+4>>2]|0;s=r+(o>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>23;F=Gi[t+(s<<2)>>1]|0;s=(Gi[t+(s<<2)+2>>1]|0)+o|0;Xi[E>>2]=s;o=F;break}if((t|0)==4){t=Xi[155856+(S<<4)+4>>2]|0;s=r+(o>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>29;F=Gi[t+(s<<2)>>1]|0;s=(Gi[t+(s<<2)+2>>1]|0)+o|0;Xi[E>>2]=s;o=F;break}else{t=Xi[155888+(S+1<<4)+4>>2]|0;s=r+(o>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>27;F=Gi[t+(s<<2)>>1]|0;s=(Gi[t+(s<<2)+2>>1]|0)+o|0;Xi[E>>2]=s;o=F;break}}else{s=o;o=0}}while(0);u=a+(S+-1+o)|0;h=(l|0)>47;w=Xi[_>>2]|0;do{if(!(Xi[e+25960>>2]|0))if(h){Gi[f+(qi[u>>0]<<1)>>1]=w;if((S|0)>1&(o|0)>0){w=s;s=1;do{if((o|0)<7){n=Xi[156208+(o+3<<4)+4>>2]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>29;h=Gi[n+(F<<2)>>1]|0;w=(Gi[n+(F<<2)+2>>1]|0)+w|0}else{k=Xi[39093]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>26;h=Gi[k+(F<<2)>>1]|0;F=Gi[k+(F<<2)+2>>1]|0;b=F<<16>>16;if(F<<16>>16<0){w=w+6|0;F=r+(w>>>3)|0;b=((ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>(b+32|0))+h|0;h=Gi[k+(b<<2)>>1]|0;b=Gi[k+(b<<2)+2>>1]|0}w=b+w|0}Xi[E>>2]=w;o=o-h|0;u=u+~h|0;Gi[f+(qi[u>>0]<<1)>>1]=Xi[_+(s<<2)>>2];s=s+1|0}while((s|0)<(S|0)&(o|0)>0)}else s=1;if((s|0)>=(S|0))break;do{u=u+-1|0;Gi[f+(qi[u>>0]<<1)>>1]=Xi[_+(s<<2)>>2];s=s+1|0}while((s|0)!=(S|0))}else{F=qi[u>>0]|0;Gi[f+(F<<1)>>1]=((Zi(Xi[n+(F<<2)>>2]|0,w)|0)+32|0)>>>6;if((S|0)>1&(o|0)>0){w=s;s=1;do{if((o|0)<7){l=Xi[156208+(o+3<<4)+4>>2]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>29;h=Gi[l+(F<<2)>>1]|0;w=(Gi[l+(F<<2)+2>>1]|0)+w|0}else{k=Xi[39093]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>26;h=Gi[k+(F<<2)>>1]|0;F=Gi[k+(F<<2)+2>>1]|0;b=F<<16>>16;if(F<<16>>16<0){w=w+6|0;F=r+(w>>>3)|0;b=((ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>(b+32|0))+h|0;h=Gi[k+(b<<2)>>1]|0;b=Gi[k+(b<<2)+2>>1]|0}w=b+w|0}Xi[E>>2]=w;o=o-h|0;u=u+~h|0;F=qi[u>>0]|0;Gi[f+(F<<1)>>1]=((Zi(Xi[n+(F<<2)>>2]|0,Xi[_+(s<<2)>>2]|0)|0)+32|0)>>>6;s=s+1|0}while((s|0)<(S|0)&(o|0)>0)}else s=1;if((s|0)>=(S|0))break;do{u=u+-1|0;F=qi[u>>0]|0;Gi[f+(F<<1)>>1]=((Zi(Xi[n+(F<<2)>>2]|0,Xi[_+(s<<2)>>2]|0)|0)+32|0)>>>6;s=s+1|0}while((s|0)!=(S|0))}else{s=qi[u>>0]|0;if(h){Xi[f+(s<<2)>>2]=w;if((S|0)>1&(o|0)>0){s=1;do{if((o|0)<7){n=Xi[156208+(o+3<<4)+4>>2]|0;h=Xi[E>>2]|0;F=r+(h>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(h&7)>>>29;k=Gi[n+(F<<2)>>1]|0;h=(Gi[n+(F<<2)+2>>1]|0)+h|0}else{k=Xi[39093]|0;w=Xi[E>>2]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>26;h=Gi[k+(F<<2)>>1]|0;F=Gi[k+(F<<2)+2>>1]|0;b=F<<16>>16;if(F<<16>>16<0){w=w+6|0;F=r+(w>>>3)|0;b=((ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>(b+32|0))+h|0;h=Gi[k+(b<<2)>>1]|0;b=Gi[k+(b<<2)+2>>1]|0}k=h;h=b+w|0}Xi[E>>2]=h;o=o-k|0;u=u+~k|0;Xi[f+(qi[u>>0]<<2)>>2]=Xi[_+(s<<2)>>2];s=s+1|0}while((s|0)<(S|0)&(o|0)>0)}else s=1;if((s|0)>=(S|0))break;do{u=u+-1|0;Xi[f+(qi[u>>0]<<2)>>2]=Xi[_+(s<<2)>>2];s=s+1|0}while((s|0)!=(S|0))}else{Xi[f+(s<<2)>>2]=(Zi(Xi[n+(s<<2)>>2]|0,w)|0)+32>>6;if((S|0)>1&(o|0)>0){s=1;do{if((o|0)<7){l=Xi[156208+(o+3<<4)+4>>2]|0;h=Xi[E>>2]|0;F=r+(h>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(h&7)>>>29;k=Gi[l+(F<<2)>>1]|0;h=(Gi[l+(F<<2)+2>>1]|0)+h|0}else{k=Xi[39093]|0;w=Xi[E>>2]|0;F=r+(w>>>3)|0;F=(ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>26;h=Gi[k+(F<<2)>>1]|0;F=Gi[k+(F<<2)+2>>1]|0;b=F<<16>>16;if(F<<16>>16<0){w=w+6|0;F=r+(w>>>3)|0;b=((ZT(qi[F>>0]|qi[F+1>>0]<<8|qi[F+2>>0]<<16|qi[F+3>>0]<<24|0)|0)<<(w&7)>>>(b+32|0))+h|0;h=Gi[k+(b<<2)>>1]|0;b=Gi[k+(b<<2)+2>>1]|0}k=h;h=b+w|0}Xi[E>>2]=h;o=o-k|0;u=u+~k|0;F=qi[u>>0]|0;Xi[f+(F<<2)>>2]=(Zi(Xi[n+(F<<2)>>2]|0,Xi[_+(s<<2)>>2]|0)|0)+32>>6;s=s+1|0}while((s|0)<(S|0)&(o|0)>0)}else s=1;if((s|0)>=(S|0))break;do{u=u+-1|0;F=qi[u>>0]|0;Xi[f+(F<<2)>>2]=(Zi(Xi[n+(F<<2)>>2]|0,Xi[_+(s<<2)>>2]|0)|0)+32>>6;s=s+1|0}while((s|0)!=(S|0))}}}while(0);if((o|0)<0){o=Xi[e+4>>2]|0;F=Xi[i+21768>>2]|0;Xi[m>>2]=Xi[i+21764>>2];Xi[m+4>>2]=F;nA(o,16,112274,m);o=-1}else o=0}else o=0}while(0);Ue=p;return o|0}function MD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=Xi[e+205812>>2]|0;o=Xi[e+24620>>2]|0;u=Xi[((u|0)==3?o+80|0:o+72+(((u|0)==2&1)<<2)|0)>>2]|0;s=Xi[i+25332>>2]|0;if(!(Xi[e+205808>>2]|0)){e=i+23372|0;r=e;e=Xi[e>>2]|0}else{n=i+25340|0;r=i+23372|0;e=Xi[r>>2]|0;t=0;do{l=Xi[o+72+(t<<2)>>2]|0;a=Xi[(Xi[n>>2]|0)+72+(t<<2)>>2]|0;if(e&2147483647){f=0;do{Xi[i+21964+(t<<7)+((f^t)<<2)>>2]=RD(i,l,a,f+16|0)|0;f=f+1|0;e=Xi[r>>2]|0}while(f>>>0<e<<1>>>0)}t=t+1|0}while((t|0)!=2)}if(e|0){e=0;do{Xi[i+21836+(e<<2)>>2]=RD(i,u,s,e)|0;e=e+1|0}while(e>>>0<(Xi[r>>2]|0)>>>0)}return}function RD(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;a=Xi[e+23384+(f*40|0)+28>>2]|0;l=r-a|0;l=(l+128|0)>>>0>255?l>>31^127:l;r=l&255;l=l<<24>>24;if(r<<24>>24!=0?(Xi[(Xi[e+23384+(f*40|0)+36>>2]|0)+96>>2]|0)==0:0){e=i-a|0;e=(Zi((((r<<24>>24>-1?l:0-l|0)>>1)+16384|0)/(l|0)|0,((e+128|0)>>>0>255?e>>31^127:e)<<24>>24)|0)+32|0;r=e>>6;r=(r+1024|0)>>>0>2047?e>>31^1023:r}else r=256;return r|0}function TD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=Ue;Ue=Ue+16|0;k=b;u=e+24620|0;o=Xi[u>>2]|0;s=e+205812|0;f=Xi[s>>2]|0;n=f&1^1;h=i+25328|0;t=Xi[h>>2]&1^1;a=i+23380|0;if(!(Xi[a>>2]|0))r=0;else{l=0;do{r=i+23372+(l<<2)|0;Xi[o+612+(n<<3)+(l<<2)>>2]=Xi[r>>2];if(Xi[r>>2]|0){f=0;do{Xi[o+100+(n<<8)+(l<<7)+(f<<2)>>2]=Xi[i+23384+(l*1920|0)+(f*40|0)+24>>2]&3|Xi[(Xi[i+23384+(l*1920|0)+(f*40|0)+36>>2]|0)+84>>2]<<2;f=f+1|0}while(f>>>0<(Xi[r>>2]|0)>>>0)}l=l+1|0;r=Xi[a>>2]|0}while(l>>>0<r>>>0);f=Xi[s>>2]|0}if((f|0)==3){l=o+612|0;w=Xi[l+4>>2]|0;r=o+620|0;Xi[r>>2]=Xi[l>>2];Xi[r+4>>2]=w;qT(o+356|0,o+100|0,256)|0;r=Xi[a>>2]|0}w=e+205808|0;Xi[o+628>>2]=Xi[w>>2];l=i+21820|0;Xi[l>>2]=0;if((r|0)==2?Xi[i+23376>>2]|0:0){f=Xi[s>>2]|0;do{if((f|0)==3){r=Xi[(Xi[u>>2]|0)+80>>2]|0;l=Xi[i+25340>>2]|0;f=Xi[l+72>>2]|0;l=Xi[l+76>>2]|0;if((f|0)==2147483647&(l|0)==2147483647){nA(Xi[e+4>>2]|0,16,112327,k);Xi[i+21816>>2]=1;t=1;n=1;break}else{t=f-r|0;n=l-r|0;n=(((t|0)>-1?t:0-t|0)|0)>=(((n|0)>-1?n:0-n|0)|0)&1;Xi[i+21816>>2]=n;t=n;break}}else{r=Xi[h>>2]|0;if((r&f|0)==0?(Xi[(Xi[i+25340>>2]|0)+628>>2]|0)==0:0)Xi[l>>2]=(r<<1)+-3}}while(0);if((Xi[i+816>>2]|0)==3?(Xi[i+21812>>2]|0)==0:0){r=i+22220|0;f=i+22604|0;l=i+22988|0;a=0;do{ND(e,i,r,a,n,t,0);if(Xi[w>>2]|0){ND(e,i,f,a,0,0,1);ND(e,i,l,a,1,1,1)}a=a+1|0}while((a|0)!=2)}}Ue=b;return}function ND(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=Xi[i+25340>>2]|0;c=(n|0)!=0;d=c?16:0;v=Xi[i+23372>>2]|0;v=c?(v<<1)+16|0:v;if(c)k=1;else k=(Xi[e+205812>>2]|0)!=3;jT(r+(f*192|0)|0,0,192)|0;u=E+612+(a<<3)+(f<<2)|0;h=(d|0)<(v|0);w=E+628|0;n=Xi[u>>2]|0;b=0;do{e=b;b=b+1|0;if((n|0)>0){s=k&(e|0)!=(l|0);t=(e^l)+16|0;o=0;do{n=Xi[E+100+(a<<8)+(f<<7)+(o<<2)>>2]|0;if(k){if((n&3|0)==3)n=b+(n&-4)|0}else n=n|3;e:do{if(h){e=d;while(1){if((Xi[i+23384+(e*40|0)+24>>2]&3|Xi[(Xi[i+23384+(e*40|0)+36>>2]|0)+84>>2]<<2|0)==(n|0)){n=e;break}e=e+1|0;if((e|0)>=(v|0))break e}n=c?n+-16^l:n;if(Xi[w>>2]|0)Xi[r+(f*192|0)+(t+(o<<1)<<2)>>2]=n;if(!s)Xi[r+(f*192|0)+(o<<2)>>2]=n}}while(0);o=o+1|0;n=Xi[u>>2]|0}while((o|0)<(n|0))}}while((b|0)!=2);return}function DD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0;V=Ue;Ue=Ue+32|0;M=V+16|0;O=V+8|0;v=V;if(!(Xi[i+21812>>2]|0)){s=Xi[e+26652>>2]|0;a=Xi[i+21772>>2]|0;d=i+21768|0;u=Xi[r>>2]|0;E=u&64;v=Xi[i+25340>>2]|0;t=Xi[v+44>>2]|0;f=(u&128|0)!=0;do{if(!(Xi[t+(a<<2)>>2]&128))if(f){o=Xi[e+206436>>2]|0;a=(Zi(o,Xi[d>>2]&-2)|0)+(Xi[i+21764>>2]|0)|0;n=Xi[t+(a<<2)>>2]|0;Xi[M>>2]=n;f=Xi[t+(a+o<<2)>>2]|0;l=M+4|0;Xi[l>>2]=f;o=o<<2|2;t=s*6|0;if(!((f^n)&128))l=n;else{x=n&-129;Xi[M>>2]=x;f=f&-129;Xi[l>>2]=f;l=x}if(l&15|0?!((E|0)!=0|(f&15|0)==0):0){c=u|61712;Xi[r>>2]=c;b=20744;break}c=u|61504;Xi[r>>2]=c;b=20744}else{o=2;z=129}else{l=Xi[e+206436>>2]|0;if(f){o=2;a=(Zi(Xi[i+21820>>2]|0,l)|0)+a|0;z=129;break}else{o=0;a=(Zi((Xi[d>>2]&-2)+(Xi[i+21816>>2]|0)|0,l)|0)+(Xi[i+21764>>2]|0)|0;z=129;break}}}while(0);do{if((z|0)==129){l=Xi[t+(a<<2)>>2]|0;Xi[M+4>>2]=l;Xi[M>>2]=l;f=(E|0)!=0;if(!(f|(l&15|0)==0)){c=u|20744;Xi[r>>2]=c;t=s;b=20744;break}if(!f?(n=l&48,n|0):0){c=u|n|61696;Xi[r>>2]=c;t=s;b=20744;break}b=(Xi[e+26732>>2]|0)==0?20800:20744;c=u|61504;Xi[r>>2]=c;t=s}}while(0);n=Xi[(Xi[e+26644>>2]|0)+(a<<2)>>2]|0;s=Xi[v+32>>2]|0;u=s+(n<<2)|0;h=Xi[v+36>>2]|0;w=h+(n<<2)|0;f=a<<2;A=Xi[v+64>>2]|0;a=A+f|0;g=Xi[v+68>>2]|0;k=g+f|0;if((o|0)==0?(Xi[d>>2]&1|0)!=0:0){k=f|2;w=n+(t<<1)|0;O=k;u=s+(w<<2)|0;w=h+(w<<2)|0;h=A+k|0;k=g+k|0}else{O=f;h=a}n=i+22220|0;s=i+22412|0;a=i+21836|0;f=c&128;if(Xi[e+205808>>2]|0)if(!f){f=0;y=s}else{y=Xi[d>>2]&1;a=i+21964+(y<<7)|0;n=i+22604+(y*384|0)|0;y=i+22604+(y*384|0)+192|0}else y=s;F=Xi[v+628>>2]<<4&l>>3;do{if((f|0)==(l&128|0)){if(c&8|0){Xi[i+44148>>2]=0;Xi[i+44156>>2]=0;Xi[i+44164>>2]=0;Xi[i+44172>>2]=0;if(!(l&7)){f=Wi[h>>0]|0;l=f<<24>>24>-1;if(l)f=n+((f<<24>>24)+F<<2)|0;else f=y+((Wi[k>>0]|0)+F<<2)|0;z=Xi[f>>2]|0;x=Xi[a+(z<<2)>>2]|0;r=l?u:w;l=Gi[r>>1]|0;a=(Zi(l,x)|0)+128>>8;r=Gi[r+2>>1]|0;x=(Zi(r,x)|0)+128>>8;f=x<<16|a&65535;l=x-r<<16|a-l&65535;a=Zi(z,16843009)|0}else{f=0;l=0;a=0}Xi[i+44108>>2]=a;Xi[i+44116>>2]=a;Xi[i+44124>>2]=a;Xi[i+44132>>2]=a;Xi[i+43824>>2]=f;Xi[i+43828>>2]=f;Xi[i+43832>>2]=f;Xi[i+43836>>2]=f;Xi[i+43856>>2]=f;Xi[i+43860>>2]=f;Xi[i+43864>>2]=f;Xi[i+43868>>2]=f;Xi[i+43888>>2]=f;Xi[i+43892>>2]=f;Xi[i+43896>>2]=f;Xi[i+43900>>2]=f;Xi[i+43920>>2]=f;Xi[i+43924>>2]=f;Xi[i+43928>>2]=f;Xi[i+43932>>2]=f;Xi[i+43984>>2]=l;Xi[i+43988>>2]=l;Xi[i+43992>>2]=l;Xi[i+43996>>2]=l;Xi[i+44016>>2]=l;Xi[i+44020>>2]=l;Xi[i+44024>>2]=l;Xi[i+44028>>2]=l;Xi[i+44048>>2]=l;Xi[i+44052>>2]=l;Xi[i+44056>>2]=l;Xi[i+44060>>2]=l;Xi[i+44080>>2]=l;Xi[i+44084>>2]=l;Xi[i+44088>>2]=l;Xi[i+44092>>2]=l;break}m=(E|0)==0;p=b&65535;_=(l&7|0)==0;v=(b&8|0)==0;E=t*3|0;S=0;do{k=S&1;b=S>>1;f=i+44376+(S<<1)|0;if(!(!m?!(Gi[f>>1]&256):0))z=162;do{if((z|0)==162){z=0;Gi[f>>1]=p;c=S<<2;s=qi[120643+c>>0]|0;Gi[i+44136+s>>1]=0;o=s+8|0;Gi[i+44136+o>>1]=0;if(!_){Gi[i+44096+s>>1]=0;Gi[i+44096+o>>1]=0;Xi[i+43776+(s<<2)>>2]=0;x=s+1|0;Xi[i+43776+(x<<2)>>2]=0;Xi[i+43776+(o<<2)>>2]=0;r=s+9|0;Xi[i+43776+(r<<2)>>2]=0;Xi[i+43936+(s<<2)>>2]=0;Xi[i+43936+(x<<2)>>2]=0;Xi[i+43936+(o<<2)>>2]=0;Xi[i+43936+(r<<2)>>2]=0;break}f=S+O|0;l=Wi[A+f>>0]|0;if(l<<24>>24>-1){d=u;f=n+((l<<24>>24)+F<<2)|0}else{d=w;f=y+((Wi[g+f>>0]|0)+F<<2)|0}r=Xi[f>>2]|0;h=Xi[a+(r<<2)>>2]|0;r=r*257&65535;Gi[i+44096+s>>1]=r;Gi[i+44096+o>>1]=r;if(!v){B=(Zi(E,b)|0)+(0-k&3)|0;x=Gi[d+(B<<2)>>1]|0;e=(Zi(x<<16>>16,h)|0)+128>>8;B=Gi[d+(B<<2)+2>>1]|0;H=(Zi(B<<16>>16,h)|0)+128>>8;I=H<<16|e&65535;Xi[i+43776+(s<<2)>>2]=I;U=s+1|0;Xi[i+43776+(U<<2)>>2]=I;Xi[i+43776+(o<<2)>>2]=I;r=s+9|0;Xi[i+43776+(r<<2)>>2]=I;x=H-(B&65535)<<16|e-(x&65535)&65535;Xi[i+43936+(s<<2)>>2]=x;Xi[i+43936+(U<<2)>>2]=x;Xi[i+43936+(o<<2)>>2]=x;Xi[i+43936+(r<<2)>>2]=x;break}o=k<<1;f=b<<1;l=0;do{e=(Zi((l>>1)+f|0,t)|0)+(l&1|o)|0;x=d+(e<<2)|0;r=qi[120643+(l+c)>>0]|0;U=((Zi(Gi[x>>1]|0,h)|0)+128|0)>>>8;Gi[i+43776+(r<<2)>>1]=U;e=d+(e<<2)+2|0;B=((Zi(Gi[e>>1]|0,h)|0)+128|0)>>>8;Gi[i+43776+(r<<2)+2>>1]=B;Xi[i+43936+(r<<2)>>2]=B-(Ji[e>>1]|0)<<16|U-(Ji[x>>1]|0)&65535;l=l+1|0}while((l|0)!=4)}}while(0);S=S+1|0}while((S|0)!=4)}else{S=f>>>6^2;E=(E|0)==0;b=b&65535;v=0;do{c=v&1;d=v>>1;f=i+44376+(v<<1)|0;if(!(!E?!(Gi[f>>1]&256):0))z=145;do{if((z|0)==145){z=0;Gi[f>>1]=b;h=qi[120643+(v<<2)>>0]|0;Gi[i+44136+h>>1]=0;s=h+8|0;Gi[i+44136+s>>1]=0;if(Xi[M+(d<<2)>>2]&7|0){Gi[i+44096+h>>1]=0;Gi[i+44096+s>>1]=0;Xi[i+43776+(h<<2)>>2]=0;x=h+1|0;Xi[i+43776+(x<<2)>>2]=0;Xi[i+43776+(s<<2)>>2]=0;r=h+9|0;Xi[i+43776+(r<<2)>>2]=0;Xi[i+43936+(h<<2)>>2]=0;Xi[i+43936+(x<<2)>>2]=0;Xi[i+43936+(s<<2)>>2]=0;Xi[i+43936+(r<<2)>>2]=0;break}f=c+O+(Zi(d,o)|0)|0;l=Wi[A+f>>0]|0;if(l<<24>>24>-1){k=u;f=n+((l<<24>>24)+F<<2)|0}else{k=w;f=y+((Wi[g+f>>0]|0)+F<<2)|0}B=Xi[f>>2]|0;e=Xi[a+(B<<2)>>2]|0;B=B*257&65535;Gi[i+44096+h>>1]=B;Gi[i+44096+s>>1]=B;B=(0-c&3)+(Zi(d,t)|0)|0;x=(Gi[k+(B<<2)+2>>1]<<S|0)/2|0;B=Gi[k+(B<<2)>>1]|0;H=(Zi(B<<16>>16,e)|0)+128>>8;e=(Zi(x,e)|0)+128>>8;I=H&65535|e<<16;Xi[i+43776+(h<<2)>>2]=I;U=h+1|0;Xi[i+43776+(U<<2)>>2]=I;Xi[i+43776+(s<<2)>>2]=I;r=h+9|0;Xi[i+43776+(r<<2)>>2]=I;x=H-(B&65535)&65535|e-x<<16;Xi[i+43936+(h<<2)>>2]=x;Xi[i+43936+(U<<2)>>2]=x;Xi[i+43936+(s<<2)>>2]=x;Xi[i+43936+(r<<2)>>2]=x}}while(0);v=v+1|0}while((v|0)!=4)}}while(0)}else{m=Xi[e+26652>>2]|0;S=Xi[i+21772>>2]|0;f=Xi[r>>2]|0;x=f&64;U=(x|0)==0;c=0;b=61440;while(1){n=Wi[i+44096+(c*40|0)+11>>0]|0;o=Wi[i+44096+(c*40|0)+4>>0]|0;l=Wi[i+44096+(c*40|0)+8>>0]|0;if(l<<24>>24==-2){k=3;w=i+43776+(c*160|0)+12|0;h=Wi[i+44096+(c*40|0)+3>>0]|0}else{k=8;w=i+43776+(c*160|0)+32|0;h=l<<24>>24}u=n>>>0>o>>>0?o:n;u=u>>>0>h>>>0?h:u;a=O+(c<<2)|0;Xi[a>>2]=u;do{if((u|0)>-1){t=i+43776+(c*160|0)+44|0;s=i+43776+(c*160|0)+16|0;a=(n|0)==(u|0);l=(o|0)==(u|0);if(((a&1)+(l&1)+((h|0)==(u|0)&1)|0)<=1){if(a){Xi[v+(c<<2)>>2]=Xi[t>>2];l=b;break}if(l){Xi[v+(c<<2)>>2]=Xi[s>>2];l=b;break}else{Xi[v+(c<<2)>>2]=Xi[w>>2];l=b;break}}B=Gi[t>>1]|0;o=B<<16>>16;n=Gi[s>>1]|0;t=n<<16>>16;l=Gi[w>>1]|0;a=l<<16>>16;if(B<<16>>16>n<<16>>16){if(l<<16>>16>n<<16>>16)t=(a|0)>(o|0)?o:a}else if(n<<16>>16>l<<16>>16)t=(a|0)>(o|0)?a:o;B=Gi[i+43776+(c*160|0)+46>>1]|0;o=B<<16>>16;s=Gi[i+43776+(c*160|0)+18>>1]|0;l=s<<16>>16;a=Gi[i+43776+(c*160|0)+(k<<2)+2>>1]|0;n=a<<16>>16;if(B<<16>>16>s<<16>>16){if(a<<16>>16>s<<16>>16)l=(n|0)>(o|0)?o:n}else if(s<<16>>16>a<<16>>16)l=(n|0)>(o|0)?n:o;Xi[v+(c<<2)>>2]=l<<16|t&65535;l=b}else{l=~(12288<<(c<<1));Xi[v+(c<<2)>>2]=0;Xi[a>>2]=-1;if(U){f=f&l;Xi[r>>2]=f}l=b&l}}while(0);c=c+1|0;if((c|0)==2){a=l;break}else b=l}E=i+21768|0;l=Xi[O>>2]|0;if((l|0)<0?(d=O+4|0,(Xi[d>>2]|0)<0):0){Xi[d>>2]=0;Xi[O>>2]=0;if(U){f=f|61440;Xi[r>>2]=f}y=0;w=f;a=a|61440}else{y=l;w=f}l=Xi[v>>2]|0;f=Xi[v+4>>2]|0;do{if(l|x|f){B=i+25340|0;d=Xi[B>>2]|0;s=Xi[d+44>>2]|0;n=(w&128|0)!=0;do{if(!(Xi[s+(S<<2)>>2]&128))if(n){u=Xi[e+206436>>2]|0;h=Zi(Xi[E>>2]&-2,u)|0;h=h+(Xi[i+21764>>2]|0)|0;o=Xi[s+(h<<2)>>2]|0;Xi[M>>2]=o;n=Xi[s+(h+u<<2)>>2]|0;t=M+4|0;Xi[t>>2]=n;u=u<<2|2;s=m*6|0;if(!((n^o)&128))t=o;else{H=o&-129;Xi[M>>2]=H;n=n&-129;Xi[t>>2]=n;t=H}a=a|264;if(t&15|0?!((x|0)!=0|(n&15|0)==0):0){c=w|272;Xi[r>>2]=c;o=h;break}c=w|64;Xi[r>>2]=c;o=h}else{u=2;o=S;z=45}else{t=Xi[e+206436>>2]|0;if(n){u=2;o=(Zi(Xi[i+21820>>2]|0,t)|0)+S|0;z=45;break}else{u=0;o=(Zi((Xi[E>>2]&-2)+(Xi[i+21816>>2]|0)|0,t)|0)+(Xi[i+21764>>2]|0)|0;z=45;break}}}while(0);do{if((z|0)==45){t=Xi[s+(o<<2)>>2]|0;Xi[M+4>>2]=t;Xi[M>>2]=t;n=a|264;a=(x|0)!=0;if(!(a|(t&15|0)==0)){c=w|264;Xi[r>>2]=c;s=m;a=n;break}if(!a?(_=t&48,_|0):0){c=w|_|256;Xi[r>>2]=c;s=m;a=n;break}a=(Xi[e+26732>>2]|0)==0?n+56|0:n;c=w|64;Xi[r>>2]=c;s=m}}while(0);w=Xi[(Xi[e+26644>>2]|0)+(o<<2)>>2]|0;p=Xi[d+32>>2]|0;k=p+(w<<2)|0;F=Xi[d+36>>2]|0;b=F+(w<<2)|0;n=o<<2;I=Xi[d+64>>2]|0;o=I+n|0;H=Xi[d+68>>2]|0;h=H+n|0;if((u|0)==0?(Xi[E>>2]&1|0)!=0:0){h=n|2;b=w+(s<<1)|0;L=h;w=b;k=p+(b<<2)|0;b=F+(b<<2)|0;o=I+h|0;h=H+h|0}else L=n;if((c^t)&128|0){_=a&65535;m=(y&255)*257&65535;v=Xi[O+4>>2]|0;S=(v&255)*257&65535;d=(y|0)>0?l:0;v=(v|0)>0?f:0;E=0;a=0;do{t=E&1;o=E>>1;h=Zi(o,u)|0;k=(0-t&3)+(Zi(o,s)|0)|0;n=i+44376+(E<<1)|0;if(!(!U?(Gi[n>>1]&256)==0:0)){Gi[n>>1]=_;c=qi[120643+(E<<2)>>0]|0;Gi[i+44096+c>>1]=m;b=c+8|0;Gi[i+44096+b>>1]=m;Gi[i+44136+c>>1]=S;Gi[i+44136+b>>1]=S;do{if((Xi[M+(o<<2)>>2]&7|0)==0?(Xi[(Xi[B>>2]|0)+96>>2]|0)==0:0){n=t+L+h|0;t=Wi[I+n>>0]|0;if(!(t<<24>>24)){n=k+w|0;e=Gi[p+(n<<2)>>1]|0;z=e<<16>>16;if(((e<<16>>16>-1?z:0-z|0)|0)>=2){n=l;t=f;break}e=Gi[p+(n<<2)+2>>1]|0;z=e<<16>>16;if(((e<<16>>16>-1?z:0-z|0)|0)>=2){n=l;t=f;break}}else{if(t<<24>>24>=0){n=l;t=f;break}if(Wi[H+n>>0]|0){n=l;t=f;break}n=k+w|0;e=Gi[F+(n<<2)>>1]|0;z=e<<16>>16;if(((e<<16>>16>-1?z:0-z|0)|0)>=2){n=l;t=f;break}e=Gi[F+(n<<2)+2>>1]|0;z=e<<16>>16;if(((e<<16>>16>-1?z:0-z|0)|0)>=2){n=l;t=f;break}}n=d;t=v;a=a+1|0}else{n=l;t=f}}while(0);Xi[i+43776+(c<<2)>>2]=n;e=c+1|0;Xi[i+43776+(e<<2)>>2]=n;Xi[i+43776+(b<<2)>>2]=n;z=c+9|0;Xi[i+43776+(z<<2)>>2]=n;Xi[i+43936+(c<<2)>>2]=t;Xi[i+43936+(e<<2)>>2]=t;Xi[i+43936+(b<<2)>>2]=t;Xi[i+43936+(z<<2)>>2]=t}E=E+1|0}while((E|0)!=4);f=a;if(f&3|x|0)break;Xi[r>>2]=Xi[r>>2]&-41337|264;break}if(c&8|0){n=Zi(y&255,16843009)|0;Xi[i+44108>>2]=n;Xi[i+44116>>2]=n;Xi[i+44124>>2]=n;Xi[i+44132>>2]=n;n=Xi[O+4>>2]|0;z=Zi(n&255,16843009)|0;Xi[i+44148>>2]=z;Xi[i+44156>>2]=z;Xi[i+44164>>2]=z;Xi[i+44172>>2]=z;do{if((t&7|0)==0?(Xi[d+96>>2]|0)==0:0){a=Wi[o>>0]|0;if(!(a<<24>>24)){r=Gi[p+(w<<2)>>1]|0;z=r<<16>>16;if(((r<<16>>16>-1?z:0-z|0)|0)>=2)break;r=Gi[p+(w<<2)+2>>1]|0;z=r<<16>>16;if(((r<<16>>16>-1?z:0-z|0)|0)>=2)break}else{if(a<<24>>24>=0)break;if(Wi[h>>0]|0)break;r=Gi[F+(w<<2)>>1]|0;z=r<<16>>16;if(((r<<16>>16>-1?z:0-z|0)|0)>=2)break;r=Gi[F+(w<<2)+2>>1]|0;z=r<<16>>16;if(((r<<16>>16>-1?z:0-z|0)|0)>=2)break;if((Xi[e+206420>>2]|0)>>>0<=33)break}l=(y|0)>0?l:0;f=(n|0)>0?f:0}}while(0);Xi[i+43824>>2]=l;Xi[i+43828>>2]=l;Xi[i+43832>>2]=l;Xi[i+43836>>2]=l;Xi[i+43856>>2]=l;Xi[i+43860>>2]=l;Xi[i+43864>>2]=l;Xi[i+43868>>2]=l;Xi[i+43888>>2]=l;Xi[i+43892>>2]=l;Xi[i+43896>>2]=l;Xi[i+43900>>2]=l;Xi[i+43920>>2]=l;Xi[i+43924>>2]=l;Xi[i+43928>>2]=l;Xi[i+43932>>2]=l;Xi[i+43984>>2]=f;Xi[i+43988>>2]=f;Xi[i+43992>>2]=f;Xi[i+43996>>2]=f;Xi[i+44016>>2]=f;Xi[i+44020>>2]=f;Xi[i+44024>>2]=f;Xi[i+44028>>2]=f;Xi[i+44048>>2]=f;Xi[i+44052>>2]=f;Xi[i+44056>>2]=f;Xi[i+44060>>2]=f;Xi[i+44080>>2]=f;Xi[i+44084>>2]=f;Xi[i+44088>>2]=f;Xi[i+44092>>2]=f;break}C=a&65535;P=(y&255)*257&65535;M=Xi[O+4>>2]|0;D=(M&255)*257&65535;N=(t&7|0)==0;R=(a&8|0)==0;T=s*3|0;g=(y|0)==0;M=(M|0)==0;O=e+206420|0;A=0;a=0;do{u=A&1;w=A>>1;y=i+44376+(A<<1)|0;if(!(!U?(Gi[y>>1]&256)==0:0))z=88;do{if((z|0)==88){z=0;Gi[y>>1]=C;F=A<<2;p=qi[120643+F>>0]|0;h=i+43776+(p<<2)|0;Xi[h>>2]=l;S=p+1|0;c=i+43776+(S<<2)|0;Xi[c>>2]=l;e=p+8|0;d=i+43776+(e<<2)|0;Xi[d>>2]=l;m=p+9|0;v=i+43776+(m<<2)|0;Xi[v>>2]=l;E=i+43936+(p<<2)|0;Xi[E>>2]=f;S=i+43936+(S<<2)|0;Xi[S>>2]=f;_=i+43936+(e<<2)|0;Xi[_>>2]=f;m=i+43936+(m<<2)|0;Xi[m>>2]=f;Gi[i+44096+p>>1]=P;Gi[i+44096+e>>1]=P;Gi[i+44136+p>>1]=D;Gi[i+44136+e>>1]=D;if(N?(Xi[(Xi[B>>2]|0)+96>>2]|0)==0:0){n=A+L|0;t=Wi[I+n>>0]|0;o=t<<24>>24==0;if(!o){if(t<<24>>24>=0)break;if(Wi[H+n>>0]|0)break;if((Xi[O>>2]|0)>>>0<=33)break}p=o?k:b;if(!R){n=(Zi(T,w)|0)+(0-u&3)|0;y=Gi[p+(n<<2)>>1]|0;e=y<<16>>16;if(((y<<16>>16>-1?e:0-e|0)|0)>=2)break;y=Gi[p+(n<<2)+2>>1]|0;e=y<<16>>16;if(((y<<16>>16>-1?e:0-e|0)|0)>=2)break;if(g){Xi[h>>2]=0;Xi[c>>2]=0;Xi[d>>2]=0;Xi[v>>2]=0}if(M){Xi[E>>2]=0;Xi[S>>2]=0;Xi[_>>2]=0;Xi[m>>2]=0}a=a+4|0;break}h=u<<1;o=w<<1;u=0;n=0;do{t=(Zi((u>>1)+o|0,s)|0)+(u&1|h)|0;m=Gi[p+(t<<2)>>1]|0;e=m<<16>>16;if(((m<<16>>16>-1?e:0-e|0)|0)<2?(m=Gi[p+(t<<2)+2>>1]|0,e=m<<16>>16,((m<<16>>16>-1?e:0-e|0)|0)<2):0){if(g)Xi[i+43776+(qi[120643+(u+F)>>0]<<2)>>2]=0;if(M)Xi[i+43936+(qi[120643+(u+F)>>0]<<2)>>2]=0;n=n+1|0}u=u+1|0}while((u|0)!=4);if(!(n&3))Gi[y>>1]=(Ji[y>>1]|0)+65480;a=n+a|0}}}while(0);A=A+1|0}while((A|0)!=4);f=a;if(!(f&15|x))Xi[r>>2]=Xi[r>>2]&-41337|264}else{I=Zi(y&255,16843009)|0;Xi[i+44108>>2]=I;Xi[i+44116>>2]=I;Xi[i+44124>>2]=I;Xi[i+44132>>2]=I;I=Zi(Xi[O+4>>2]&255,16843009)|0;Xi[i+44148>>2]=I;Xi[i+44156>>2]=I;Xi[i+44164>>2]=I;Xi[i+44172>>2]=I;I=i+43824|0;H=i+43856|0;B=i+43888|0;e=i+43920|0;U=i+43984|0;x=i+44016|0;z=i+44048|0;i=i+44080|0;Xi[I>>2]=0;Xi[I+4>>2]=0;Xi[I+8>>2]=0;Xi[I+12>>2]=0;Xi[H>>2]=0;Xi[H+4>>2]=0;Xi[H+8>>2]=0;Xi[H+12>>2]=0;Xi[B>>2]=0;Xi[B+4>>2]=0;Xi[B+8>>2]=0;Xi[B+12>>2]=0;Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;Xi[U>>2]=0;Xi[U+4>>2]=0;Xi[U+8>>2]=0;Xi[U+12>>2]=0;Xi[x>>2]=0;Xi[x+4>>2]=0;Xi[x+8>>2]=0;Xi[x+12>>2]=0;Xi[z>>2]=0;Xi[z+4>>2]=0;Xi[z+8>>2]=0;Xi[z+12>>2]=0;Xi[i>>2]=0;Xi[i+4>>2]=0;Xi[i+8>>2]=0;Xi[i+12>>2]=0;Xi[r>>2]=Xi[r>>2]&-41337|264}}while(0)}Ue=V;return}function CD(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;Y=Ue;Ue=Ue+80|0;z=Y+72|0;s=Y;w=Xi[e+96>>2]|0;do{if((w|0)!=0?(Xi[e+32688>>2]|0)==0:0){N=Xi[e+25960>>2]|0;v=Xi[e+26672>>2]|0;L=(v|0)!=0;H=(v|0)==3;v=(v|0)==2;O=Xi[i+21772>>2]|0;k=Xi[i+21716>>2]|0;C=Xi[i+21708>>2]|0;x=(Zi(Xi[e+27844>>2]|0,-6)|0)+48|0;U=(Xi[i+848>>2]|0)+52+x|0;x=(Xi[i+852>>2]|0)+52+x|0;b=Xi[(Xi[e+24668>>2]|0)+(O<<2)>>2]|0;c=Xi[e+24644>>2]|0;P=Wi[c+O>>0]|0;O=Wi[c+(O+-1)>>0]|0;c=Wi[c+(Xi[i+21688>>2]|0)>>0]|0;B=qi[e+32512+P>>0]|0;D=P+1|0;d=D+O>>1;D=c+D>>1;I=B+1|0;O=(I+(qi[e+32512+O>>0]|0)|0)>>>1;I=((qi[e+32512+c>>0]|0)+I|0)>>>1;if(b&7|0){y=(Xi[e+205812>>2]|0)!=3?93244:93252;c=(k|0)!=0;if(c?(u=d+U|0,h=d+x|0,!(u>>>0<68|h>>>0<68)):0)nV[Xi[e+64>>2]&255](l,t,qi[112388+u>>0]|0,qi[112544+h>>0]|0);k=(b&16777216|0)!=0;b=P+U|0;i=112388+b|0;w=P+x|0;h=112544+w|0;w=b>>>0<68|w>>>0<68;if(k){if(!w){P=qi[h>>0]|0;T=qi[i>>0]|0;jT(z|0,Wi[112700+(b<<2)+3>>0]|0,4)|0;Uz[Xi[e+52>>2]&127](l+(8<<N)|0,t,T,P,z)}if(C|0){s=D+U|0;u=qi[112388+s>>0]|0;P=D+x|0;r=qi[112544+P>>0]|0;do{if(!(s>>>0<68|P>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+60>>2]&255](l,t,u,r);break}else{Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l,t,u,r,z);break}}}while(0)}if(!w){P=qi[h>>0]|0;D=qi[i>>0]|0;jT(z|0,Wi[112700+(b<<2)+3>>0]|0,4)|0;Uz[Xi[e+48>>2]&127](l+(t<<3)|0,t,D,P,z)}}else{if(!w){P=qi[h>>0]|0;T=qi[i>>0]|0;M=Wi[112700+(b<<2)+3>>0]|0;R=e+52|0;jT(z|0,M|0,4)|0;Uz[Xi[R>>2]&127](l+(4<<N)|0,t,T,P,z);jT(z|0,M|0,4)|0;Uz[Xi[R>>2]&127](l+(8<<N)|0,t,T,P,z);jT(z|0,M|0,4)|0;Uz[Xi[R>>2]&127](l+(12<<N)|0,t,T,P,z)}if(C|0){s=D+U|0;u=qi[112388+s>>0]|0;P=D+x|0;r=qi[112544+P>>0]|0;do{if(!(s>>>0<68|P>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+60>>2]&255](l,t,u,r);break}else{Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l,t,u,r,z);break}}}while(0)}if(!w){P=qi[h>>0]|0;D=qi[i>>0]|0;R=Wi[112700+(b<<2)+3>>0]|0;T=e+48|0;jT(z|0,R|0,4)|0;Uz[Xi[T>>2]&127](l+(t<<2)|0,t,D,P,z);jT(z|0,R|0,4)|0;Uz[Xi[T>>2]&127](l+(t<<3)|0,t,D,P,z);jT(z|0,R|0,4)|0;Uz[Xi[T>>2]&127](l+(t*12|0)|0,t,D,P,z)}}if(!L)break;if(H){if(c?(E=O+U|0,S=O+x|0,!(E>>>0<68|S>>>0<68)):0){o=qi[112544+S>>0]|0;H=qi[112388+E>>0]|0;l=e+64|0;nV[Xi[l>>2]&255](a,t,H,o);nV[Xi[l>>2]&255](n,t,H,o)}if(k){r=8<<N;k=B+U|0;b=112388+k|0;w=B+x|0;h=112544+w|0;w=k>>>0<68|w>>>0<68;if(!w){o=qi[h>>0]|0;B=qi[b>>0]|0;l=Wi[112700+(k<<2)+3>>0]|0;H=e+52|0;jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](a+r|0,t,B,o,z);jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](n+r|0,t,B,o,z)}if(C|0){s=I+U|0;u=qi[112388+s>>0]|0;x=I+x|0;r=qi[112544+x>>0]|0;do{if(!(s>>>0<68|x>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+60>>2]&255](a,t,u,r);nV[Xi[e+60>>2]&255](n,t,u,r);break}else{Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](a,t,u,r,z);Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](n,t,u,r,z);break}}}while(0)}r=t<<3;if(!w){x=qi[h>>0]|0;o=qi[b>>0]|0;U=Wi[112700+(k<<2)+3>>0]|0;e=e+48|0;jT(z|0,U|0,4)|0;Uz[Xi[e>>2]&127](a+r|0,t,o,x,z);jT(z|0,U|0,4)|0;Uz[Xi[e>>2]&127](n+r|0,t,o,x,z)}break}else{r=4<<N;k=B+U|0;b=112388+k|0;w=B+x|0;h=112544+w|0;w=k>>>0<68|w>>>0<68;if(!w){o=qi[h>>0]|0;B=qi[b>>0]|0;L=Wi[112700+(k<<2)+3>>0]|0;l=e+52|0;jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](a+r|0,t,B,o,z);jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](n+r|0,t,B,o,z);H=8<<N;jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](a+H|0,t,B,o,z);jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](n+H|0,t,B,o,z);H=12<<N;jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](a+H|0,t,B,o,z);jT(z|0,L|0,4)|0;Uz[Xi[l>>2]&127](n+H|0,t,B,o,z)}if(C|0){s=I+U|0;u=qi[112388+s>>0]|0;x=I+x|0;r=qi[112544+x>>0]|0;do{if(!(s>>>0<68|x>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+60>>2]&255](a,t,u,r);nV[Xi[e+60>>2]&255](n,t,u,r);break}else{Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](a,t,u,r,z);Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](n,t,u,r,z);break}}}while(0)}r=t<<2;if(!w){x=qi[h>>0]|0;o=qi[b>>0]|0;B=Wi[112700+(k<<2)+3>>0]|0;U=e+48|0;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+r|0,t,o,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+r|0,t,o,x,z);e=t<<3;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+e|0,t,o,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+e|0,t,o,x,z);e=t*12|0;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+e|0,t,o,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+e|0,t,o,x,z)}break}}if(v){if(c?(_=O+U|0,m=O+x|0,!(_>>>0<68|m>>>0<68)):0){t=qi[112544+m>>0]|0;H=qi[112388+_>>0]|0;l=e+88|0;nV[Xi[l>>2]&255](a,o,H,t);nV[Xi[l>>2]&255](n,o,H,t)}r=4<<N;k=B+U|0;b=112388+k|0;w=B+x|0;h=112544+w|0;w=k>>>0<68|w>>>0<68;if(!w){t=qi[h>>0]|0;B=qi[b>>0]|0;l=(qi[112700+(k<<2)+3>>0]|0)+1&255;H=e+76|0;jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](a+r|0,o,B,t,z);jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](n+r|0,o,B,t,z)}if(C|0){s=I+U|0;u=qi[112388+s>>0]|0;x=I+x|0;r=qi[112544+x>>0]|0;do{if(!(s>>>0<68|x>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+84>>2]&255](a,o,u,r);nV[Xi[e+84>>2]&255](n,o,u,r);break}else{Wi[z>>0]=(qi[(f<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](a,o,u,r,z);Wi[z>>0]=(qi[(f<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](n,o,u,r,z);break}}}while(0)}r=o<<2;if(!w){x=qi[h>>0]|0;t=qi[b>>0]|0;B=(qi[112700+(k<<2)+3>>0]|0)+1&255;U=e+72|0;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+r|0,o,t,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+r|0,o,t,x,z);e=o<<3;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+e|0,o,t,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+e|0,o,t,x,z);e=o*12|0;jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](a+e|0,o,t,x,z);jT(z|0,B|0,4)|0;Uz[Xi[U>>2]&127](n+e|0,o,t,x,z)}break}else{if(c?(p=O+U|0,F=O+x|0,!(p>>>0<68|F>>>0<68)):0){t=qi[112544+F>>0]|0;H=qi[112388+p>>0]|0;l=e+88|0;nV[Xi[l>>2]&255](a,o,H,t);nV[Xi[l>>2]&255](n,o,H,t)}r=4<<N;k=B+U|0;b=112388+k|0;w=B+x|0;h=112544+w|0;w=k>>>0<68|w>>>0<68;if(!w){t=qi[h>>0]|0;B=qi[b>>0]|0;l=(qi[112700+(k<<2)+3>>0]|0)+1&255;H=e+76|0;jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](a+r|0,o,B,t,z);jT(z|0,l|0,4)|0;Uz[Xi[H>>2]&127](n+r|0,o,B,t,z)}if(C|0){s=I+U|0;u=qi[112388+s>>0]|0;x=I+x|0;r=qi[112544+x>>0]|0;do{if(!(s>>>0<68|x>>>0<68)){f=Gi[y>>1]|0;if(f<<16>>16>3){nV[Xi[e+84>>2]&255](a,o,u,r);nV[Xi[e+84>>2]&255](n,o,u,r);break}else{Wi[z>>0]=(qi[(f<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](a,o,u,r,z);Wi[z>>0]=(qi[(f<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[y+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[y+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[y+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](n,o,u,r,z);break}}}while(0)}r=o<<2;if(!w){x=qi[h>>0]|0;t=qi[b>>0]|0;U=(qi[112700+(k<<2)+3>>0]|0)+1&255;e=e+72|0;jT(z|0,U|0,4)|0;Uz[Xi[e>>2]&127](a+r|0,o,t,x,z);jT(z|0,U|0,4)|0;Uz[Xi[e>>2]&127](n+r|0,o,t,x,z)}break}}f=s+7&-8;v=f;c=(b&16777216|0)!=0;r=Xi[i+21824>>2]|0;if(c?!(H|(r&7|0)!=7):0){h=f;Xi[h>>2]=131074;Xi[h+4>>2]=131074;h=v+16|0;Xi[h>>2]=131074;Xi[h+4>>2]=131074;h=v+32|0;Xi[h>>2]=131074;Xi[h+4>>2]=131074;h=v+48|0;Xi[h>>2]=131074;Xi[h+4>>2]=131074;h=4}else{F=0-((b*5|0)>>>5&1)&3|b>>4;h=4-(0-((r&15|0)==0&b>>>3)&3)|0;$z[w&3](v,i+43648|0,i+44096|0,i+43776|0,(Xi[i+23380>>2]|0)==2&1,h,(b>>24)+1|0,0-((k*5|0)>>>5&1&F>>>1)&3,F,(Xi[e+205812>>2]|0)!=3&1)}if(k&7|0){F=f;Xi[F>>2]=262148;Xi[F+4>>2]=262148}if(C&7|0){p=(Xi[e+205812>>2]|0)!=3;F=v+32|0;Xi[F>>2]=p?196611:262148;Xi[F+4>>2]=p?196611:262148}do{if(k|0?(F=f,!((Xi[F>>2]|0)==0&(Xi[F+4>>2]|0)==0)):0){s=d+U|0;u=qi[112388+s>>0]|0;F=d+x|0;r=qi[112544+F>>0]|0;do{if(!(s>>>0<68|F>>>0<68)){f=Gi[v>>1]|0;if(f<<16>>16>3){nV[Xi[e+64>>2]&255](l,t,u,r);break}else{Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+52>>2]&127](l,t,u,r,z);break}}}while(0);if(L){s=O+U|0;u=qi[112388+s>>0]|0;r=O+x|0;f=qi[112544+r>>0]|0;r=s>>>0<68|r>>>0<68;if(H){do{if(!r){r=Gi[v>>1]|0;if(r<<16>>16>3)nV[Xi[e+64>>2]&255](a,t,u,f);else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+52>>2]&127](a,t,u,f,z)}r=Gi[v>>1]|0;if(r<<16>>16>3){nV[Xi[e+64>>2]&255](n,t,u,f);break}else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+2>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+4>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+6>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+52>>2]&127](n,t,u,f,z);break}}}while(0);break}else{do{if(!r){r=Gi[v>>1]|0;if(r<<16>>16>3)nV[Xi[e+88>>2]&255](a,o,u,f);else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+76>>2]&127](a,o,u,f,z)}r=Gi[v>>1]|0;if(r<<16>>16>3){nV[Xi[e+88>>2]&255](n,o,u,f);break}else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+2>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+4>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+6>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+76>>2]&127](n,o,u,f,z);break}}}while(0);break}}}}while(0);do{if((h|0)==1){if(C|0?(A=v+32|0,B=A,P=Xi[B>>2]|0,y=P&65535,!((P|0)==0&(Xi[B+4>>2]|0)==0)):0){f=D+U|0;s=qi[112388+f>>0]|0;B=D+x|0;r=qi[112544+B>>0]|0;do{if(!(f>>>0<68|B>>>0<68))if(y<<16>>16>3){nV[Xi[e+60>>2]&255](l,t,s,r);break}else{Wi[z>>0]=Wi[(y<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l,t,s,r,z);break}}while(0);if(L){s=I+U|0;u=qi[112388+s>>0]|0;r=I+x|0;f=qi[112544+r>>0]|0;r=s>>>0<68|r>>>0<68;if(H){do{if(!r){r=Gi[A>>1]|0;if(r<<16>>16>3)nV[Xi[e+60>>2]&255](a,t,u,f);else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](a,t,u,f,z)}r=Gi[A>>1]|0;if(r<<16>>16>3){nV[Xi[e+60>>2]&255](n,t,u,f);break}else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](n,t,u,f,z);break}}}while(0);break}else{do{if(!r){r=Gi[A>>1]|0;if(r<<16>>16>3)nV[Xi[e+84>>2]&255](a,o,u,f);else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](a,o,u,f,z)}r=Gi[A>>1]|0;if(r<<16>>16>3){nV[Xi[e+84>>2]&255](n,o,u,f);break}else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](n,o,u,f,z);break}}}while(0);break}}}}else{if(c){w=v+16|0;T=w;u=Xi[T>>2]|0;do{if(!((u|0)==0&(Xi[T+4>>2]|0)==0)){r=1<<N;h=r<<3;f=P+U|0;s=P+x|0;if(!(f>>>0<68|s>>>0<68)){N=qi[112544+s>>0]|0;T=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(u<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+18>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+20>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+22>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+52>>2]&127](l+h|0,t,T,N,z)}if(L)if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){N=qi[112544+f>>0]|0;T=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[w>>1]|0)+(112700+(r<<2))>>0]|0;m=v+18|0;p=z+1|0;Wi[p>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;F=v+20|0;y=z+2|0;Wi[y>>0]=Wi[(Gi[F>>1]|0)+(112700+(r<<2))>>0]|0;O=v+22|0;A=z+3|0;Wi[A>>0]=Wi[(Gi[O>>1]|0)+(112700+(r<<2))>>0]|0;R=e+52|0;Uz[Xi[R>>2]&127](a+h|0,t,T,N,z);Wi[z>>0]=Wi[(Gi[w>>1]|0)+(112700+(r<<2))>>0]|0;Wi[p>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;Wi[y>>0]=Wi[(Gi[F>>1]|0)+(112700+(r<<2))>>0]|0;Wi[A>>0]=Wi[(Gi[O>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[R>>2]&127](n+h|0,t,T,N,z)}break}else{r=r<<2;f=B+U|0;s=B+x|0;if(!(f>>>0<68|s>>>0<68)){N=qi[112544+s>>0]|0;T=qi[112388+f>>0]|0;Wi[z>>0]=(qi[(Gi[w>>1]|0)+(112700+(f<<2))>>0]|0)+1;m=v+18|0;p=z+1|0;Wi[p>>0]=(qi[(Gi[m>>1]|0)+(112700+(f<<2))>>0]|0)+1;F=v+20|0;y=z+2|0;Wi[y>>0]=(qi[(Gi[F>>1]|0)+(112700+(f<<2))>>0]|0)+1;O=v+22|0;A=z+3|0;Wi[A>>0]=(qi[(Gi[O>>1]|0)+(112700+(f<<2))>>0]|0)+1;R=e+76|0;Uz[Xi[R>>2]&127](a+r|0,o,T,N,z);Wi[z>>0]=(qi[(Gi[w>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[p>>0]=(qi[(Gi[m>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[y>>0]=(qi[(Gi[F>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[A>>0]=(qi[(Gi[O>>1]|0)+(112700+(f<<2))>>0]|0)+1;Uz[Xi[R>>2]&127](n+r|0,o,T,N,z)}break}}}while(0);do{if(C|0?(M=v+32|0,C=M,N=Xi[C>>2]|0,g=N&65535,!((N|0)==0&(Xi[C+4>>2]|0)==0)):0){f=D+U|0;s=qi[112388+f>>0]|0;C=D+x|0;r=qi[112544+C>>0]|0;do{if(!(f>>>0<68|C>>>0<68))if(g<<16>>16>3){nV[Xi[e+60>>2]&255](l,t,s,r);break}else{Wi[z>>0]=Wi[(g<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l,t,s,r,z);break}}while(0);if(L){s=I+U|0;u=qi[112388+s>>0]|0;r=I+x|0;f=qi[112544+r>>0]|0;r=s>>>0<68|r>>>0<68;if(H){do{if(!r){r=Gi[M>>1]|0;if(r<<16>>16>3)nV[Xi[e+60>>2]&255](a,t,u,f);else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](a,t,u,f,z)}r=Gi[M>>1]|0;if(r<<16>>16>3){nV[Xi[e+60>>2]&255](n,t,u,f);break}else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](n,t,u,f,z);break}}}while(0);break}else{do{if(!r){r=Gi[M>>1]|0;if(r<<16>>16>3)nV[Xi[e+84>>2]&255](a,o,u,f);else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](a,o,u,f,z)}r=Gi[M>>1]|0;if(r<<16>>16>3){nV[Xi[e+84>>2]&255](n,o,u,f);break}else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](n,o,u,f,z);break}}}while(0);break}}}}while(0);h=v+48|0;I=h;f=Xi[I>>2]|0;if((f|0)==0&(Xi[I+4>>2]|0)==0)break;u=t<<3;s=P+U|0;r=P+x|0;if(!(s>>>0<68|r>>>0<68)){I=qi[112544+r>>0]|0;P=qi[112388+s>>0]|0;Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+50>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+52>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+54>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l+u|0,t,P,I,z)}if(!L)break;if(H){f=B+U|0;r=B+x|0;if(!(f>>>0<68|r>>>0<68)){x=qi[112544+r>>0]|0;o=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0;L=v+50|0;I=z+1|0;Wi[I>>0]=Wi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0;l=v+52|0;H=z+2|0;Wi[H>>0]=Wi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0;B=v+54|0;U=z+3|0;Wi[U>>0]=Wi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0;e=e+48|0;Uz[Xi[e>>2]&127](a+u|0,t,o,x,z);Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0;Wi[I>>0]=Wi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0;Wi[H>>0]=Wi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0;Wi[U>>0]=Wi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e>>2]&127](n+u|0,t,o,x,z)}break}else{s=o<<2;f=B+U|0;r=B+x|0;if(!(f>>>0<68|r>>>0<68)){x=qi[112544+r>>0]|0;t=qi[112388+f>>0]|0;Wi[z>>0]=(qi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0)+1;L=v+50|0;I=z+1|0;Wi[I>>0]=(qi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0)+1;l=v+52|0;H=z+2|0;Wi[H>>0]=(qi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0)+1;B=v+54|0;U=z+3|0;Wi[U>>0]=(qi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0)+1;e=e+72|0;Uz[Xi[e>>2]&127](a+s|0,o,t,x,z);Wi[z>>0]=(qi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[I>>0]=(qi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[H>>0]=(qi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[U>>0]=(qi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0)+1;Uz[Xi[e>>2]&127](n+s|0,o,t,x,z)}break}}u=v+8|0;M=u;r=Xi[M>>2]|0;if(!((r|0)==0&(Xi[M+4>>2]|0)==0)){h=4<<N;f=P+U|0;s=P+x|0;if(!(f>>>0<68|s>>>0<68)){M=qi[112544+s>>0]|0;g=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(r<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+10>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+12>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+14>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+52>>2]&127](l+h|0,t,g,M,z)}if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){M=qi[112544+f>>0]|0;g=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(r<<2))>>0]|0;_=v+10|0;m=z+1|0;Wi[m>>0]=Wi[(Gi[_>>1]|0)+(112700+(r<<2))>>0]|0;p=v+12|0;F=z+2|0;Wi[F>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;y=v+14|0;O=z+3|0;Wi[O>>0]=Wi[(Gi[y>>1]|0)+(112700+(r<<2))>>0]|0;A=e+52|0;Uz[Xi[A>>2]&127](a+h|0,t,g,M,z);Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(r<<2))>>0]|0;Wi[m>>0]=Wi[(Gi[_>>1]|0)+(112700+(r<<2))>>0]|0;Wi[F>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;Wi[O>>0]=Wi[(Gi[y>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[A>>2]&127](n+h|0,t,g,M,z)}}}w=v+16|0;M=w;r=Xi[M>>2]|0;do{if(!((r|0)==0&(Xi[M+4>>2]|0)==0)){f=1<<N;h=f<<3;s=P+U|0;u=P+x|0;if(!(s>>>0<68|u>>>0<68)){M=qi[112544+u>>0]|0;g=qi[112388+s>>0]|0;Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+18>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+20>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+22>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+52>>2]&127](l+h|0,t,g,M,z)}if(L)if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){M=qi[112544+f>>0]|0;g=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[w>>1]|0)+(112700+(r<<2))>>0]|0;_=v+18|0;m=z+1|0;Wi[m>>0]=Wi[(Gi[_>>1]|0)+(112700+(r<<2))>>0]|0;p=v+20|0;F=z+2|0;Wi[F>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;y=v+22|0;O=z+3|0;Wi[O>>0]=Wi[(Gi[y>>1]|0)+(112700+(r<<2))>>0]|0;A=e+52|0;Uz[Xi[A>>2]&127](a+h|0,t,g,M,z);Wi[z>>0]=Wi[(Gi[w>>1]|0)+(112700+(r<<2))>>0]|0;Wi[m>>0]=Wi[(Gi[_>>1]|0)+(112700+(r<<2))>>0]|0;Wi[F>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;Wi[O>>0]=Wi[(Gi[y>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[A>>2]&127](n+h|0,t,g,M,z)}break}else{r=f<<2;f=B+U|0;s=B+x|0;if(!(f>>>0<68|s>>>0<68)){M=qi[112544+s>>0]|0;g=qi[112388+f>>0]|0;Wi[z>>0]=(qi[(Gi[w>>1]|0)+(112700+(f<<2))>>0]|0)+1;_=v+18|0;m=z+1|0;Wi[m>>0]=(qi[(Gi[_>>1]|0)+(112700+(f<<2))>>0]|0)+1;p=v+20|0;F=z+2|0;Wi[F>>0]=(qi[(Gi[p>>1]|0)+(112700+(f<<2))>>0]|0)+1;y=v+22|0;O=z+3|0;Wi[O>>0]=(qi[(Gi[y>>1]|0)+(112700+(f<<2))>>0]|0)+1;A=e+76|0;Uz[Xi[A>>2]&127](a+r|0,o,g,M,z);Wi[z>>0]=(qi[(Gi[w>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[m>>0]=(qi[(Gi[_>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[F>>0]=(qi[(Gi[p>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[O>>0]=(qi[(Gi[y>>1]|0)+(112700+(f<<2))>>0]|0)+1;Uz[Xi[A>>2]&127](n+r|0,o,g,M,z)}break}}}while(0);h=v+24|0;M=h;s=Xi[M>>2]|0;if(!((s|0)==0&(Xi[M+4>>2]|0)==0)){u=12<<N;r=P+U|0;f=P+x|0;if(!(r>>>0<68|f>>>0<68)){N=qi[112544+f>>0]|0;M=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(s<<16>>16)+(112700+(r<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+26>>1]|0)+(112700+(r<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+28>>1]|0)+(112700+(r<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+30>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[e+52>>2]&127](l+u|0,t,M,N,z)}if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){N=qi[112544+f>>0]|0;M=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(r<<2))>>0]|0;m=v+26|0;p=z+1|0;Wi[p>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;F=v+28|0;y=z+2|0;Wi[y>>0]=Wi[(Gi[F>>1]|0)+(112700+(r<<2))>>0]|0;O=v+30|0;A=z+3|0;Wi[A>>0]=Wi[(Gi[O>>1]|0)+(112700+(r<<2))>>0]|0;g=e+52|0;Uz[Xi[g>>2]&127](a+u|0,t,M,N,z);Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(r<<2))>>0]|0;Wi[p>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;Wi[y>>0]=Wi[(Gi[F>>1]|0)+(112700+(r<<2))>>0]|0;Wi[A>>0]=Wi[(Gi[O>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[g>>2]&127](n+u|0,t,M,N,z)}}}do{if(C|0?(T=v+32|0,C=T,N=Xi[C>>2]|0,R=N&65535,!((N|0)==0&(Xi[C+4>>2]|0)==0)):0){f=D+U|0;s=qi[112388+f>>0]|0;C=D+x|0;r=qi[112544+C>>0]|0;do{if(!(f>>>0<68|C>>>0<68))if(R<<16>>16>3){nV[Xi[e+60>>2]&255](l,t,s,r);break}else{Wi[z>>0]=Wi[(R<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l,t,s,r,z);break}}while(0);if(L){s=I+U|0;u=qi[112388+s>>0]|0;r=I+x|0;f=qi[112544+r>>0]|0;r=s>>>0<68|r>>>0<68;if(H){do{if(!r){r=Gi[T>>1]|0;if(r<<16>>16>3)nV[Xi[e+60>>2]&255](a,t,u,f);else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](a,t,u,f,z)}r=Gi[T>>1]|0;if(r<<16>>16>3){nV[Xi[e+60>>2]&255](n,t,u,f);break}else{Wi[z>>0]=Wi[(r<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](n,t,u,f,z);break}}}while(0);break}else{do{if(!r){r=Gi[T>>1]|0;if(r<<16>>16>3)nV[Xi[e+84>>2]&255](a,o,u,f);else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](a,o,u,f,z)}r=Gi[T>>1]|0;if(r<<16>>16>3){nV[Xi[e+84>>2]&255](n,o,u,f);break}else{Wi[z>>0]=(qi[(r<<16>>16)+(112700+(s<<2))>>0]|0)+1;Wi[z+1>>0]=(qi[(Gi[v+34>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+2>>0]=(qi[(Gi[v+36>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[z+3>>0]=(qi[(Gi[v+38>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[e+72>>2]&127](n,o,u,f,z);break}}}while(0);break}}}}while(0);u=v+40|0;I=u;r=Xi[I>>2]|0;if(!((r|0)==0&(Xi[I+4>>2]|0)==0)){h=t<<2;f=P+U|0;s=P+x|0;if(!(f>>>0<68|s>>>0<68)){I=qi[112544+s>>0]|0;C=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(r<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+42>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+44>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+46>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l+h|0,t,C,I,z)}if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){I=qi[112544+f>>0]|0;C=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(r<<2))>>0]|0;A=v+42|0;g=z+1|0;Wi[g>>0]=Wi[(Gi[A>>1]|0)+(112700+(r<<2))>>0]|0;M=v+44|0;R=z+2|0;Wi[R>>0]=Wi[(Gi[M>>1]|0)+(112700+(r<<2))>>0]|0;T=v+46|0;N=z+3|0;Wi[N>>0]=Wi[(Gi[T>>1]|0)+(112700+(r<<2))>>0]|0;D=e+48|0;Uz[Xi[D>>2]&127](a+h|0,t,C,I,z);Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(r<<2))>>0]|0;Wi[g>>0]=Wi[(Gi[A>>1]|0)+(112700+(r<<2))>>0]|0;Wi[R>>0]=Wi[(Gi[M>>1]|0)+(112700+(r<<2))>>0]|0;Wi[N>>0]=Wi[(Gi[T>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[D>>2]&127](n+h|0,t,C,I,z)}}}h=v+48|0;I=h;r=Xi[I>>2]|0;do{if(!((r|0)==0&(Xi[I+4>>2]|0)==0)){u=t<<3;f=P+U|0;s=P+x|0;if(!(f>>>0<68|s>>>0<68)){I=qi[112544+s>>0]|0;C=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(r<<16>>16)+(112700+(f<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+50>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+52>>1]|0)+(112700+(f<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+54>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l+u|0,t,C,I,z)}if(L)if(H){r=B+U|0;f=B+x|0;if(!(r>>>0<68|f>>>0<68)){o=qi[112544+f>>0]|0;I=qi[112388+r>>0]|0;Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(r<<2))>>0]|0;M=v+50|0;R=z+1|0;Wi[R>>0]=Wi[(Gi[M>>1]|0)+(112700+(r<<2))>>0]|0;T=v+52|0;N=z+2|0;Wi[N>>0]=Wi[(Gi[T>>1]|0)+(112700+(r<<2))>>0]|0;D=v+54|0;C=z+3|0;Wi[C>>0]=Wi[(Gi[D>>1]|0)+(112700+(r<<2))>>0]|0;L=e+48|0;Uz[Xi[L>>2]&127](a+u|0,t,I,o,z);Wi[z>>0]=Wi[(Gi[h>>1]|0)+(112700+(r<<2))>>0]|0;Wi[R>>0]=Wi[(Gi[M>>1]|0)+(112700+(r<<2))>>0]|0;Wi[N>>0]=Wi[(Gi[T>>1]|0)+(112700+(r<<2))>>0]|0;Wi[C>>0]=Wi[(Gi[D>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[L>>2]&127](n+u|0,t,I,o,z)}break}else{r=o<<2;f=B+U|0;s=B+x|0;if(!(f>>>0<68|s>>>0<68)){I=qi[112544+s>>0]|0;L=qi[112388+f>>0]|0;Wi[z>>0]=(qi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0)+1;g=v+50|0;M=z+1|0;Wi[M>>0]=(qi[(Gi[g>>1]|0)+(112700+(f<<2))>>0]|0)+1;R=v+52|0;T=z+2|0;Wi[T>>0]=(qi[(Gi[R>>1]|0)+(112700+(f<<2))>>0]|0)+1;N=v+54|0;D=z+3|0;Wi[D>>0]=(qi[(Gi[N>>1]|0)+(112700+(f<<2))>>0]|0)+1;C=e+72|0;Uz[Xi[C>>2]&127](a+r|0,o,L,I,z);Wi[z>>0]=(qi[(Gi[h>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[M>>0]=(qi[(Gi[g>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[T>>0]=(qi[(Gi[R>>1]|0)+(112700+(f<<2))>>0]|0)+1;Wi[D>>0]=(qi[(Gi[N>>1]|0)+(112700+(f<<2))>>0]|0)+1;Uz[Xi[C>>2]&127](n+r|0,o,L,I,z)}break}}}while(0);u=v+56|0;o=u;f=Xi[o>>2]|0;if(!((f|0)==0&(Xi[o+4>>2]|0)==0)){h=t*12|0;s=P+U|0;r=P+x|0;if(!(s>>>0<68|r>>>0<68)){o=qi[112544+r>>0]|0;I=qi[112388+s>>0]|0;Wi[z>>0]=Wi[(f<<16>>16)+(112700+(s<<2))>>0]|0;Wi[z+1>>0]=Wi[(Gi[v+58>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+2>>0]=Wi[(Gi[v+60>>1]|0)+(112700+(s<<2))>>0]|0;Wi[z+3>>0]=Wi[(Gi[v+62>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[e+48>>2]&127](l+h|0,t,I,o,z)}if(H){f=B+U|0;r=B+x|0;if(!(f>>>0<68|r>>>0<68)){x=qi[112544+r>>0]|0;o=qi[112388+f>>0]|0;Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(f<<2))>>0]|0;L=v+58|0;I=z+1|0;Wi[I>>0]=Wi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0;l=v+60|0;H=z+2|0;Wi[H>>0]=Wi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0;B=v+62|0;U=z+3|0;Wi[U>>0]=Wi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0;e=e+48|0;Uz[Xi[e>>2]&127](a+h|0,t,o,x,z);Wi[z>>0]=Wi[(Gi[u>>1]|0)+(112700+(f<<2))>>0]|0;Wi[I>>0]=Wi[(Gi[L>>1]|0)+(112700+(f<<2))>>0]|0;Wi[H>>0]=Wi[(Gi[l>>1]|0)+(112700+(f<<2))>>0]|0;Wi[U>>0]=Wi[(Gi[B>>1]|0)+(112700+(f<<2))>>0]|0;Uz[Xi[e>>2]&127](n+h|0,t,o,x,z)}}}}}while(0)}else V=3}while(0);if((V|0)==3)PD(e,i,r,f,l,a,n,t,o);Ue=Y;return}function PD(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;var s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0,ge=0,Me=0,Re=0,Te=0,Ne=0,De=0,Ce=0,Pe=0,Le=0,Ie=0,He=0,Be=0;Be=Ue;Ue=Ue+80|0;He=Be+72|0;p=Be+56|0;F=Be+40|0;m=Be+24|0;s=Be;Pe=e+206436|0;Ne=(Zi(Xi[Pe>>2]|0,f)|0)+r|0;De=e+24668|0;Ce=Xi[(Xi[De>>2]|0)+(Ne<<2)>>2]|0;Oe=(Ce>>>6&2^2)+2|0;Ae=e+26672|0;ge=(Xi[Ae>>2]|0)!=0;Re=(Zi(Xi[e+27844>>2]|0,-6)|0)+48|0;Me=(Xi[i+848>>2]|0)+52+Re|0;Re=(Xi[i+852>>2]|0)+52+Re|0;Te=e+205808|0;ye=i+21716|0;do{if((Xi[Te>>2]|0)!=0?(Fe=Xi[ye>>2]|0,!((Fe|0)==0|((Fe^Ce)&128|0)==0)):0){r=s+7&-8;_=r;if(!(Ce&7)){h=f&1;r=Xi[i+21796>>2]|0;w=e+31968|0;k=e+26256|0;b=e+205824|0;c=(r|0)!=0;d=0;do{u=c?d>>2:d&1;s=Xi[i+21696+(u<<2)>>2]|0;u=Xi[i+21716+(u<<2)>>2]|0;if(!(u&7)){if((u&16777216|0)==0|(Xi[w>>2]|0)!=0)s=qi[(qi[112356+(r<<4)+(h<<3)+d>>0]|0)+((Xi[k>>2]|0)+(s*48|0))>>0]|0;else s=Ji[(Xi[b>>2]|0)+(s<<1)>>1]&((c?d&2:h)|0?32768:8192);Gi[_+(d<<1)>>1]=s|qi[(d>>>1<<3)+12+(i+43648)>>0]|0?2:1}else Gi[_+(d<<1)>>1]=4;d=d+1|0}while((d|0)!=8)}else{Xi[r>>2]=262148;Xi[r+4>>2]=262148;r=_+8|0;Xi[r>>2]=262148;Xi[r+4>>2]=262148;r=Xi[i+21796>>2]|0}S=Xi[e+24644>>2]|0;Fe=Wi[S+Ne>>0]|0;E=Wi[S+(Xi[i+21696>>2]|0)>>0]|0;S=Wi[S+(Xi[i+21700>>2]|0)>>0]|0;b=Fe+1|0;v=(qi[e+32512+Fe>>0]|0)+1|0;Fe=(qi[e+32600+Fe>>0]|0)+1|0;s=b+E>>1;c=(v+(qi[e+32512+E>>0]|0)|0)>>>1;E=(Fe+(qi[e+32600+E>>0]|0)|0)>>>1;b=b+S>>1;v=(v+(qi[e+32512+S>>0]|0)|0)>>>1;S=(Fe+(qi[e+32600+S>>0]|0)|0)>>>1;if(!r){k=t<<1;u=s+Me|0;h=qi[112388+u>>0]|0;Fe=s+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](l,k,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+8>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](l,k,h,r,He);break}}}while(0);u=l+t|0;d=_+2|0;h=b+Me|0;w=qi[112388+h>>0]|0;Fe=b+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](u,k,w,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,k,w,r,He);break}}}while(0);if(!ge){Fe=1;break}k=o<<1;u=c+Me|0;h=qi[112388+u>>0]|0;r=c+Re|0;s=qi[112544+r>>0]|0;r=u>>>0<68|r>>>0<68;if((Xi[Ae>>2]|0)==3){do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[e+68>>2]&255](a,k,h,s);break}else{Wi[He>>0]=Wi[(r<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+8>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](a,k,h,s,He);break}}}while(0);u=a+o|0;h=v+Me|0;w=qi[112388+h>>0]|0;Fe=v+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](u,k,w,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,k,w,r,He);break}}}while(0);u=E+Me|0;h=qi[112388+u>>0]|0;Fe=E+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](n,k,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+8>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](n,k,h,r,He);break}}}while(0);u=n+o|0;h=S+Me|0;w=qi[112388+h>>0]|0;Fe=S+Re|0;s=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){r=Gi[d>>1]|0;if(r<<16>>16>3){nV[Xi[e+68>>2]&255](u,k,w,s);break}else{Wi[He>>0]=Wi[(r<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,k,w,s,He);break}}}while(0);Fe=1;break}else{do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[e+92>>2]&255](a,k,h,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+8>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](a,k,h,s,He);break}}}while(0);h=a+o|0;w=v+Me|0;u=qi[112388+w>>0]|0;Fe=v+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(w>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](h,k,u,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(w<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+6>>1]|0)+(112700+(w<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(w<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(w<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](h,k,u,r,He);break}}}while(0);u=E+Me|0;h=qi[112388+u>>0]|0;Fe=E+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](n,k,h,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+8>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](n,k,h,r,He);break}}}while(0);u=n+o|0;h=S+Me|0;w=qi[112388+h>>0]|0;Fe=S+Re|0;s=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){r=Gi[d>>1]|0;if(r<<16>>16>3){nV[Xi[e+92>>2]&255](u,k,w,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+6>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](u,k,w,s,He);break}}}while(0);Fe=1;break}}u=s+Me|0;h=qi[112388+u>>0]|0;Fe=s+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](l,t,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+2>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](l,t,h,r,He);break}}}while(0);u=l+(t<<3)|0;d=_+8|0;h=b+Me|0;w=qi[112388+h>>0]|0;Fe=b+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](u,t,w,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,t,w,r,He);break}}}while(0);if(ge){r=Xi[Ae>>2]|0;if((r|0)==3){u=c+Me|0;h=qi[112388+u>>0]|0;Fe=c+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](a,o,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+2>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](a,o,h,r,He);break}}}while(0);k=o<<3;u=a+k|0;h=v+Me|0;w=qi[112388+h>>0]|0;Fe=v+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](u,o,w,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,o,w,r,He);break}}}while(0);u=E+Me|0;h=qi[112388+u>>0]|0;Fe=E+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+68>>2]&255](n,o,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+2>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+6>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[e+56>>2]&127](n,o,h,r,He);break}}}while(0);u=n+k|0;h=S+Me|0;w=qi[112388+h>>0]|0;Fe=S+Re|0;s=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){r=Gi[d>>1]|0;if(r<<16>>16>3){nV[Xi[e+68>>2]&255](u,o,w,s);break}else{Wi[He>>0]=Wi[(r<<16>>16)+(112700+(h<<2))>>0]|0;Wi[He+1>>0]=Wi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+2>>0]=Wi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0;Wi[He+3>>0]=Wi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[e+56>>2]&127](u,o,w,s,He);break}}}while(0);Fe=1;break}u=(r|0)==2;h=c+Me|0;w=qi[112388+h>>0]|0;Fe=c+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](a,o,w,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+2>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+4>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+6>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](a,o,w,r,He);break}}}while(0);if(u){k=o<<3;u=a+k|0;h=v+Me|0;w=qi[112388+h>>0]|0;Fe=v+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](u,o,w,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](u,o,w,r,He);break}}}while(0);u=E+Me|0;h=qi[112388+u>>0]|0;Fe=E+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](n,o,h,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+2>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+6>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](n,o,h,r,He);break}}}while(0);u=n+k|0;h=S+Me|0;w=qi[112388+h>>0]|0;Fe=S+Re|0;s=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){r=Gi[d>>1]|0;if(r<<16>>16>3){nV[Xi[e+92>>2]&255](u,o,w,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](u,o,w,s,He);break}}}while(0);Fe=1;break}else{k=o<<2;u=a+k|0;h=v+Me|0;w=qi[112388+h>>0]|0;Fe=v+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){s=Gi[d>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](u,o,w,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](u,o,w,r,He);break}}}while(0);u=E+Me|0;h=qi[112388+u>>0]|0;Fe=E+Re|0;r=qi[112544+Fe>>0]|0;do{if(!(u>>>0<68|Fe>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[e+92>>2]&255](n,o,h,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+2>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+4>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+6>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](n,o,h,r,He);break}}}while(0);u=n+k|0;h=S+Me|0;w=qi[112388+h>>0]|0;Fe=S+Re|0;s=qi[112544+Fe>>0]|0;do{if(!(h>>>0<68|Fe>>>0<68)){r=Gi[d>>1]|0;if(r<<16>>16>3){nV[Xi[e+92>>2]&255](u,o,w,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(h<<2))>>0]|0)+1;Wi[He+1>>0]=(qi[(Gi[_+10>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+2>>0]=(qi[(Gi[_+12>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[He+3>>0]=(qi[(Gi[_+14>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[e+80>>2]&127](u,o,w,s,He);break}}}while(0);Fe=1;break}}else Fe=1}else Fe=0}while(0);Se=Ne+-1|0;_e=i+21708|0;me=Ce>>>3&7;pe=i+21824|0;Ee=m+7&-8;$=Ee;ee=Ce&16777216;ie=(Ce&7|0)==0;re=$+6|0;fe=$+4|0;le=$+2|0;ae=Ee;ne=e+24644|0;te=e+25960|0;oe=i+828|0;se=i+832|0;ue=He+1|0;he=He+2|0;we=He+3|0;ke=e+52|0;be=e+76|0;ce=t<<2;de=e+48|0;ve=e+72|0;q=(f&1|0)==0;J=Ce&128^128;Z=t<<1;Q=o<<1;X=p+7&-8;H=X;B=e+31968|0;U=e+26256|0;x=e+205824|0;z=i+43660|0;V=i+43661|0;Y=H+2|0;j=H+4|0;K=H+6|0;W=i+43663|0;G=i+43662|0;y=F+7&-8;_=y;m=_+6|0;f=_+4|0;p=_+2|0;F=y;O=e+64|0;A=e+88|0;g=e+60|0;M=e+84|0;R=e+205812|0;T=i+21688|0;I=0;do{S=(I|0)!=0;D=Xi[Ae>>2]|0;N=(D|0)==3;D=(D|0)==2;C=(I|0)==0;if(C)b=Se;else b=Xi[T>>2]|0;r=Xi[(C?ye:_e)>>2]|0;L=Wi[113324+(I<<3)+me>>0]|0;P=L&255;if(L<<24>>24==3)v=(Xi[pe>>2]&15|0)==0;else v=0;L=v?1:4;s=32>>>I|8;E=s&Ce;w=S^1;e:do{if(!(Fe&w|(r|0)==0)){u=Xi[Te>>2]|0;if(!((r&J|0)==0|q&((I|0)==1&(u|0)!=0)^1)){c=0;d=Ne-(Xi[Pe>>2]<<1)|0;while(1){r=Xi[(Xi[De>>2]|0)+(d<<2)>>2]|0;do{if(!((r|Ce)&7)){if((r&16777216|0)==0|(Xi[B>>2]|0)!=0){b=Xi[U>>2]|0;Gi[H>>1]=(Wi[b+(d*48|0)+12>>0]|Wi[z>>0])<<24>>24?2:1;Gi[Y>>1]=(Wi[b+(d*48|0)+13>>0]|Wi[V>>0])<<24>>24?2:1;Gi[j>>1]=(Wi[b+(d*48|0)+14>>0]|Wi[G>>0])<<24>>24?2:1;Gi[K>>1]=(Wi[b+(d*48|0)+15>>0]|Wi[W>>0])<<24>>24?2:1;break}s=(Xi[x>>2]|0)+(d<<1)|0;if(!(Gi[s>>1]&16384))r=(Wi[z>>0]|0)!=0;else r=1;Gi[H>>1]=r?2:1;if(!(Gi[s>>1]&16384))r=(Wi[V>>0]|0)!=0;else r=1;Gi[Y>>1]=r?2:1;if((Gi[s>>1]|0)<0)r=1;else r=(Wi[G>>0]|0)!=0;Gi[j>>1]=r?2:1;if((Gi[s>>1]|0)<0)r=1;else r=(Wi[W>>0]|0)!=0;Gi[K>>1]=r?2:1}else{b=X;Xi[b>>2]=196611;Xi[b+4>>2]=196611}}while(0);r=Xi[ne>>2]|0;u=(Wi[r+Ne>>0]|0)+1+(Wi[r+d>>0]|0)>>1;s=u+Me|0;u=u+Re|0;if(!(s>>>0<68|u>>>0<68)){r=qi[112544+u>>0]|0;b=qi[112388+s>>0]|0;k=l+(Zi(c,t)|0)|0;Wi[He>>0]=Wi[(Gi[H>>1]|0)+(112700+(s<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[Y>>1]|0)+(112700+(s<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[j>>1]|0)+(112700+(s<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[K>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[de>>2]&127](k,Z,b,r,He);r=Xi[ne>>2]|0}k=Wi[r+d>>0]|0;r=(Xi[oe>>2]|0)+1+(qi[e+32512+k>>0]|0)>>1;k=(Xi[se>>2]|0)+1+(qi[e+32600+k>>0]|0)>>1;do{if(ge){b=Zi(c,o)|0;u=a+b|0;h=r+Me|0;w=qi[112388+h>>0]|0;s=r+Re|0;r=qi[112544+s>>0]|0;s=h>>>0<68|s>>>0<68;if(N){if(!s){Wi[He>>0]=Wi[(Gi[H>>1]|0)+(112700+(h<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[Y>>1]|0)+(112700+(h<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[j>>1]|0)+(112700+(h<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[K>>1]|0)+(112700+(h<<2))>>0]|0;Uz[Xi[de>>2]&127](u,Q,w,r,He)}s=k+Me|0;r=k+Re|0;if(!(s>>>0<68|r>>>0<68)){k=qi[112544+r>>0]|0;w=qi[112388+s>>0]|0;Wi[He>>0]=Wi[(Gi[H>>1]|0)+(112700+(s<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[Y>>1]|0)+(112700+(s<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[j>>1]|0)+(112700+(s<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[K>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[de>>2]&127](n+b|0,Q,w,k,He)}break}else{if(!s){Wi[He>>0]=(qi[(Gi[H>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[Y>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[j>>1]|0)+(112700+(h<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[K>>1]|0)+(112700+(h<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](u,Q,w,r,He)}s=k+Me|0;r=k+Re|0;if(!(s>>>0<68|r>>>0<68)){k=qi[112544+r>>0]|0;w=qi[112388+s>>0]|0;Wi[He>>0]=(qi[(Gi[H>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[Y>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[j>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[K>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](n+b|0,Q,w,k,He)}break}}}while(0);c=c+1|0;if((c|0)==2)break e;else d=(Xi[Pe>>2]|0)+d|0}}h=r|Ce;i:do{if(!(h&7)){if(!((u|0)==0|w)?((r^Ce)&128|0)!=0:0){w=F;Xi[w>>2]=65537;Xi[w+4>>2]=65537;w=0}else if((E|0)==0|(r&s|0)==0)w=1;else{w=(LD(i,12,S?4:11,Oe)|0)&65535;Gi[m>>1]=w;Gi[f>>1]=w;Gi[p>>1]=w;Gi[_>>1]=w;w=0}r=S?8:1;h=0;do{s=(C?12:h+12|0)+(C?h<<3:0)|0;u=s-r|0;if(!((Wi[i+43648+u>>0]|Wi[i+43648+s>>0])<<24>>24)){if(w)Gi[_+(h<<1)>>1]=LD(i,s,u,Oe)|0}else Gi[_+(h<<1)>>1]=2;h=h+1|0}while((h|0)!=4)}else{d=F;Xi[d>>2]=196611;Xi[d+4>>2]=196611;do{if(h&128|0)if(!(Xi[Te>>2]|0))if(C&(Xi[R>>2]|0)!=3)break;else break i;else if(C)break;else break i}while(0);d=F;Xi[d>>2]=262148;Xi[d+4>>2]=262148}}while(0);c=Xi[y>>2]|0;w=c&65535;k=c<<16>>16;d=Xi[f>>2]|0;if((k+(c>>16)+(d<<16>>16)|0)!=(0-(d>>16)|0)){h=Xi[ne>>2]|0;c=Wi[h+b>>0]|0;h=(Wi[h+Ne>>0]|0)+1+c>>1;b=(Xi[oe>>2]|0)+1+(qi[e+32512+c>>0]|0)>>1;c=(Xi[se>>2]|0)+1+(qi[e+32600+c>>0]|0)>>1;r=h+Me|0;s=qi[112388+r>>0]|0;h=h+Re|0;u=qi[112544+h>>0]|0;h=r>>>0<68|h>>>0<68;if(C){do{if(!h)if(w<<16>>16>3){nV[Xi[O>>2]&255](l,t,s,u);break}else{Wi[He>>0]=Wi[112700+(r<<2)+k>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(r<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[ke>>2]&127](l,t,s,u,He);break}}while(0);if(!ge)break;u=b+Me|0;h=qi[112388+u>>0]|0;r=b+Re|0;s=qi[112544+r>>0]|0;r=u>>>0<68|r>>>0<68;if(N){do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[O>>2]&255](a,o,h,s);break}else{Wi[He>>0]=Wi[(r<<16>>16)+(112700+(u<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[ke>>2]&127](a,o,h,s,He);break}}}while(0);u=c+Me|0;h=qi[112388+u>>0]|0;d=c+Re|0;r=qi[112544+d>>0]|0;do{if(!(u>>>0<68|d>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[O>>2]&255](n,o,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[ke>>2]&127](n,o,h,r,He);break}}}while(0);break}else{do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[A>>2]&255](a,o,h,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[be>>2]&127](a,o,h,s,He);break}}}while(0);u=c+Me|0;h=qi[112388+u>>0]|0;d=c+Re|0;r=qi[112544+d>>0]|0;do{if(!(u>>>0<68|d>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[A>>2]&255](n,o,h,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[be>>2]&127](n,o,h,r,He);break}}}while(0);break}}else{do{if(!h)if(w<<16>>16>3){nV[Xi[g>>2]&255](l,t,s,u);break}else{Wi[He>>0]=Wi[112700+(r<<2)+k>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(r<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(r<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[de>>2]&127](l,t,s,u,He);break}}while(0);if(!ge)break;u=b+Me|0;h=qi[112388+u>>0]|0;r=b+Re|0;s=qi[112544+r>>0]|0;r=u>>>0<68|r>>>0<68;if(N){do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[g>>2]&255](a,o,h,s);break}else{Wi[He>>0]=Wi[(r<<16>>16)+(112700+(u<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[de>>2]&127](a,o,h,s,He);break}}}while(0);u=c+Me|0;h=qi[112388+u>>0]|0;d=c+Re|0;r=qi[112544+d>>0]|0;do{if(!(u>>>0<68|d>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[g>>2]&255](n,o,h,r);break}else{Wi[He>>0]=Wi[(s<<16>>16)+(112700+(u<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[de>>2]&127](n,o,h,r,He);break}}}while(0);break}else{do{if(!r){r=Gi[_>>1]|0;if(r<<16>>16>3){nV[Xi[M>>2]&255](a,o,h,s);break}else{Wi[He>>0]=(qi[(r<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](a,o,h,s,He);break}}}while(0);u=c+Me|0;h=qi[112388+u>>0]|0;d=c+Re|0;r=qi[112544+d>>0]|0;do{if(!(u>>>0<68|d>>>0<68)){s=Gi[_>>1]|0;if(s<<16>>16>3){nV[Xi[M>>2]&255](n,o,h,r);break}else{Wi[He>>0]=(qi[(s<<16>>16)+(112700+(u<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[p>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[f>>1]|0)+(112700+(u<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[m>>1]|0)+(112700+(u<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](n,o,h,r,He);break}}}while(0);break}}}}}while(0);if(!v){d=C|D^1;c=(E|0)==0;k=S?8:1;b=1;do{w=(ee&b<<24|0)==0;do{if(!(d&(w^1))){if(ie){if(!(b&P))if(c)h=1;else{h=(Zi(b,k)|0)+12|0;h=(LD(i,h,h-k|0,Oe)|0)&65535;Gi[re>>1]=h;Gi[fe>>1]=h;Gi[le>>1]=h;Gi[$>>1]=h;h=0}else{h=ae;Xi[h>>2]=0;Xi[h+4>>2]=0;h=0}u=0;do{r=(C?b:u)+12+((C?u:b)<<3)|0;s=r-k|0;if(!((Wi[i+43648+s>>0]|Wi[i+43648+r>>0])<<24>>24)){if(h)Gi[$+(u<<1)>>1]=LD(i,r,s,Oe)|0}else Gi[$+(u<<1)>>1]=2;u=u+1|0}while((u|0)!=4);E=Xi[Ee>>2]|0;S=Xi[fe>>2]|0;if(((E<<16>>16)+(E>>16)+(S<<16>>16)|0)==(0-(S>>16)|0))break}else{S=ae;Xi[S>>2]=196611;Xi[S+4>>2]=196611}r=Wi[(Xi[ne>>2]|0)+Ne>>0]|0;if(C){h=b<<2;s=r+Me|0;r=r+Re|0;if(!(s>>>0<68|r>>>0<68)){S=qi[112544+r>>0]|0;E=qi[112388+s>>0]|0;v=l+(h<<Xi[te>>2])|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(s<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(s<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(s<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[ke>>2]&127](v,t,E,S,He)}if(!ge)break;if(N){r=Xi[te>>2]|0;u=Xi[oe>>2]|0;s=u+Me|0;u=u+Re|0;if(!(s>>>0<68|u>>>0<68)){S=qi[112544+u>>0]|0;E=qi[112388+s>>0]|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(s<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(s<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(s<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[ke>>2]&127](a+(h<<r)|0,o,E,S,He);r=Xi[te>>2]|0}u=Xi[se>>2]|0;s=u+Me|0;u=u+Re|0;if(!(s>>>0<68|u>>>0<68)){S=qi[112544+u>>0]|0;E=qi[112388+s>>0]|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(s<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(s<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(s<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(s<<2))>>0]|0;Uz[Xi[ke>>2]&127](n+(h<<r)|0,o,E,S,He)}break}if(b&1|0)break;h=b<<1;r=Xi[te>>2]|0;u=Xi[oe>>2]|0;s=u+Me|0;u=u+Re|0;if(!(s>>>0<68|u>>>0<68)){S=qi[112544+u>>0]|0;E=qi[112388+s>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[be>>2]&127](a+(h<<r)|0,o,E,S,He);r=Xi[te>>2]|0}u=Xi[se>>2]|0;s=u+Me|0;u=u+Re|0;if(!(s>>>0<68|u>>>0<68)){S=qi[112544+u>>0]|0;E=qi[112388+s>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(s<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(s<<2))>>0]|0)+1;Uz[Xi[be>>2]&127](n+(h<<r)|0,o,E,S,He)}break}if(D){if(w?(Le=r+Me|0,Ie=r+Re|0,!(Le>>>0<68|Ie>>>0<68)):0){S=qi[112544+Ie>>0]|0;E=qi[112388+Le>>0]|0;v=l+(Zi(ce,b)|0)|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(Le<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(Le<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(Le<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(Le<<2))>>0]|0;Uz[Xi[de>>2]&127](v,t,E,S,He)}if(!ge)break;u=Zi(b<<2,o)|0;s=Xi[oe>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](a+u|0,o,E,S,He)}s=Xi[se>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](n+u|0,o,E,S,He)}break}s=b<<2;u=r+Me|0;r=r+Re|0;if(!(u>>>0<68|r>>>0<68)){S=qi[112544+r>>0]|0;E=qi[112388+u>>0]|0;v=l+(Zi(s,t)|0)|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(u<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(u<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(u<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(u<<2))>>0]|0;Uz[Xi[de>>2]&127](v,t,E,S,He)}if(ge){if(N){u=Zi(s,o)|0;s=Xi[oe>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[de>>2]&127](a+u|0,o,E,S,He)}s=Xi[se>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=Wi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0;Wi[ue>>0]=Wi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0;Wi[he>>0]=Wi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0;Wi[we>>0]=Wi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0;Uz[Xi[de>>2]&127](n+u|0,o,E,S,He)}break}if(!(b&1)){u=Zi(b<<1,o)|0;s=Xi[oe>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](a+u|0,o,E,S,He)}s=Xi[se>>2]|0;r=s+Me|0;s=s+Re|0;if(!(r>>>0<68|s>>>0<68)){S=qi[112544+s>>0]|0;E=qi[112388+r>>0]|0;Wi[He>>0]=(qi[(Gi[$>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[ue>>0]=(qi[(Gi[le>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[he>>0]=(qi[(Gi[fe>>1]|0)+(112700+(r<<2))>>0]|0)+1;Wi[we>>0]=(qi[(Gi[re>>1]|0)+(112700+(r<<2))>>0]|0)+1;Uz[Xi[ve>>2]&127](n+u|0,o,E,S,He)}}}}}while(0);b=b+1|0}while((b|0)<(L|0))}I=I+1|0}while((I|0)!=2);Ue=Be;return}function LD(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0;n=Wi[e+44096+i>>0]|0;t=Wi[e+44096+r>>0]|0;l=n<<24>>24!=t<<24>>24;if(n<<24>>24==-1|l)l=l&1;else{l=(Gi[e+43776+(i<<2)+2>>1]|0)-(Gi[e+43776+(r<<2)+2>>1]|0)|0;l=(((l|0)>-1?l:0-l|0)|0)>=(f|0)?1:((Gi[e+43776+(i<<2)>>1]|0)+3-(Gi[e+43776+(r<<2)>>1]|0)|0)>>>0>6}do{if((Xi[e+23380>>2]|0)==2){if(!l){a=Wi[e+44136+i>>0]|0;l=Wi[e+44136+r>>0]|0;o=(Gi[e+43936+(i<<2)+2>>1]|0)-(Gi[e+43936+(r<<2)+2>>1]|0)|0;if(!((a<<24>>24!=l<<24>>24?1:((Gi[e+43936+(i<<2)>>1]|0)+3-(Gi[e+43936+(r<<2)>>1]|0)|0)>>>0>6)|(((o|0)>-1?o:0-o|0)|0)>=(f|0))){l=0;break}}else{l=Wi[e+44136+r>>0]|0;a=Wi[e+44136+i>>0]|0}if(!((a<<24>>24!=t<<24>>24?1:n<<24>>24!=l<<24>>24)|0)){o=(Gi[e+43776+(i<<2)+2>>1]|0)-(Gi[e+43936+(r<<2)+2>>1]|0)|0;l=(Gi[e+43936+(i<<2)+2>>1]|0)-(Gi[e+43776+(r<<2)+2>>1]|0)|0;l=((((o|0)>-1?o:0-o|0)|0)>=(f|0)?1:((Gi[e+43776+(i<<2)>>1]|0)+3-(Gi[e+43936+(r<<2)>>1]|0)|0)>>>0>6)|((Gi[e+43936+(i<<2)>>1]|0)+3-(Gi[e+43776+(r<<2)>>1]|0)|0)>>>0>6|(((l|0)>-1?l:0-l|0)|0)>=(f|0)}else l=1}}while(0);return l|0}function ID(e,i){e=e|0;i=i|0;if((Xi[e+26672>>2]|0)==3)HD(e,i);else UD(e,i);return}function HD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0;Z=Ue;Ue=Ue+32|0;I=Z+20|0;H=Z;J=Z+8|0;Y=i+21764|0;f=Xi[Y>>2]|0;z=i+21768|0;t=Xi[z>>2]|0;U=i+21772|0;n=Xi[U>>2]|0;u=e+24668|0;j=Xi[(Xi[u>>2]|0)+(n<<2)>>2]|0;L=i+824|0;if(!(Xi[L>>2]|0))X=(Xi[e+26676>>2]|0)!=0;else X=0;l=e+24624|0;W=e+25960|0;A=i+21748|0;R=e+12|0;a=f;r=0;while(1){P=Xi[(Xi[l>>2]|0)+(r<<2)>>2]|0;K=Xi[W>>2]|0;q=Xi[A>>2]|0;B=(Zi(q,t)|0)+(f<<K)<<4;Xi[J+(r<<2)>>2]=P+B;K=P+((Zi(a<<2&12,q)|0)+B+(64<<K))|0;aV[Xi[R>>2]&1023](K,q,4);r=r+1|0;if((r|0)==3)break;a=Xi[Y>>2]|0}o=i+23380|0;Wi[(Xi[e+205820>>2]|0)+n>>0]=Xi[o>>2];B=i+21796|0;r=Xi[A>>2]|0;if(Xi[B>>2]|0){s=r<<1;Xi[i+21760>>2]=s;Xi[i+21756>>2]=s;if(t&1|0){K=Zi(r,-15)|0;Xi[J>>2]=(Xi[J>>2]|0)+K;q=J+4|0;Xi[q>>2]=(Xi[q>>2]|0)+K;q=J+8|0;Xi[q>>2]=(Xi[q>>2]|0)+K}if((Xi[e+205808>>2]|0)!=0?(Xi[o>>2]|0)!=0:0){r=(j&8|0)==0;t=0;do{do{if(12288<<(t<<1)&j|0){if(r)n=0;else{K=i+44096+(t*40|0)+12|0;q=Zi((Wi[K>>0]|0)+16^Xi[z>>2]&1,16843009)|0;Xi[K>>2]=q;Xi[i+44096+(t*40|0)+20>>2]=q;Xi[i+44096+(t*40|0)+28>>2]=q;Xi[i+44096+(t*40|0)+36>>2]=q;break}do{f=qi[120643+n>>0]|0;l=i+44096+(t*40|0)+f|0;a=Wi[l>>0]|0;if(a<<24>>24>-1){q=(Xi[z>>2]&1^(a<<24>>24)+16)*257&65535;Gi[l>>1]=q;Gi[f+8+(i+44096+(t*40|0))>>1]=q}n=n+4|0}while((n|0)<16)}}while(0);t=t+1|0}while(t>>>0<(Xi[o>>2]|0)>>>0);K=48;q=s}else{K=48;q=s}}else{Xi[i+21760>>2]=r;Xi[i+21756>>2]=r;K=0;q=r}if(j&4)if(!(Xi[W>>2]|0)){l=i+43608|0;r=Xi[J>>2]|0;f=0;do{a=r+(Zi(f,q)|0)|0;n=(Xi[l>>2]|0)+(f<<4)|0;t=a+16|0;do{Wi[a>>0]=Wi[n>>0]|0;a=a+1|0;n=n+1|0}while((a|0)<(t|0));f=f+1|0}while((f|0)!=16);r=Xi[J+4>>2]|0;f=0;do{a=r+(Zi(f,q)|0)|0;n=(Xi[l>>2]|0)+((f<<4)+256)|0;t=a+16|0;do{Wi[a>>0]=Wi[n>>0]|0;a=a+1|0;n=n+1|0}while((a|0)<(t|0));f=f+1|0}while((f|0)!=16);r=Xi[J+8>>2]|0;f=0;do{a=r+(Zi(f,q)|0)|0;n=(Xi[l>>2]|0)+((f<<4)+512)|0;t=a+16|0;do{Wi[a>>0]=Wi[n>>0]|0;a=a+1|0;n=n+1|0}while((a|0)<(t|0));f=f+1|0}while((f|0)!=16)}else{h=Xi[e+27844>>2]|0;u=Xi[i+43608>>2]|0;o=h*768|0;s=(u|0)!=0&o>>>0<2147483640;u=s?u:0;o=s?o|8:8;s=32-h|0;r=0;f=0;do{t=Xi[J+(f<<2)>>2]|0;n=0;do{a=t+(Zi(n,q)|0)|0;l=0;do{i=u+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7)>>>s;r=r+h|0;r=o>>>0>r>>>0?r:o;Gi[a+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=16);n=n+1|0}while((n|0)!=16);f=f+1|0}while((f|0)!=3)}else{e:do{if(!(j&7)){F=Xi[J>>2]|0;y=Xi[J+4>>2]|0;O=Xi[J+8>>2]|0;o=Xi[e+209348>>2]|0;l=e+152|0;s=Xi[e+209352>>2]|0;a=e+168|0;n=e+16|0;t=e+32|0;p=Xi[(Xi[u>>2]|0)+(Xi[U>>2]<<2)>>2]|0;r=Xi[W>>2]|0;f=Wi[i+44108>>0]|0;if(f<<24>>24>-1){U=f<<24>>24;x=Xi[Y>>2]|0;x=((x<<4|8)+(Gi[i+43824>>1]>>2)<<r)+(64<<r)+(Zi((Xi[z>>2]<<4|x<<2&12)+(Gi[i+43826>>1]>>2)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[R>>2]&1023]((Xi[i+23384+(U*40|0)>>2]|0)+x|0,Xi[A>>2]|0,4);aV[Xi[R>>2]&1023]((Xi[i+23384+(U*40|0)+4>>2]|0)+x|0,Xi[A>>2]|0,4);aV[Xi[R>>2]&1023]((Xi[i+23384+(U*40|0)+8>>2]|0)+x|0,Xi[A>>2]|0,4)}do{if(!(p&8)){if(p&16|0){U=o+64|0;x=s+64|0;BD(e,i,0,0,8,8<<Xi[W>>2],F,y,O,0,0,U,Xi[l>>2]|0,x,Xi[a>>2]|0,n,t,p&4096,p&16384);BD(e,i,8,0,8,8<<Xi[W>>2],F,y,O,0,4,U,Xi[l>>2]|0,x,Xi[a>>2]|0,n,t,p&8192,p&32768);break}h=i+21756|0;if(p&32|0){L=o+64|0;I=e+156|0;H=s+64|0;B=e+172|0;U=e+20|0;x=e+36|0;BD(e,i,0,0,16,Xi[h>>2]<<3,F,y,O,0,0,L,Xi[I>>2]|0,H,Xi[B>>2]|0,U,x,p&4096,p&16384);BD(e,i,4,0,16,Xi[h>>2]<<3,F,y,O,4,0,L,Xi[I>>2]|0,H,Xi[B>>2]|0,U,x,p&8192,p&32768);break}w=o+128|0;k=e+160|0;b=s+128|0;c=e+176|0;d=e+24|0;v=e+40|0;E=e+156|0;S=e+172|0;_=e+20|0;m=e+36|0;u=o+64|0;l=s+64|0;s=0;do{r=Ji[i+44376+(s<<1)>>1]|0;a=s<<2;n=a&4;t=s<<1&4;do{if(!(r&8)){if(r&16|0){U=r&4096;x=r&16384;BD(e,i,a,0,4,4<<Xi[W>>2],F,y,O,n,t,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,U,x);BD(e,i,a|2,0,4,4<<Xi[W>>2],F,y,O,n,t|2,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,U,x);break}if(r&32|0){U=r&4096;x=r&16384;BD(e,i,a,0,8,Xi[h>>2]<<2,F,y,O,n,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,U,x);BD(e,i,a|1,0,8,Xi[h>>2]<<2,F,y,O,n|2,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,U,x);break}o=r&4096;r=r&16384;f=0;do{BD(e,i,f+a|0,1,4,0,F,y,O,f<<1&2|n,f&2|t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,o,r);f=f+1|0}while((f|0)!=4)}else BD(e,i,a,1,8,0,F,y,O,n,t,u,Xi[E>>2]|0,l,Xi[S>>2]|0,_,m,r&4096,r&16384)}while(0);s=s+1|0}while((s|0)!=4)}else BD(e,i,0,1,16,0,F,y,O,0,0,o,Xi[l>>2]|0,s,Xi[a>>2]|0,n,t,p&4096,p&16384)}while(0);if(p&49152|0?(g=Xi[W>>2]|0,M=Wi[i+44148>>0]|0,M<<24>>24>-1):0){x=M<<24>>24;Y=Xi[Y>>2]|0;Y=((Y<<4|8)+(Gi[i+43984>>1]>>2)<<g)+(64<<g)+(Zi((Xi[z>>2]<<4|Y<<2&12)+(Gi[i+43986>>1]>>2)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[R>>2]&1023]((Xi[i+25304+(x*40|0)>>2]|0)+Y|0,Xi[A>>2]|0,4);aV[Xi[R>>2]&1023]((Xi[i+25304+(x*40|0)+4>>2]|0)+Y|0,Xi[A>>2]|0,4);aV[Xi[R>>2]&1023]((Xi[i+25304+(x*40|0)+8>>2]|0)+Y|0,Xi[A>>2]|0,4)}}else{P=i+844|0;f=Xi[P>>2]|0;i:do{if(f|0){u=Xi[J>>2]|0;_=Xi[J+4>>2]|0;m=Xi[J+8>>2]|0;S=Xi[W>>2]|0;do{if(Xi[e+205808>>2]|0){r=(Xi[i+21800>>2]|0)!=0;if(Xi[z>>2]&1)if(r){r=1;break}else break i;else{r=r&1^1;break}}else r=1}while(0);if((f|0)==2){d=Xi[Y>>2]|0;f=Xi[i+21708>>2]|0;l=(Ji[(Xi[e+205804>>2]|0)+((Xi[U>>2]|0)+-1-(Xi[e+206436>>2]|0)<<1)>>1]|0)==(Xi[i+808>>2]|0)&1}else{l=Xi[Y>>2]|0;d=l;f=(Xi[z>>2]|0)>((Xi[B>>2]|0)!=0|0)&1;l=(l|0)>0&1}v=q+1+S|0;h=d+-1|0;E=i+43624+(r<<2)|0;c=Xi[E>>2]|0;n=c+(d*96|0)|0;if(f|0){s=(l|0)!=0;t=(S|0)==0;do{if(s){f=8<<S;N=c+(h*96|0)+f|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;r=(-7<<S)-v|0;V=u+r|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C;if(t){r=n;l=1;t=u+(1-v)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;V=47;break}else{f=f+8+(c+(h*96|0))|0;l=f;o=Xi[l>>2]|0;l=Xi[l+4>>2]|0;r=u+(r+8)|0;V=r;a=Xi[V+4>>2]|0;Xi[f>>2]=Xi[V>>2];Xi[f+4>>2]=a;Xi[r>>2]=o;Xi[r+4>>2]=l;r=n;l=1<<S;o=l-v|0;f=o;o=u+o|0;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;V=46;break}}else{r=n;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=1<<S;f=l-v|0;o=u+f|0;if(t){t=o;f=a;V=47}else V=46}}while(0);if((V|0)==46){V=o;t=Xi[V+4>>2]|0;C=n;Xi[C>>2]=Xi[V>>2];Xi[C+4>>2]=t;C=o;Xi[C>>2]=a;Xi[C+4>>2]=r;C=c+(d*96|0)+8|0;t=C;V=Xi[t>>2]|0;t=Xi[t+4>>2]|0;o=u+(f+8)|0;N=o;D=Xi[N+4>>2]|0;Xi[C>>2]=Xi[N>>2];Xi[C+4>>2]=D;Xi[o>>2]=V;Xi[o+4>>2]=t;o=1;t=l}else if((V|0)==47){C=t;V=Xi[C+4>>2]|0;o=n;Xi[o>>2]=Xi[C>>2];Xi[o+4>>2]=V;o=t;Xi[o>>2]=f;Xi[o+4>>2]=r;o=0;t=l}r=8<<S;N=c+(d*96|0)+r|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;w=(9<<S)-v|0;V=u+w|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C;if(o){N=r+8+(c+(d*96|0))|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;V=u+(w+8)|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C}r=(Xi[Y>>2]|0)+1|0;k=e+206432|0;if((r|0)<(Xi[k>>2]|0)?(N=(Xi[E>>2]|0)+(r*96|0)|0,C=N,D=Xi[C>>2]|0,C=Xi[C+4>>2]|0,b=(17<<S)-v|0,V=u+b|0,R=V,T=Xi[R+4>>2]|0,N,Xi[N>>2]=Xi[R>>2],Xi[N+4>>2]=T,V,Xi[V>>2]=D,Xi[V+4>>2]=C,o):0){N=(Xi[E>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0)+8|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;V=u+(b+8)|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C}do{if(s){r=24<<S;N=c+(h*96|0)+r|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;f=(-7<<S)-v|0;V=_+f|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C;if(o){N=r+8+(c+(h*96|0))|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;V=_+(f+8)|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C}r=40<<S;N=c+(h*96|0)+r|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;V=m+f|0;R=V;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[V>>2]=D;Xi[V+4>>2]=C;if(o){C=r+8+(c+(h*96|0))|0;n=C;r=Xi[n>>2]|0;n=Xi[n+4>>2]|0;a=m+(f+8)|0;V=a;l=Xi[V+4>>2]|0;f=C;Xi[f>>2]=Xi[V>>2];Xi[f+4>>2]=l;Xi[a>>2]=r;Xi[a+4>>2]=n;a=16<<S;n=c+(d*96|0)+a|0;f=n;t=t-v|0;r=t;t=_+t|0;l=Xi[f>>2]|0;f=Xi[f+4>>2]|0;V=60;break}else{a=16<<S;n=c+(d*96|0)+a|0;f=n;t=t-v|0;r=t;t=_+t|0;l=Xi[f>>2]|0;f=Xi[f+4>>2]|0;V=61;break}}else{a=16<<S;n=c+(d*96|0)+a|0;f=n;l=Xi[f>>2]|0;f=Xi[f+4>>2]|0;r=t-v|0;t=_+r|0;if(o)V=60;else V=61}}while(0);if((V|0)==60){T=t;C=Xi[T+4>>2]|0;D=n;Xi[D>>2]=Xi[T>>2];Xi[D+4>>2]=C;D=t;Xi[D>>2]=l;Xi[D+4>>2]=f;D=a+8+(c+(d*96|0))|0;n=D;C=Xi[n>>2]|0;n=Xi[n+4>>2]|0;f=_+(r+8)|0;T=f;N=Xi[T+4>>2]|0;Xi[D>>2]=Xi[T>>2];Xi[D+4>>2]=N;Xi[f>>2]=C;Xi[f+4>>2]=n;f=r;n=1}else if((V|0)==61){D=t;C=Xi[D+4>>2]|0;Xi[n>>2]=Xi[D>>2];Xi[n+4>>2]=C;n=t;Xi[n>>2]=l;Xi[n+4>>2]=f;f=r;n=0}r=24<<S;T=c+(d*96|0)+r|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=_+w|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D;if(n){N=r+8+(c+(d*96|0))|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;l=_+(w+8)|0;R=l;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[l>>2]=D;Xi[l+4>>2]=C;l=32<<S;C=c+(d*96|0)+l|0;D=C;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;T=m+f|0;R=T;M=Xi[R+4>>2]|0;Xi[C>>2]=Xi[R>>2];Xi[C+4>>2]=M;Xi[T>>2]=N;Xi[T+4>>2]=D;T=l+8+(c+(d*96|0))|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+(f+8)|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D}else{l=32<<S;T=c+(d*96|0)+l|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+f|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D}r=40<<S;T=c+(d*96|0)+r|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+w|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D;if(n){T=r+8+(c+(d*96|0))|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+(w+8)|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D}r=(Xi[Y>>2]|0)+1|0;if((r|0)<(Xi[k>>2]|0)){T=(Xi[E>>2]|0)+(r*96|0)+a|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;f=(17<<S)-v|0;C=_+f|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D;if(n){N=a+8+((Xi[E>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0))|0;C=N;D=Xi[C>>2]|0;C=Xi[C+4>>2]|0;r=_+(f+8)|0;R=r;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[r>>2]=D;Xi[r+4>>2]=C;r=1}else r=0;T=(Xi[E>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0)+l|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+f|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D;if(r){T=l+8+((Xi[E>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0))|0;D=T;N=Xi[D>>2]|0;D=Xi[D+4>>2]|0;C=m+(f+8)|0;M=C;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[C>>2]=N;Xi[C+4>>2]=D}}}}}while(0);d=(j&1|0)==0;v=i+21636|0;E=e+132|0;S=(j&16777216|0)==0;_=e+144|0;m=e+26664|0;p=i+21740|0;F=3-q|0;y=3-((q|0)/2|0)|0;O=i+44384|0;A=e+108|0;g=e+100|0;M=e+140|0;R=e+206420|0;T=i+21732|0;N=e+112|0;D=e+104|0;C=0;do{c=Xi[W>>2]|0;k=Xi[J+(C<<2)>>2]|0;r=Xi[((C|0)==0?L:i+828+(C+-1<<2)|0)>>2]|0;b=C<<4;i:do{if(d){zz[Xi[e+26172+(Xi[v>>2]<<2)>>2]&255](k,q);if(Wi[(qi[120643+(C+48)>>0]|0)+(i+43648)>>0]|0){if(!X){aV[Xi[E>>2]&1023](i+44384+(C<<8<<c<<1)|0,i+47456+(C<<6)|0,Xi[(Xi[e+205756+(C<<2)>>2]|0)+(r<<6)>>2]|0);break}t=C<<8<<c;r=(c|0)==0;f=i+44384+(t<<1)|0;l=i+47456+(C<<6)|0;n=0;do{a=qi[113340+n>>0]|0;if(r)Gi[i+44384+(a+t<<1)>>1]=Gi[i+47456+(C<<6)+(n<<1)>>1]|0;else Xi[f+(a<<2)>>2]=Xi[l+(n<<2)>>2];n=n+1|0}while((n|0)!=16)}}else{if(!S){if(X){s=Xi[M>>2]|0;o=s}else{o=Xi[D>>2]|0;s=Xi[N>>2]|0}l=C<<8;a=(c|0)==0;t=0;while(1){r=t+b|0;n=k+(Xi[e+26260+(r+K<<2)>>2]|0)|0;w=Wi[(qi[120643+t>>0]|0)+(i+21640)>>0]|0;f=w<<24>>24;do{if(X?w<<24>>24<2&(Xi[m>>2]|0)==244:0)if((Xi[R>>2]|0)==-1){Uz[Xi[e+26224+(f<<2)>>2]&127](n,i+44384+((t<<4)+l<<c<<1)|0,Xi[T>>2]<<t&32768,Xi[p>>2]<<t&16384,q);break}else{aV[Xi[e+26216+(f<<2)>>2]&1023](n,i+44384+((t<<4)+l<<c<<1)|0,q);break}else V=84}while(0);r:do{if((V|0)==84){V=0;w=Wi[(qi[120643+r>>0]|0)+(i+43648)>>0]|0;nV[Xi[e+26080+(f<<2)>>2]&255](n,Xi[T>>2]<<t&32768,Xi[p>>2]<<t&16384,q);switch(w<<24>>24){case 0:break r;case 1:{r=(t<<4)+l|0;if(a)f=Ji[i+44384+(r<<1)>>1]|0;else f=Xi[O+(r<<2)>>2]|0;if(f){aV[s&1023](n,i+44384+(r<<c<<1)|0,q);break r}break}default:r=(t<<4)+l|0}aV[o&1023](n,i+44384+(r<<c<<1)|0,q)}}while(0);t=t+4|0;if((t|0)>=16)break i}}if(X){w=Xi[_>>2]|0;h=w}else{h=Xi[g>>2]|0;w=Xi[A>>2]|0}t=C<<8;o=(c|0)==0;n=(4<<c)-q|0;u=0;do{l=u+b|0;r=Xi[e+26260+(l+K<<2)>>2]|0;s=k+r|0;f=Wi[(qi[120643+u>>0]|0)+(i+21640)>>0]|0;a=f<<24>>24;if(X?f<<24>>24<2&(Xi[m>>2]|0)==244:0)aV[Xi[e+26208+(a<<2)>>2]&1023](s,i+44384+((u<<4)+t<<c<<1)|0,q);else V=100;r:do{if((V|0)==100){V=0;do{if((f&-5)<<24>>24==3){if(Xi[p>>2]&32768>>>u|0){r=k+(n+r)|0;break}if(o){Xi[I>>2]=Zi(qi[k+(F+r)>>0]|0,16843009)|0;r=I;break}else{f=rN(Ji[s+(y<<1)>>1]|0,0,65537,65537)|0;r=H;Xi[r>>2]=f;Xi[r+4>>2]=Ie;r=H;break}}else r=0}while(0);aV[Xi[e+26020+(a<<2)>>2]&1023](s,r,q);switch(Wi[(qi[120643+l>>0]|0)+(i+43648)>>0]|0){case 0:break r;case 1:{r=(u<<4)+t|0;if(o)f=Ji[i+44384+(r<<1)>>1]|0;else f=Xi[O+(r<<2)>>2]|0;if(f){aV[w&1023](s,i+44384+(r<<c<<1)|0,q);break r}break}default:r=(u<<4)+t|0}aV[h&1023](s,i+44384+(r<<c<<1)|0,q)}}while(0);u=u+1|0}while((u|0)!=16)}}while(0);C=C+1|0}while((C|0)!=3);f=Xi[P>>2]|0;if(f|0){w=Xi[J>>2]|0;E=Xi[J+4>>2]|0;S=Xi[J+8>>2]|0;v=Xi[W>>2]|0;do{if(Xi[e+205808>>2]|0){r=(Xi[i+21800>>2]|0)!=0;if(Xi[z>>2]&1)if(r){l=1;break}else break e;else{l=r&1^1;break}}else l=1}while(0);if((f|0)==2){d=Xi[Y>>2]|0;f=Xi[i+21708>>2]|0;r=(Ji[(Xi[e+205804>>2]|0)+((Xi[U>>2]|0)+-1-(Xi[e+206436>>2]|0)<<1)>>1]|0)==(Xi[i+808>>2]|0)&1}else{r=Xi[Y>>2]|0;d=r;f=(Xi[z>>2]|0)>((Xi[B>>2]|0)!=0|0)&1;r=(r|0)>0&1}b=q+1+v|0;u=d+-1|0;c=i+43624+(l<<2)|0;k=Xi[c>>2]|0;l=k+(d*96|0)|0;if(f|0){o=(r|0)!=0;t=(v|0)==0;do{if(o){f=8<<v;B=k+(u*96|0)+f|0;z=B;U=Xi[z>>2]|0;z=Xi[z+4>>2]|0;r=(-7<<v)-b|0;V=w+r|0;I=V;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[V>>2]=U;Xi[V+4>>2]=z;if(t){f=l;l=w+(1-b)|0;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;r=1;V=139;break}else{U=f+8+(k+(u*96|0))|0;f=U;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;a=w+(r+8)|0;z=a;V=Xi[z+4>>2]|0;r=U;Xi[r>>2]=Xi[z>>2];Xi[r+4>>2]=V;Xi[a>>2]=n;Xi[a+4>>2]=f;a=l;r=1<<v;l=r-b|0;f=l;l=w+l|0;n=Xi[a>>2]|0;a=Xi[a+4>>2]|0;V=138;break}}else{a=l;n=Xi[a>>2]|0;a=Xi[a+4>>2]|0;r=1<<v;f=r-b|0;l=w+f|0;if(t){f=a;V=139}else V=138}}while(0);if((V|0)==138){V=l;Xi[V>>2]=n;Xi[V+4>>2]=a;V=k+(d*96|0)+8|0;t=Xi[V+4>>2]|0;a=w+(f+8)|0;Xi[a>>2]=Xi[V>>2];Xi[a+4>>2]=t;a=r;t=1}else if((V|0)==139){a=l;Xi[a>>2]=n;Xi[a+4>>2]=f;a=r;t=0}r=8<<v;B=k+(d*96|0)+r|0;z=B;U=Xi[z>>2]|0;z=Xi[z+4>>2]|0;s=(9<<v)-b|0;V=w+s|0;I=V;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[V>>2]=U;Xi[V+4>>2]=z;if(t){B=r+8+(k+(d*96|0))|0;z=B;U=Xi[z>>2]|0;z=Xi[z+4>>2]|0;V=w+(s+8)|0;I=V;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[V>>2]=U;Xi[V+4>>2]=z}r=(Xi[Y>>2]|0)+1|0;h=e+206432|0;if((r|0)<(Xi[h>>2]|0)?(B=(Xi[c>>2]|0)+(r*96|0)|0,z=B,U=Xi[z>>2]|0,z=Xi[z+4>>2]|0,x=(17<<v)-b|0,V=w+x|0,I=V,H=Xi[I+4>>2]|0,B,Xi[B>>2]=Xi[I>>2],Xi[B+4>>2]=H,V,Xi[V>>2]=U,Xi[V+4>>2]=z,t):0){I=(Xi[c>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0)+8|0;z=I;U=Xi[z>>2]|0;z=Xi[z+4>>2]|0;V=w+(x+8)|0;H=V;B=Xi[H+4>>2]|0;x=I;Xi[x>>2]=Xi[H>>2];Xi[x+4>>2]=B;Xi[V>>2]=U;Xi[V+4>>2]=z}do{if(o){r=24<<v;U=k+(u*96|0)+r|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;f=(-7<<v)-b|0;V=E+f|0;H=V;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[V>>2]=x;Xi[V+4>>2]=z;if(t){U=r+8+(k+(u*96|0))|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;V=E+(f+8)|0;H=V;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[V>>2]=x;Xi[V+4>>2]=z}r=40<<v;U=k+(u*96|0)+r|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;V=S+f|0;H=V;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[V>>2]=x;Xi[V+4>>2]=z;if(t){x=r+8+(k+(u*96|0))|0;r=x;n=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=S+(f+8)|0;z=l;V=Xi[z+4>>2]|0;f=x;Xi[f>>2]=Xi[z>>2];Xi[f+4>>2]=V;Xi[l>>2]=n;Xi[l+4>>2]=r;l=16<<v;f=k+(d*96|0)+l|0;a=a-b|0;r=a;a=E+a|0;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;V=152;break}else{l=16<<v;f=k+(d*96|0)+l|0;a=a-b|0;r=a;a=E+a|0;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;V=153;break}}else{l=16<<v;f=k+(d*96|0)+l|0;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;r=a-b|0;a=E+r|0;if(t)V=152;else V=153}}while(0);if((V|0)==152){z=a;Xi[z>>2]=n;Xi[z+4>>2]=f;z=l+8+(k+(d*96|0))|0;n=Xi[z+4>>2]|0;f=E+(r+8)|0;Xi[f>>2]=Xi[z>>2];Xi[f+4>>2]=n;f=r;n=1}else if((V|0)==153){z=a;Xi[z>>2]=n;Xi[z+4>>2]=f;f=r;n=0}r=24<<v;B=k+(d*96|0)+r|0;x=B;U=Xi[x>>2]|0;x=Xi[x+4>>2]|0;z=E+s|0;I=z;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[z>>2]=U;Xi[z+4>>2]=x;if(n){U=r+8+(k+(d*96|0))|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;a=E+(s+8)|0;H=a;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[a>>2]=x;Xi[a+4>>2]=z;a=32<<v;z=k+(d*96|0)+a|0;x=Xi[z+4>>2]|0;U=S+f|0;Xi[U>>2]=Xi[z>>2];Xi[U+4>>2]=x;U=a+8+(k+(d*96|0))|0;x=Xi[U+4>>2]|0;z=S+(f+8)|0;Xi[z>>2]=Xi[U>>2];Xi[z+4>>2]=x}else{a=32<<v;U=k+(d*96|0)+a|0;x=Xi[U+4>>2]|0;z=S+f|0;Xi[z>>2]=Xi[U>>2];Xi[z+4>>2]=x}r=40<<v;B=k+(d*96|0)+r|0;x=B;U=Xi[x>>2]|0;x=Xi[x+4>>2]|0;z=S+s|0;I=z;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[z>>2]=U;Xi[z+4>>2]=x;if(n){B=r+8+(k+(d*96|0))|0;x=B;U=Xi[x>>2]|0;x=Xi[x+4>>2]|0;z=S+(s+8)|0;I=z;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[z>>2]=U;Xi[z+4>>2]=x}r=(Xi[Y>>2]|0)+1|0;if((r|0)<(Xi[h>>2]|0)){B=(Xi[c>>2]|0)+(r*96|0)+l|0;x=B;U=Xi[x>>2]|0;x=Xi[x+4>>2]|0;f=(17<<v)-b|0;z=E+f|0;I=z;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[z>>2]=U;Xi[z+4>>2]=x;if(n){U=l+8+((Xi[c>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0))|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;r=E+(f+8)|0;H=r;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[r>>2]=x;Xi[r+4>>2]=z;r=1}else r=0;B=(Xi[c>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0)+a|0;x=B;U=Xi[x>>2]|0;x=Xi[x+4>>2]|0;z=S+f|0;I=z;H=Xi[I+4>>2]|0;Xi[B>>2]=Xi[I>>2];Xi[B+4>>2]=H;Xi[z>>2]=U;Xi[z+4>>2]=x;if(r){U=a+8+((Xi[c>>2]|0)+(((Xi[Y>>2]|0)+1|0)*96|0))|0;z=U;x=Xi[z>>2]|0;z=Xi[z+4>>2]|0;Y=S+(f+8)|0;H=Y;B=Xi[H+4>>2]|0;Xi[U>>2]=Xi[H>>2];Xi[U+4>>2]=B;Xi[Y>>2]=x;Xi[Y+4>>2]=z}}}}}}while(0);p=(j&1|0)==0;F=(j&2|0)==0;y=i+21824|0;s=(j&16777216|0)!=0;u=s?4:1;h=e+144|0;o=s?e+140|0:h;w=e+120|0;k=e+116|0;b=e+26664|0;c=i+21636|0;d=i+44384|0;v=e+128|0;m=0;do{E=Xi[W>>2]|0;S=Xi[J+(m<<2)>>2]|0;_=m<<4;r=e+26260+(_+K<<2)|0;e:do{if(p){if(F){if(!(Xi[y>>2]&15))break;if(!X)if(s){Uz[Xi[w>>2]&127](S,r,i+44384+(m<<8<<E<<1)|0,q,(m*40|0)+(i+43648)|0);break}else{Uz[Xi[k>>2]&127](S,r,i+44384+(m<<8<<E<<1)|0,q,(m*40|0)+(i+43648)|0);break}r=Xi[o>>2]|0;f=m<<8;a=0;while(1){l=a+_|0;if(Wi[(qi[120643+l>>0]|0)+(i+43648)>>0]|0)aV[r&1023](S+(Xi[e+26260+(l+K<<2)>>2]|0)|0,i+44384+((a<<4)+f<<E<<1)|0,q);a=a+u|0;if((a|0)>=16)break e}}if(!X){Uz[Xi[v>>2]&127](S,r,i+44384+(m<<8<<E<<1)|0,q,(m*40|0)+(i+43648)|0);break}if((Xi[b>>2]|0)==244?(G=Xi[c>>2]|0,(G+-1|0)>>>0<2):0){nV[Xi[e+26244+(G<<2)>>2]&255](S,r,i+44384+(m<<8<<E<<1)|0,q);break}f=m<<8;l=(E|0)==0;t=0;do{a=t+_|0;n=(t<<4)+f|0;if(!(Wi[(qi[120643+a>>0]|0)+(i+43648)>>0]|0)){if(l)r=Ji[i+44384+(n<<1)>>1]|0;else r=Xi[d+(n<<2)>>2]|0;if(r|0)V=198}else V=198;if((V|0)==198){V=0;aV[Xi[h>>2]&1023](S+(Xi[e+26260+(a+K<<2)>>2]|0)|0,i+44384+(n<<E<<1)|0,q)}t=t+1|0}while((t|0)!=16)}}while(0);m=m+1|0}while((m|0)!=3)}Ue=Z;return}function BD(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b,c,d,v,E){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;b=b|0;c=c|0;d=d|0;v=v|0;E=E|0;var S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0;B=i+856|0;b=Xi[B>>2]|0;w=(v|0)!=0;m=(E|0)!=0;if(m&(w&(b|0)==2)?(S=i+21768|0,_=Xi[S>>2]|0,Y=qi[120643+r>>0]|0,(Xi[i+3192+((Wi[i+44096+Y>>0]|0)*384|0)+(Wi[i+44136+Y>>0]<<3)+((_&1)<<2)>>2]|0)!=32):0)C=5;else C=3;do{if((C|0)==3){if((b|0)==1){_=i+21768|0;S=_;_=Xi[_>>2]|0;C=5;break}R=Xi[e+25960>>2]|0;T=i+21756|0;_=Xi[T>>2]|0;N=(Zi(u<<1,_)|0)+(s<<1<<R)|0;g=n+N|0;M=t+N|0;D=o+N|0;O=(Xi[i+21764>>2]<<3)+s|0;A=i+21796|0;w=Xi[A>>2]|0;y=(Xi[i+21768>>2]>>w<<3)+u|0;if(v){l=qi[120643+r>>0]|0;v=Wi[i+44096+l>>0]|0;Y=(Gi[i+43776+(l<<2)>>1]|0)+(O<<3)|0;l=(Gi[i+43776+(l<<2)+2>>1]|0)+(y<<3)|0;c=l<<2&12|Y&3;s=Y>>2;u=l>>2;F=(Zi(u,_)|0)+(s<<R)|0;b=Xi[i+23384+(v*40|0)>>2]|0;S=b+F|0;p=Xi[e+206432>>2]<<4;m=Xi[e+206428>>2]<<4>>w;Y=(Y&7|0)==0?0:-3;l=(l&7|0)==0?0:-3;if((!((s|0)<(0-Y|0)|(u|0)<(0-l|0))?(s+16|0)<=(Y+p|0):0)?(u+16|0)<=(m+l|0):0){b=_;_=0;w=S}else{Y=i+43620|0;w=2<<R;$z[Xi[e+8>>2]&3](Xi[Y>>2]|0,b+(F-((_<<1)+w))|0,_,_,21,21,s+-2|0,u+-2|0,p,m);l=Xi[T>>2]|0;b=l;_=1;w=(Xi[Y>>2]|0)+((l<<1)+w)|0}d=h+(c<<2)|0;aV[Xi[d>>2]&1023](g,w,b);c=(f|0)!=0;if(!c)aV[Xi[d>>2]&1023](n+(N+a)|0,w+a|0,Xi[T>>2]|0);b=Xi[i+23384+(v*40|0)+4>>2]|0;S=(_|0)!=0;if(S){l=i+43620|0;h=2<<R;w=Xi[T>>2]|0;$z[Xi[e+8>>2]&3](Xi[l>>2]|0,b+(F-h-(w<<1))|0,w,w,21,21,s+-2|0,u+-2|0,p,m);b=Xi[T>>2]|0;w=b;b=(Xi[l>>2]|0)+((b<<1)+h)|0}else{w=Xi[T>>2]|0;b=b+F|0}aV[Xi[d>>2]&1023](M,b,w);if(!c)aV[Xi[d>>2]&1023](t+(N+a)|0,b+a|0,Xi[T>>2]|0);b=Xi[i+23384+(v*40|0)+8>>2]|0;if(S){l=i+43620|0;h=2<<R;w=Xi[T>>2]|0;$z[Xi[e+8>>2]&3](Xi[l>>2]|0,b+(F-h-(w<<1))|0,w,w,21,21,s+-2|0,u+-2|0,p,m);b=Xi[T>>2]|0;w=b;b=(Xi[l>>2]|0)+((b<<1)+h)|0}else{w=Xi[T>>2]|0;b=b+F|0}aV[Xi[d>>2]&1023](D,b,w);if(c)d=k;else{aV[Xi[d>>2]&1023](o+(N+a)|0,b+a|0,Xi[T>>2]|0);d=k}}else d=h;if(E|0){h=qi[120643+r>>0]|0;p=Wi[i+44136+h>>0]|0;l=(Gi[i+43936+(h<<2)>>1]|0)+(O<<3)|0;h=(Gi[i+43936+(h<<2)+2>>1]|0)+(y<<3)|0;_=h<<2&12|l&3;m=l>>2;s=h>>2;b=Xi[T>>2]|0;F=(Zi(s,b)|0)+(m<<R)|0;w=Xi[i+25304+(p*40|0)>>2]|0;S=w+F|0;u=Xi[e+206432>>2]<<4;v=Xi[e+206428>>2]<<4>>Xi[A>>2];l=(l&7|0)==0?0:-3;h=(h&7|0)==0?0:-3;if((!((m|0)<(0-l|0)|(s|0)<(0-h|0))?(m+16|0)<=(u+l|0):0)?(s+16|0)<=(v+h|0):0){c=0;w=S}else{l=i+43620|0;h=2<<R;$z[Xi[e+8>>2]&3](Xi[l>>2]|0,w+(F-((b<<1)+h))|0,b,b,21,21,m+-2|0,s+-2|0,u,v);w=Xi[T>>2]|0;b=w;c=1;w=(Xi[l>>2]|0)+((w<<1)+h)|0}d=d+(_<<2)|0;aV[Xi[d>>2]&1023](g,w,b);_=(f|0)!=0;if(!_)aV[Xi[d>>2]&1023](n+(N+a)|0,w+a|0,Xi[T>>2]|0);b=Xi[i+25304+(p*40|0)+4>>2]|0;S=(c|0)!=0;if(S){f=i+43620|0;n=2<<R;w=Xi[T>>2]|0;$z[Xi[e+8>>2]&3](Xi[f>>2]|0,b+(F-n-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[T>>2]|0;w=b;b=(Xi[f>>2]|0)+((b<<1)+n)|0}else{w=Xi[T>>2]|0;b=b+F|0}aV[Xi[d>>2]&1023](M,b,w);if(!_)aV[Xi[d>>2]&1023](t+(N+a)|0,b+a|0,Xi[T>>2]|0);b=Xi[i+25304+(p*40|0)+8>>2]|0;if(S){t=i+43620|0;i=2<<R;w=Xi[T>>2]|0;$z[Xi[e+8>>2]&3](Xi[t>>2]|0,b+(F-i-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[T>>2]|0;w=b;b=(Xi[t>>2]|0)+((b<<1)+i)|0}else{w=Xi[T>>2]|0;b=b+F|0}aV[Xi[d>>2]&1023](D,b,w);if(!_)aV[Xi[d>>2]&1023](o+(N+a)|0,b+a|0,Xi[T>>2]|0)}}}while(0);do{if((C|0)==5){O=Xi[c>>2]|0;I=Xi[d>>2]|0;U=Xi[e+25960>>2]|0;x=i+21756|0;A=Xi[x>>2]|0;H=(Zi(u<<1,A)|0)+(s<<1<<U)|0;z=n+H|0;V=t+H|0;Y=o+H|0;c=(Xi[i+21764>>2]<<3)+s|0;g=i+21796|0;d=Xi[g>>2]|0;b=(_>>d<<3)+u|0;if(!(w&m)){y=m&1;B=qi[120643+r>>0]|0;F=Wi[i+44096+(y*40|0)+B>>0]|0;I=(Gi[i+43776+(y*160|0)+(B<<2)>>1]|0)+(c<<3)|0;B=(Gi[i+43776+(y*160|0)+(B<<2)+2>>1]|0)+(b<<3)|0;S=B<<2&12|I&3;m=I>>2;s=B>>2;p=(Zi(s,A)|0)+(m<<U)|0;b=Xi[i+23384+(y*1920|0)+(F*40|0)>>2]|0;w=b+p|0;u=Xi[e+206432>>2]<<4;v=Xi[e+206428>>2]<<4>>d;I=(I&7|0)==0?0:-3;B=(B&7|0)==0?0:-3;if((!((m|0)<(0-I|0)|(s|0)<(0-B|0))?(m+16|0)<=(I+u|0):0)?(s+16|0)<=(v+B|0):0){b=A;_=0}else{I=i+43620|0;w=2<<U;$z[Xi[e+8>>2]&3](Xi[I>>2]|0,b+(p-((A<<1)+w))|0,A,A,21,21,m+-2|0,s+-2|0,u,v);B=Xi[x>>2]|0;b=B;_=1;w=(Xi[I>>2]|0)+((B<<1)+w)|0}d=h+(S<<2)|0;aV[Xi[d>>2]&1023](z,w,b);c=(f|0)!=0;if(!c)aV[Xi[d>>2]&1023](n+(H+a)|0,w+a|0,Xi[x>>2]|0);b=Xi[i+23384+(y*1920|0)+(F*40|0)+4>>2]|0;S=(_|0)!=0;if(S){f=i+43620|0;n=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[f>>2]|0,b+(p-n-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[x>>2]|0;w=b;b=(Xi[f>>2]|0)+((b<<1)+n)|0}else{w=Xi[x>>2]|0;b=b+p|0}aV[Xi[d>>2]&1023](V,b,w);if(!c)aV[Xi[d>>2]&1023](t+(H+a)|0,b+a|0,Xi[x>>2]|0);b=Xi[i+23384+(y*1920|0)+(F*40|0)+8>>2]|0;if(S){n=i+43620|0;t=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[n>>2]|0,b+(p-t-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[x>>2]|0;w=b;b=(Xi[n>>2]|0)+((b<<1)+t)|0}else{w=Xi[x>>2]|0;b=b+p|0}aV[Xi[d>>2]&1023](Y,b,w);if(!c)aV[Xi[d>>2]&1023](o+(H+a)|0,b+a|0,Xi[x>>2]|0);Xz[O&127](z,Xi[x>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(F<<4)+(y<<3)>>2]|0,Xi[i+888+(F<<4)+(y<<3)+4>>2]|0);if(!(Xi[i+860>>2]|0))break;e=i+21760|0;a=i+868|0;Xz[O&127](V,Xi[e>>2]|0,l,Xi[a>>2]|0,Xi[i+1656+(F<<5)+(y<<4)>>2]|0,Xi[i+1656+(F<<5)+(y<<4)+4>>2]|0);Xz[O&127](Y,Xi[e>>2]|0,l,Xi[a>>2]|0,Xi[i+1656+(F<<5)+(y<<4)+8>>2]|0,Xi[i+1656+(F<<5)+(y<<4)+12>>2]|0);break}N=Xi[i+43616>>2]|0;D=16<<U;C=N+D|0;P=i+21760|0;M=Xi[P>>2]<<4;L=N+M|0;O=qi[120643+r>>0]|0;R=Wi[i+44096+O>>0]|0;T=Wi[i+44136+O>>0]|0;y=c<<3;c=(Gi[i+43776+(O<<2)>>1]|0)+y|0;F=b<<3;r=(Gi[i+43776+(O<<2)+2>>1]|0)+F|0;_=r<<2&12|c&3;m=c>>2;s=r>>2;p=(Zi(s,A)|0)+(m<<U)|0;b=Xi[i+23384+(R*40|0)>>2]|0;w=b+p|0;k=e+206432|0;u=Xi[k>>2]<<4;E=e+206428|0;v=Xi[E>>2]<<4>>d;d=(c&7|0)==0?0:-3;r=(r&7|0)==0?0:-3;if((!((m|0)<(0-d|0)|(s|0)<(0-r|0))?(m+16|0)<=(d+u|0):0)?(s+16|0)<=(v+r|0):0){b=A;c=0}else{d=i+43620|0;w=2<<U;$z[Xi[e+8>>2]&3](Xi[d>>2]|0,b+(p-((A<<1)+w))|0,A,A,21,21,m+-2|0,s+-2|0,u,v);r=Xi[x>>2]|0;b=r;c=1;w=(Xi[d>>2]|0)+((r<<1)+w)|0}d=h+(_<<2)|0;aV[Xi[d>>2]&1023](z,w,b);A=(f|0)!=0;if(!A)aV[Xi[d>>2]&1023](n+(H+a)|0,w+a|0,Xi[x>>2]|0);b=Xi[i+23384+(R*40|0)+4>>2]|0;_=(c|0)!=0;if(_){f=i+43620|0;n=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[f>>2]|0,b+(p-n-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[x>>2]|0;w=b;b=(Xi[f>>2]|0)+((b<<1)+n)|0}else{w=Xi[x>>2]|0;b=b+p|0}aV[Xi[d>>2]&1023](V,b,w);if(!A)aV[Xi[d>>2]&1023](t+(H+a)|0,b+a|0,Xi[x>>2]|0);b=Xi[i+23384+(R*40|0)+8>>2]|0;if(_){n=i+43620|0;t=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[n>>2]|0,b+(p-t-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,u,v);b=Xi[x>>2]|0;w=b;b=(Xi[n>>2]|0)+((b<<1)+t)|0}else{w=Xi[x>>2]|0;b=b+p|0}aV[Xi[d>>2]&1023](Y,b,w);if(!A)aV[Xi[d>>2]&1023](o+(H+a)|0,b+a|0,Xi[x>>2]|0);t=(Gi[i+43936+(O<<2)>>1]|0)+y|0;o=(Gi[i+43936+(O<<2)+2>>1]|0)+F|0;c=o<<2&12|t&3;m=t>>2;s=o>>2;w=Xi[x>>2]|0;u=(Zi(s,w)|0)+(m<<U)|0;_=Xi[i+25304+(T*40|0)>>2]|0;b=_+u|0;v=Xi[k>>2]<<4;d=Xi[E>>2]<<4>>Xi[g>>2];t=(t&7|0)==0?0:-3;o=(o&7|0)==0?0:-3;if((!((m|0)<(0-t|0)|(s|0)<(0-o|0))?(m+16|0)<=(v+t|0):0)?(s+16|0)<=(d+o|0):0)_=0;else{t=i+43620|0;b=2<<U;$z[Xi[e+8>>2]&3](Xi[t>>2]|0,_+(u-((w<<1)+b))|0,w,w,21,21,m+-2|0,s+-2|0,v,d);o=Xi[x>>2]|0;w=o;_=1;b=(Xi[t>>2]|0)+((o<<1)+b)|0}c=h+(c<<2)|0;aV[Xi[c>>2]&1023](L,b,w);if(!A)aV[Xi[c>>2]&1023](N+(M+a)|0,b+a|0,Xi[x>>2]|0);b=Xi[i+25304+(T*40|0)+4>>2]|0;_=(_|0)!=0;if(_){t=i+43620|0;o=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[t>>2]|0,b+(u-o-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,v,d);b=Xi[x>>2]|0;w=b;b=(Xi[t>>2]|0)+((b<<1)+o)|0}else{w=Xi[x>>2]|0;b=b+u|0}aV[Xi[c>>2]&1023](N,b,w);if(!A)aV[Xi[c>>2]&1023](N+a|0,b+a|0,Xi[x>>2]|0);b=Xi[i+25304+(T*40|0)+8>>2]|0;if(_){t=i+43620|0;o=2<<U;w=Xi[x>>2]|0;$z[Xi[e+8>>2]&3](Xi[t>>2]|0,b+(u-o-(w<<1))|0,w,w,21,21,m+-2|0,s+-2|0,v,d);b=Xi[x>>2]|0;w=b;b=(Xi[t>>2]|0)+((b<<1)+o)|0}else{w=Xi[x>>2]|0;b=b+u|0}aV[Xi[c>>2]&1023](C,b,w);if(!A)aV[Xi[c>>2]&1023](N+(D+a)|0,b+a|0,Xi[x>>2]|0);if((Xi[B>>2]|0)==2){i=Xi[i+3192+(R*384|0)+(T<<3)+((Xi[S>>2]&1)<<2)>>2]|0;a=64-i|0;Gz[I&63](z,L,Xi[x>>2]|0,l,5,i,a,0);Gz[I&63](V,N,Xi[P>>2]|0,l,5,i,a,0);Gz[I&63](Y,C,Xi[P>>2]|0,l,5,i,a,0);break}else{Gz[I&63](z,L,Xi[x>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(R<<4)>>2]|0,Xi[i+888+(T<<4)+8>>2]|0,(Xi[i+888+(T<<4)+12>>2]|0)+(Xi[i+888+(R<<4)+4>>2]|0)|0);a=i+868|0;Gz[I&63](V,N,Xi[P>>2]|0,l,Xi[a>>2]|0,Xi[i+1656+(R<<5)>>2]|0,Xi[i+1656+(T<<5)+16>>2]|0,(Xi[i+1656+(T<<5)+20>>2]|0)+(Xi[i+1656+(R<<5)+4>>2]|0)|0);Gz[I&63](Y,C,Xi[P>>2]|0,l,Xi[a>>2]|0,Xi[i+1656+(R<<5)+8>>2]|0,Xi[i+1656+(T<<5)+24>>2]|0,(Xi[i+1656+(T<<5)+28>>2]|0)+(Xi[i+1656+(R<<5)+12>>2]|0)|0);break}}}while(0);return}function UD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0;Q=Ue;Ue=Ue+32|0;F=Q+16|0;g=Q;q=Q+8|0;C=i+21764|0;r=Xi[C>>2]|0;N=i+21768|0;a=Xi[N>>2]|0;R=i+21772|0;f=Xi[R>>2]|0;S=e+24668|0;U=Xi[(Xi[S>>2]|0)+(f<<2)>>2]|0;p=i+824|0;if(!(Xi[p>>2]|0))j=(Xi[e+26676>>2]|0)!=0;else j=0;m=16>>>(Xi[e+25976>>2]|0);E=e+26672|0;X=(Xi[E>>2]|0)==2;o=Xi[e+24624>>2]|0;s=Xi[o>>2]|0;J=e+25960|0;M=Xi[J>>2]|0;l=r<<M;y=i+21748|0;b=Xi[y>>2]|0;u=(Zi(b,a)|0)+l<<4;k=s+u|0;n=Xi[o+4>>2]|0;O=i+21752|0;l=(Zi(Zi(m,a)|0,Xi[O>>2]|0)|0)+(l<<3)|0;t=n+l|0;o=Xi[o+8>>2]|0;w=o+l|0;A=e+12|0;M=s+(u+(64<<M)+(Zi(r<<2&12,b)|0))|0;aV[Xi[A>>2]&1023](M,b,4);b=(Zi(Xi[C>>2]&7,Xi[O>>2]|0)|0)+l|0;aV[Xi[A>>2]&1023](n+(b+(64<<Xi[J>>2]))|0,w-t|0,2);b=i+23380|0;Wi[(Xi[e+205820>>2]|0)+f>>0]=Xi[b>>2];M=i+21796|0;f=Xi[y>>2]|0;if(Xi[M>>2]|0){d=f<<1;Xi[i+21756>>2]=d;r=Xi[O>>2]|0;v=r<<1;Xi[i+21760>>2]=v;c=e+26452|0;if(!(a&1)){h=t;o=k}else{w=l-(Zi(r,m+-1|0)|0)|0;h=n+w|0;w=o+w|0;o=s+(u+(Zi(f,-15)|0))|0}if((Xi[e+205808>>2]|0)!=0?(Xi[b>>2]|0)!=0:0){a=(U&8|0)==0;t=0;do{do{if(12288<<(t<<1)&U|0){if(a)n=0;else{G=i+44096+(t*40|0)+12|0;Z=Zi((Wi[G>>0]|0)+16^Xi[N>>2]&1,16843009)|0;Xi[G>>2]=Z;Xi[i+44096+(t*40|0)+20>>2]=Z;Xi[i+44096+(t*40|0)+28>>2]=Z;Xi[i+44096+(t*40|0)+36>>2]=Z;break}do{r=qi[120643+n>>0]|0;f=i+44096+(t*40|0)+r|0;l=Wi[f>>0]|0;if(l<<24>>24>-1){Z=(Xi[N>>2]&1^(l<<24>>24)+16)*257&65535;Gi[f>>1]=Z;Gi[r+8+(i+44096+(t*40|0))>>1]=Z}n=n+4|0}while((n|0)<16)}}while(0);t=t+1|0}while(t>>>0<(Xi[b>>2]|0)>>>0);W=h;P=64;L=80;K=48;I=c;G=w;z=o;x=d;Z=v}else{W=h;P=64;L=80;K=48;I=c;G=w;z=o;x=d;Z=v}}else{Xi[i+21756>>2]=f;Z=Xi[O>>2]|0;Xi[i+21760>>2]=Z;W=t;P=16;L=32;K=0;I=e+26260|0;G=w;z=k;x=f}e:do{if(!(U&4)){D=(U&7|0)!=0;i:do{if(D){E=i+844|0;f=Xi[E>>2]|0;r:do{if(f|0){c=Xi[J>>2]|0;do{if(Xi[e+205808>>2]|0){r=(Xi[i+21800>>2]|0)!=0;if(Xi[N>>2]&1)if(r){r=1;break}else break r;else{r=r&1^1;break}}else r=1}while(0);if((f|0)==2){b=Xi[C>>2]|0;f=Xi[i+21708>>2]|0;l=(Ji[(Xi[e+205804>>2]|0)+((Xi[R>>2]|0)+-1-(Xi[e+206436>>2]|0)<<1)>>1]|0)==(Xi[i+808>>2]|0)&1}else{l=Xi[C>>2]|0;b=l;f=(Xi[N>>2]|0)>((Xi[M>>2]|0)!=0|0)&1;l=(l|0)>0&1}u=x+1+c|0;w=Z+1+c|0;h=b+-1|0;s=i+43624+(r<<2)|0;k=Xi[s>>2]|0;n=k+(b*96|0)|0;if(f|0){o=(l|0)!=0;t=(c|0)==0;do{if(o){f=8<<c;y=k+(h*96|0)+f|0;A=y;O=Xi[A>>2]|0;A=Xi[A+4>>2]|0;r=(-7<<c)-u|0;H=z+r|0;S=H;m=Xi[S+4>>2]|0;Xi[y>>2]=Xi[S>>2];Xi[y+4>>2]=m;Xi[H>>2]=O;Xi[H+4>>2]=A;if(t){r=n;l=z+(1-u)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;H=56;break}else{a=f+8+(k+(h*96|0))|0;l=a;f=Xi[l>>2]|0;l=Xi[l+4>>2]|0;r=z+(r+8)|0;A=r;H=Xi[A+4>>2]|0;Xi[a>>2]=Xi[A>>2];Xi[a+4>>2]=H;Xi[r>>2]=f;Xi[r+4>>2]=l;r=n;l=(1<<c)-u|0;f=l;l=z+l|0;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;H=55;break}}else{r=n;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;f=(1<<c)-u|0;l=z+f|0;if(t){f=a;H=56}else H=55}}while(0);if((H|0)==55){O=l;A=Xi[O+4>>2]|0;y=n;Xi[y>>2]=Xi[O>>2];Xi[y+4>>2]=A;y=l;Xi[y>>2]=a;Xi[y+4>>2]=r;y=k+(b*96|0)+8|0;A=y;O=Xi[A>>2]|0;A=Xi[A+4>>2]|0;l=z+(f+8)|0;S=l;m=Xi[S+4>>2]|0;Xi[y>>2]=Xi[S>>2];Xi[y+4>>2]=m;Xi[l>>2]=O;Xi[l+4>>2]=A;l=1}else if((H|0)==56){y=l;O=Xi[y+4>>2]|0;A=n;Xi[A>>2]=Xi[y>>2];Xi[A+4>>2]=O;Xi[l>>2]=f;Xi[l+4>>2]=r;l=0}f=8<<c;m=k+(b*96|0)+f|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;r=(9<<c)-u|0;A=z+r|0;v=A;S=Xi[v+4>>2]|0;Xi[m>>2]=Xi[v>>2];Xi[m+4>>2]=S;Xi[A>>2]=y;Xi[A+4>>2]=O;if(l){m=f+8+(k+(b*96|0))|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=z+(r+8)|0;v=A;S=Xi[v+4>>2]|0;Xi[m>>2]=Xi[v>>2];Xi[m+4>>2]=S;Xi[A>>2]=y;Xi[A+4>>2]=O}r=(Xi[C>>2]|0)+1|0;if((r|0)<(Xi[e+206432>>2]|0)?(m=(Xi[s>>2]|0)+(r*96|0)|0,O=m,y=Xi[O>>2]|0,O=Xi[O+4>>2]|0,_=(17<<c)-u|0,A=z+_|0,v=A,S=Xi[v+4>>2]|0,m,Xi[m>>2]=Xi[v>>2],Xi[m+4>>2]=S,A,Xi[A>>2]=y,Xi[A+4>>2]=O,l):0){m=(Xi[s>>2]|0)+(((Xi[C>>2]|0)+1|0)*96|0)+8|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=z+(_+8)|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O}a=16<<c;if(o){m=k+(h*96|0)+a|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;r=(-7<<c)-w|0;A=W+r|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O;if(l){m=a+8+(k+(h*96|0))|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=W+(r+8)|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O}f=24<<c;m=k+(h*96|0)+f|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=G+r|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O;if(l){y=f+8+(k+(h*96|0))|0;A=y;O=Xi[A>>2]|0;A=Xi[A+4>>2]|0;l=G+(r+8)|0;_=l;m=Xi[_+4>>2]|0;Xi[y>>2]=Xi[_>>2];Xi[y+4>>2]=m;Xi[l>>2]=O;Xi[l+4>>2]=A;l=1}else l=0}m=k+(b*96|0)+a|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;f=1-w+c|0;A=W+f|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O;if(l){m=a+8+(k+(b*96|0))|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=W+(f+8)|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O}r=24<<c;m=k+(b*96|0)+r|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=G+f|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O;if(l){m=r+8+(k+(b*96|0))|0;O=m;y=Xi[O>>2]|0;O=Xi[O+4>>2]|0;A=G+(f+8)|0;S=A;_=Xi[S+4>>2]|0;Xi[m>>2]=Xi[S>>2];Xi[m+4>>2]=_;Xi[A>>2]=y;Xi[A+4>>2]=O}}}}while(0);v=i+21632|0;zz[Xi[e+26128+(Xi[v>>2]<<2)>>2]&255](W,Z);zz[Xi[e+26128+(Xi[v>>2]<<2)>>2]&255](G,Z);v=Xi[J>>2]|0;r=Xi[p>>2]|0;r:do{if(!(U&1)){zz[Xi[e+26172+(Xi[i+21636>>2]<<2)>>2]&255](z,x);if(Wi[i+43648>>0]|0){if(!j){aV[Xi[e+132>>2]&1023](i+44384|0,i+47456|0,Xi[(Xi[e+205756>>2]|0)+(r<<6)>>2]|0);break}r=(v|0)==0;f=i+44384|0;l=i+47456|0;n=0;do{a=qi[113340+n>>0]|0;if(r)Gi[i+44384+(a<<1)>>1]=Gi[i+47456+(n<<1)>>1]|0;else Xi[f+(a<<2)>>2]=Xi[l+(n<<2)>>2];n=n+1|0}while((n|0)!=16)}}else{if(U&16777216|0){if(j){k=Xi[e+140>>2]|0;w=k}else{w=Xi[e+104>>2]|0;k=Xi[e+112>>2]|0}l=e+26664|0;a=e+206420|0;n=i+21732|0;t=i+21740|0;o=(v|0)==0;s=i+44384|0;h=0;while(1){u=z+(Xi[e+26260+(h+K<<2)>>2]|0)|0;r=qi[120643+h>>0]|0;g=Wi[i+21640+r>>0]|0;f=g<<24>>24;do{if(j?g<<24>>24<2&(Xi[l>>2]|0)==244:0)if((Xi[a>>2]|0)==-1){Uz[Xi[e+26224+(f<<2)>>2]&127](u,i+44384+(h<<4<<v<<1)|0,Xi[n>>2]<<h&32768,Xi[t>>2]<<h&16384,x);break}else{aV[Xi[e+26216+(f<<2)>>2]&1023](u,i+44384+(h<<4<<v<<1)|0,x);break}else H=82}while(0);f:do{if((H|0)==82){H=0;g=Wi[i+43648+r>>0]|0;nV[Xi[e+26080+(f<<2)>>2]&255](u,Xi[n>>2]<<h&32768,Xi[t>>2]<<h&16384,x);switch(g<<24>>24){case 0:break f;case 1:{r=h<<4;if(o)f=Ji[i+44384+(r<<1)>>1]|0;else f=Xi[s+(r<<2)>>2]|0;if(f){aV[k&1023](u,i+44384+(r<<v<<1)|0,x);break f}break}default:r=h<<4}aV[w&1023](u,i+44384+(r<<v<<1)|0,x)}}while(0);h=h+4|0;if((h|0)>=16)break r}}if(j){d=Xi[e+144>>2]|0;c=d}else{c=Xi[e+100>>2]|0;d=Xi[e+108>>2]|0}t=e+26664|0;o=i+21740|0;s=(v|0)==0;u=3-x|0;h=3-((x|0)/2|0)|0;n=(4<<v)-x|0;w=i+44384|0;b=0;do{r=Xi[e+26260+(b+K<<2)>>2]|0;k=z+r|0;l=qi[120643+b>>0]|0;f=Wi[i+21640+l>>0]|0;a=f<<24>>24;if(j?f<<24>>24<2&(Xi[t>>2]|0)==244:0)aV[Xi[e+26208+(a<<2)>>2]&1023](k,i+44384+(b<<4<<v<<1)|0,x);else H=98;f:do{if((H|0)==98){H=0;do{if((f&-5)<<24>>24==3){if(Xi[o>>2]&32768>>>b|0){r=z+(n+r)|0;break}if(s){Xi[F>>2]=Zi(qi[z+(u+r)>>0]|0,16843009)|0;r=F;break}else{A=rN(Ji[k+(h<<1)>>1]|0,0,65537,65537)|0;r=g;Xi[r>>2]=A;Xi[r+4>>2]=Ie;r=g;break}}else r=0}while(0);aV[Xi[e+26020+(a<<2)>>2]&1023](k,r,x);switch(Wi[i+43648+l>>0]|0){case 0:break f;case 1:{r=b<<4;if(s)f=Ji[i+44384+(r<<1)>>1]|0;else f=Xi[w+(r<<2)>>2]|0;if(f){aV[d&1023](k,i+44384+(r<<v<<1)|0,x);break f}break}default:r=b<<4}aV[c&1023](k,i+44384+(r<<v<<1)|0,x)}}while(0);b=b+1|0}while((b|0)!=16)}}while(0);f=Xi[E>>2]|0;if(f){b=Xi[J>>2]|0;do{if(Xi[e+205808>>2]|0){r=(Xi[i+21800>>2]|0)!=0;if(Xi[N>>2]&1)if(r){l=1;break}else{H=194;break i}else{l=r&1^1;break}}else l=1}while(0);if((f|0)==2){k=Xi[C>>2]|0;f=Xi[i+21708>>2]|0;r=(Ji[(Xi[e+205804>>2]|0)+((Xi[R>>2]|0)+-1-(Xi[e+206436>>2]|0)<<1)>>1]|0)==(Xi[i+808>>2]|0)&1}else{r=Xi[C>>2]|0;k=r;f=(Xi[N>>2]|0)>((Xi[M>>2]|0)!=0|0)&1;r=(r|0)>0&1}s=x+1+b|0;h=Z+1+b|0;u=k+-1|0;o=i+43624+(l<<2)|0;w=Xi[o>>2]|0;l=w+(k*96|0)|0;if(f){t=(r|0)!=0;n=(b|0)==0;do{if(t){f=8<<b;M=w+(u*96|0)+f|0;N=M;R=Xi[N>>2]|0;N=Xi[N+4>>2]|0;r=(-7<<b)-s|0;H=z+r|0;A=H;g=Xi[A+4>>2]|0;Xi[M>>2]=Xi[A>>2];Xi[M+4>>2]=g;Xi[H>>2]=R;Xi[H+4>>2]=N;if(n){r=l;l=z+(1-s)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;H=136;break}else{H=f+8+(w+(u*96|0))|0;f=H;a=Xi[f>>2]|0;f=Xi[f+4>>2]|0;r=z+(r+8)|0;R=r;N=Xi[R+4>>2]|0;Xi[H>>2]=Xi[R>>2];Xi[H+4>>2]=N;Xi[r>>2]=a;Xi[r+4>>2]=f;r=l;l=(1<<b)-s|0;f=l;l=z+l|0;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;H=135;break}}else{r=l;a=Xi[r>>2]|0;r=Xi[r+4>>2]|0;f=(1<<b)-s|0;l=z+f|0;if(n){f=a;H=136}else H=135}}while(0);if((H|0)==135){N=l;Xi[N>>2]=a;Xi[N+4>>2]=r;N=w+(k*96|0)+8|0;H=Xi[N+4>>2]|0;l=z+(f+8)|0;Xi[l>>2]=Xi[N>>2];Xi[l+4>>2]=H;l=1}else if((H|0)==136){Xi[l>>2]=f;Xi[l+4>>2]=r;l=0}f=8<<b;M=w+(k*96|0)+f|0;N=M;R=Xi[N>>2]|0;N=Xi[N+4>>2]|0;r=(9<<b)-s|0;H=z+r|0;A=H;g=Xi[A+4>>2]|0;Xi[M>>2]=Xi[A>>2];Xi[M+4>>2]=g;Xi[H>>2]=R;Xi[H+4>>2]=N;if(l){M=f+8+(w+(k*96|0))|0;N=M;R=Xi[N>>2]|0;N=Xi[N+4>>2]|0;H=z+(r+8)|0;A=H;g=Xi[A+4>>2]|0;Xi[M>>2]=Xi[A>>2];Xi[M+4>>2]=g;Xi[H>>2]=R;Xi[H+4>>2]=N}r=(Xi[C>>2]|0)+1|0;if((r|0)<(Xi[e+206432>>2]|0)?(M=(Xi[o>>2]|0)+(r*96|0)|0,N=M,R=Xi[N>>2]|0,N=Xi[N+4>>2]|0,T=(17<<b)-s|0,H=z+T|0,A=H,g=Xi[A+4>>2]|0,M,Xi[M>>2]=Xi[A>>2],Xi[M+4>>2]=g,H,Xi[H>>2]=R,Xi[H+4>>2]=N,l):0){g=(Xi[o>>2]|0)+(((Xi[C>>2]|0)+1|0)*96|0)+8|0;C=g;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=z+(T+8)|0;M=H;R=Xi[M+4>>2]|0;T=g;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C}a=16<<b;if(t){T=w+(u*96|0)+a|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;r=(-7<<b)-h|0;H=W+r|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C;if(l){T=a+8+(w+(u*96|0))|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=W+(r+8)|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C}f=24<<b;T=w+(u*96|0)+f|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=G+r|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C;if(l){N=f+8+(w+(u*96|0))|0;H=N;C=Xi[H>>2]|0;H=Xi[H+4>>2]|0;l=G+(r+8)|0;R=l;T=Xi[R+4>>2]|0;Xi[N>>2]=Xi[R>>2];Xi[N+4>>2]=T;Xi[l>>2]=C;Xi[l+4>>2]=H;l=1}else l=0}T=w+(k*96|0)+a|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;f=1-h+b|0;H=W+f|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C;if(l){T=a+8+(w+(k*96|0))|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=W+(f+8)|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C}r=24<<b;T=w+(k*96|0)+r|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=G+f|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C;if(l){T=r+8+(w+(k*96|0))|0;C=T;N=Xi[C>>2]|0;C=Xi[C+4>>2]|0;H=G+(f+8)|0;M=H;R=Xi[M+4>>2]|0;Xi[T>>2]=Xi[M>>2];Xi[T+4>>2]=R;Xi[H>>2]=N;Xi[H+4>>2]=C;H=194}else H=194}else H=194}else H=194}else{s=Xi[e+209348>>2]|0;a=e+152|0;p=Xi[e+209352>>2]|0;n=e+168|0;t=e+16|0;o=e+32|0;F=Xi[(Xi[S>>2]|0)+(Xi[R>>2]<<2)>>2]|0;r=Xi[J>>2]|0;f=Wi[i+44108>>0]|0;l=f<<24>>24>-1;if(X){if(l){R=f<<24>>24;g=Xi[C>>2]|0;M=(g<<4|8)+(Gi[i+43824>>1]>>2)|0;T=(Gi[i+43826>>1]>>2)+(Xi[N>>2]<<4)|0;g=(M<<r)+(64<<r)+(Zi(T+(g<<2&12)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[A>>2]&1023]((Xi[i+23384+(R*40|0)>>2]|0)+g|0,Xi[y>>2]|0,4);M=(Zi((Xi[C>>2]&7)+(T>>1)|0,Xi[O>>2]|0)|0)+((M>>1)+64<<r)|0;T=Xi[i+23384+(R*40|0)+4>>2]|0;aV[Xi[A>>2]&1023](T+M|0,(Xi[i+23384+(R*40|0)+8>>2]|0)-T|0,2)}do{if(!(F&8)){if(F&16|0){R=s+64|0;T=p+64|0;xD(e,i,0,0,8,8<<Xi[J>>2],z,W,G,0,0,R,Xi[a>>2]|0,T,Xi[n>>2]|0,t,o,F&4096,F&16384);xD(e,i,8,0,8,8<<Xi[J>>2],z,W,G,0,4,R,Xi[a>>2]|0,T,Xi[n>>2]|0,t,o,F&8192,F&32768);break}h=i+21756|0;if(F&32|0){_=s+64|0;m=e+156|0;g=p+64|0;M=e+172|0;R=e+20|0;T=e+36|0;xD(e,i,0,0,16,Xi[h>>2]<<3,z,W,G,0,0,_,Xi[m>>2]|0,g,Xi[M>>2]|0,R,T,F&4096,F&16384);xD(e,i,4,0,16,Xi[h>>2]<<3,z,W,G,4,0,_,Xi[m>>2]|0,g,Xi[M>>2]|0,R,T,F&8192,F&32768);break}w=s+128|0;k=e+160|0;b=p+128|0;c=e+176|0;d=e+24|0;v=e+40|0;E=e+156|0;S=e+172|0;_=e+20|0;m=e+36|0;u=s+64|0;l=p+64|0;s=0;do{r=Ji[i+44376+(s<<1)>>1]|0;a=s<<2;n=a&4;t=s<<1&4;do{if(!(r&8)){if(r&16|0){R=r&4096;T=r&16384;xD(e,i,a,0,4,4<<Xi[J>>2],z,W,G,n,t,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,R,T);xD(e,i,a|2,0,4,4<<Xi[J>>2],z,W,G,n,t|2,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,R,T);break}if(r&32|0){R=r&4096;T=r&16384;xD(e,i,a,0,8,Xi[h>>2]<<2,z,W,G,n,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,R,T);xD(e,i,a|1,0,8,Xi[h>>2]<<2,z,W,G,n|2,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,R,T);break}o=r&4096;r=r&16384;f=0;do{xD(e,i,f+a|0,1,4,0,z,W,G,f<<1&2|n,f&2|t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,o,r);f=f+1|0}while((f|0)!=4)}else xD(e,i,a,1,8,0,z,W,G,n,t,u,Xi[E>>2]|0,l,Xi[S>>2]|0,_,m,r&4096,r&16384)}while(0);s=s+1|0}while((s|0)!=4)}else xD(e,i,0,1,16,0,z,W,G,0,0,s,Xi[a>>2]|0,p,Xi[n>>2]|0,t,o,F&4096,F&16384)}while(0);if(!(F&49152)){H=194;break}r=Xi[J>>2]|0;f=Wi[i+44148>>0]|0;if(f<<24>>24<=-1){o=r;break}T=f<<24>>24;R=Xi[C>>2]|0;H=(R<<4|8)+(Gi[i+43984>>1]>>2)|0;N=(Gi[i+43986>>1]>>2)+(Xi[N>>2]<<4)|0;R=(H<<r)+(64<<r)+(Zi(N+(R<<2&12)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[A>>2]&1023]((Xi[i+25304+(T*40|0)>>2]|0)+R|0,Xi[y>>2]|0,4);C=(Zi((Xi[C>>2]&7)+(N>>1)|0,Xi[O>>2]|0)|0)+((H>>1)+64<<r)|0;H=Xi[i+25304+(T*40|0)+4>>2]|0;aV[Xi[A>>2]&1023](H+C|0,(Xi[i+25304+(T*40|0)+8>>2]|0)-H|0,2);H=194;break}else{if(l){R=f<<24>>24;g=Xi[C>>2]|0;M=(g<<4|8)+(Gi[i+43824>>1]>>2)|0;T=(Gi[i+43826>>1]>>2)+(Xi[N>>2]<<4)|0;g=(M<<r)+(64<<r)+(Zi(T+(g<<2&12)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[A>>2]&1023]((Xi[i+23384+(R*40|0)>>2]|0)+g|0,Xi[y>>2]|0,4);M=(Zi((Xi[C>>2]&7)+(T>>1)|0,Xi[O>>2]|0)|0)+((M>>1)+64<<r)|0;T=Xi[i+23384+(R*40|0)+4>>2]|0;aV[Xi[A>>2]&1023](T+M|0,(Xi[i+23384+(R*40|0)+8>>2]|0)-T|0,2)}do{if(!(F&8)){if(F&16|0){R=s+64|0;T=p+64|0;zD(e,i,0,0,8,8<<Xi[J>>2],z,W,G,0,0,R,Xi[a>>2]|0,T,Xi[n>>2]|0,t,o,F&4096,F&16384);zD(e,i,8,0,8,8<<Xi[J>>2],z,W,G,0,4,R,Xi[a>>2]|0,T,Xi[n>>2]|0,t,o,F&8192,F&32768);break}h=i+21756|0;if(F&32|0){_=s+64|0;m=e+156|0;g=p+64|0;M=e+172|0;R=e+20|0;T=e+36|0;zD(e,i,0,0,16,Xi[h>>2]<<3,z,W,G,0,0,_,Xi[m>>2]|0,g,Xi[M>>2]|0,R,T,F&4096,F&16384);zD(e,i,4,0,16,Xi[h>>2]<<3,z,W,G,4,0,_,Xi[m>>2]|0,g,Xi[M>>2]|0,R,T,F&8192,F&32768);break}w=s+128|0;k=e+160|0;b=p+128|0;c=e+176|0;d=e+24|0;v=e+40|0;E=e+156|0;S=e+172|0;_=e+20|0;m=e+36|0;u=s+64|0;l=p+64|0;s=0;do{r=Ji[i+44376+(s<<1)>>1]|0;a=s<<2;n=a&4;t=s<<1&4;do{if(!(r&8)){if(r&16|0){R=r&4096;T=r&16384;zD(e,i,a,0,4,4<<Xi[J>>2],z,W,G,n,t,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,R,T);zD(e,i,a|2,0,4,4<<Xi[J>>2],z,W,G,n,t|2,w,Xi[E>>2]|0,b,Xi[S>>2]|0,_,m,R,T);break}if(r&32|0){R=r&4096;T=r&16384;zD(e,i,a,0,8,Xi[h>>2]<<2,z,W,G,n,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,R,T);zD(e,i,a|1,0,8,Xi[h>>2]<<2,z,W,G,n|2,t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,R,T);break}o=r&4096;r=r&16384;f=0;do{zD(e,i,f+a|0,1,4,0,z,W,G,f<<1&2|n,f&2|t,w,Xi[k>>2]|0,b,Xi[c>>2]|0,d,v,o,r);f=f+1|0}while((f|0)!=4)}else zD(e,i,a,1,8,0,z,W,G,n,t,u,Xi[E>>2]|0,l,Xi[S>>2]|0,_,m,r&4096,r&16384)}while(0);s=s+1|0}while((s|0)!=4)}else zD(e,i,0,1,16,0,z,W,G,0,0,s,Xi[a>>2]|0,p,Xi[n>>2]|0,t,o,F&4096,F&16384)}while(0);if(!(F&49152)){H=194;break}r=Xi[J>>2]|0;f=Wi[i+44148>>0]|0;if(f<<24>>24<=-1){o=r;break}T=f<<24>>24;R=Xi[C>>2]|0;H=(R<<4|8)+(Gi[i+43984>>1]>>2)|0;N=(Gi[i+43986>>1]>>2)+(Xi[N>>2]<<4)|0;R=(H<<r)+(64<<r)+(Zi(N+(R<<2&12)|0,Xi[i+21756>>2]|0)|0)|0;aV[Xi[A>>2]&1023]((Xi[i+25304+(T*40|0)>>2]|0)+R|0,Xi[y>>2]|0,4);C=(Zi((Xi[C>>2]&7)+(N>>1)|0,Xi[O>>2]|0)|0)+((H>>1)+64<<r)|0;H=Xi[i+25304+(T*40|0)+4>>2]|0;aV[Xi[A>>2]&1023](H+C|0,(Xi[i+25304+(T*40|0)+8>>2]|0)-H|0,2);H=194;break}}}while(0);if((H|0)==194)o=Xi[J>>2]|0;i:do{if(!(U&1)){if(!(U&2)){if(!(Xi[i+21824>>2]&15))break;r=(U&16777216|0)!=0;if(!j)if(r){Uz[Xi[e+120>>2]&127](z,I,i+44384|0,x,i+43648|0);break}else{Uz[Xi[e+116>>2]&127](z,I,i+44384|0,x,i+43648|0);break}l=r?4:1;r=Xi[(r?e+140|0:e+144|0)>>2]|0;f=0;while(1){if(Wi[(qi[120643+f>>0]|0)+(i+43648)>>0]|0)aV[r&1023](z+(Xi[e+26260+(f+K<<2)>>2]|0)|0,i+44384+(f<<4<<o<<1)|0,x);f=f+l|0;if((f|0)>=16)break i}}if(!j){Uz[Xi[e+128>>2]&127](z,I,i+44384|0,x,i+43648|0);break}if((Xi[e+26664>>2]|0)==244?(B=Xi[i+21636>>2]|0,(B+-1|0)>>>0<2):0){nV[Xi[e+26244+(B<<2)>>2]&255](z,I,i+44384|0,x);break}f=(o|0)==0;l=i+44384|0;a=e+144|0;t=0;do{n=t<<4;if(!(Wi[(qi[120643+t>>0]|0)+(i+43648)>>0]|0)){if(f)r=Ji[i+44384+(n<<1)>>1]|0;else r=Xi[l+(n<<2)>>2]|0;if(r|0)H=207}else H=207;if((H|0)==207){H=0;aV[Xi[a>>2]&1023](z+(Xi[e+26260+(t+K<<2)>>2]|0)|0,i+44384+(n<<o<<1)|0,x)}t=t+1|0}while((t|0)!=16)}}while(0);if(Xi[i+21824>>2]&48|0){Xi[q>>2]=W;r=q+4|0;Xi[r>>2]=G;if(!j){r=Xi[i+828>>2]|0;f=Xi[i+832>>2]|0;if(Wi[i+43688>>0]|0)zz[Xi[e+136>>2]&255](i+44384+(256<<Xi[J>>2]<<1)|0,Xi[(Xi[e+205756+((D?1:4)<<2)>>2]|0)+((X?r+3|0:r)<<6)>>2]|0);if(Wi[i+43728>>0]|0)zz[Xi[e+136>>2]&255](i+44384+(512<<Xi[J>>2]<<1)|0,Xi[(Xi[e+205756+((D?2:5)<<2)>>2]|0)+((X?f+3|0:f)<<6)>>2]|0);Uz[Xi[e+124>>2]&127](q,I,i+44384|0,Z,i+43648|0);break}if((D?(Xi[e+26664>>2]|0)==244:0)?(V=i+21632|0,Y=Xi[V>>2]|0,(Y+-1|0)>>>0<2):0){nV[Xi[e+26232+(Y<<2)>>2]&255](W,e+26260+(P<<2)|0,i+44384+(256<<Xi[J>>2]<<1)|0,Z);nV[Xi[e+26232+(Xi[V>>2]<<2)>>2]&255](Xi[r>>2]|0,e+26260+(L<<2)|0,i+44384+(512<<Xi[J>>2]<<1)|0,Z);break}s=Xi[e+144>>2]|0;u=i+44384|0;h=20;w=24;k=1;while(1){f=k<<4;n=f|4;if((f|0)<(n|0)){l=q+(k+-1<<2)|0;o=f;do{a=Xi[J>>2]|0;t=o<<4;if(!(Wi[(qi[120643+o>>0]|0)+(i+43648)>>0]|0)){if(!a)r=Ji[i+44384+(t<<1)>>1]|0;else r=Xi[u+(t<<2)>>2]|0;if(r|0)H=233}else H=233;if((H|0)==233){H=0;aV[s&1023]((Xi[l>>2]|0)+(Xi[e+26260+(o+K<<2)>>2]|0)|0,i+44384+(t<<a<<1)|0,Z)}o=o+1|0}while((o|0)!=(h|0))}if(X&(n|0)<(f|8|0)){t=q+(k+-1<<2)|0;do{f=n+4|0;l=Xi[J>>2]|0;a=n<<4;if(!(Wi[(qi[120643+f>>0]|0)+(i+43648)>>0]|0)){if(!l)r=Ji[i+44384+(a<<1)>>1]|0;else r=Xi[u+(a<<2)>>2]|0;if(r|0)H=242}else H=242;if((H|0)==242){H=0;aV[s&1023]((Xi[t>>2]|0)+(Xi[e+26260+(f+K<<2)>>2]|0)|0,i+44384+(a<<l<<1)|0,Z)}n=n+1|0}while((n|0)!=(w|0))}k=k+1|0;if((k|0)==3)break;else{h=h+16|0;w=w+16|0}}}}else{h=Xi[e+27844>>2]|0;n=i+43608|0;if(!(Xi[J>>2]|0)){r=0;do{f=z+(Zi(r,x)|0)|0;l=(Xi[n>>2]|0)+(r<<4)|0;a=f+16|0;do{Wi[f>>0]=Wi[l>>0]|0;f=f+1|0;l=l+1|0}while((f|0)<(a|0));r=r+1|0}while((r|0)!=16);if(!(Xi[E>>2]|0)){J=1<<h+-1&255;jT(W|0,J|0,8)|0;jT(G|0,J|0,8)|0;jT(W+Z|0,J|0,8)|0;jT(G+Z|0,J|0,8)|0;i=Z<<1;jT(W+i|0,J|0,8)|0;jT(G+i|0,J|0,8)|0;i=Z*3|0;jT(W+i|0,J|0,8)|0;jT(G+i|0,J|0,8)|0;i=Z<<2;jT(W+i|0,J|0,8)|0;jT(G+i|0,J|0,8)|0;i=Z*5|0;jT(W+i|0,J|0,8)|0;jT(G+i|0,J|0,8)|0;i=Z*6|0;jT(W+i|0,J|0,8)|0;jT(G+i|0,J|0,8)|0;Z=Z*7|0;jT(W+Z|0,J|0,8)|0;jT(G+Z|0,J|0,8)|0;break}f=Xi[n>>2]|0;r=(m<<3)+256|0;if((m|0)>0)l=0;else break;while(1){J=Zi(l,Z)|0;i=l<<3;e=f+(i+256)|0;K=e;K=qi[K>>0]|qi[K+1>>0]<<8|qi[K+2>>0]<<16|qi[K+3>>0]<<24;e=e+4|0;e=qi[e>>0]|qi[e+1>>0]<<8|qi[e+2>>0]<<16|qi[e+3>>0]<<24;q=W+J|0;X=q;Wi[X>>0]=K;Wi[X+1>>0]=K>>8;Wi[X+2>>0]=K>>16;Wi[X+3>>0]=K>>24;q=q+4|0;Wi[q>>0]=e;Wi[q+1>>0]=e>>8;Wi[q+2>>0]=e>>16;Wi[q+3>>0]=e>>24;i=f+(r+i)|0;q=i;q=qi[q>>0]|qi[q+1>>0]<<8|qi[q+2>>0]<<16|qi[q+3>>0]<<24;i=i+4|0;i=qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24;J=G+J|0;e=J;Wi[e>>0]=q;Wi[e+1>>0]=q>>8;Wi[e+2>>0]=q>>16;Wi[e+3>>0]=q>>24;J=J+4|0;Wi[J>>0]=i;Wi[J+1>>0]=i>>8;Wi[J+2>>0]=i>>16;Wi[J+3>>0]=i>>24;l=l+1|0;if((l|0)==(m|0))break e}}u=Xi[n>>2]|0;t=Xi[E>>2]|0;o=Zi(Ji[92952+(t<<1)>>1]|0,h)|0;s=(u|0)!=0&o>>>0<2147483640;u=s?u:0;o=s?o+8|0:8;s=32-h|0;r=0;a=0;do{l=z+(Zi(a,x)|0)|0;f=0;do{J=u+(r>>>3)|0;J=(ZT(qi[J>>0]|qi[J+1>>0]<<8|qi[J+2>>0]<<16|qi[J+3>>0]<<24|0)|0)<<(r&7)>>>s;r=r+h|0;r=o>>>0>r>>>0?r:o;Gi[l+(f<<1)>>1]=J;f=f+1|0}while((f|0)!=16);a=a+1|0}while((a|0)!=16);n=(m|0)>0;if(!t){if(!n)break;r=1<<h+-1&65535;f=0;while(1){J=Zi(f,Z)|0;Gi[G+J>>1]=r;Gi[W+J>>1]=r;Gi[G+(J+2)>>1]=r;Gi[W+(J+2)>>1]=r;Gi[G+(J+4)>>1]=r;Gi[W+(J+4)>>1]=r;Gi[G+(J+6)>>1]=r;Gi[W+(J+6)>>1]=r;Gi[G+(J+8)>>1]=r;Gi[W+(J+8)>>1]=r;Gi[G+(J+10)>>1]=r;Gi[W+(J+10)>>1]=r;Gi[G+(J+12)>>1]=r;Gi[W+(J+12)>>1]=r;Gi[G+(J+14)>>1]=r;Gi[W+(J+14)>>1]=r;f=f+1|0;if((f|0)==(m|0))break e}}if(n){a=0;do{l=W+(Zi(a,Z)|0)|0;f=0;do{J=u+(r>>>3)|0;J=(ZT(qi[J>>0]|qi[J+1>>0]<<8|qi[J+2>>0]<<16|qi[J+3>>0]<<24|0)|0)<<(r&7)>>>s;r=r+h|0;r=o>>>0>r>>>0?r:o;Gi[l+(f<<1)>>1]=J;f=f+1|0}while((f|0)!=8);a=a+1|0}while((a|0)!=(m|0));if(n){f=0;do{a=G+(Zi(f,Z)|0)|0;l=0;do{J=u+(r>>>3)|0;J=(ZT(qi[J>>0]|qi[J+1>>0]<<8|qi[J+2>>0]<<16|qi[J+3>>0]<<24|0)|0)<<(r&7)>>>s;r=r+h|0;r=o>>>0>r>>>0?r:o;Gi[a+(l<<1)>>1]=J;l=l+1|0}while((l|0)!=8);f=f+1|0}while((f|0)!=(m|0))}}}}while(0);Ue=Q;return}function xD(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b,c,d,v,E){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;b=b|0;c=c|0;d=d|0;v=v|0;E=E|0;var S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0;U=i+856|0;_=Xi[U>>2]|0;p=(v|0)!=0;F=(E|0)!=0;if(F&(p&(_|0)==2)?(S=i+21768|0,m=Xi[S>>2]|0,K=qi[120643+r>>0]|0,(Xi[i+3192+((Wi[i+44096+K>>0]|0)*384|0)+(Wi[i+44136+K>>0]<<3)+((m&1)<<2)>>2]|0)!=32):0){B=S;H=5}else H=3;do{if((H|0)==3){if((_|0)==1){m=i+21768|0;B=m;m=Xi[m>>2]|0;H=5;break}C=Xi[e+25960>>2]|0;L=u<<1;T=i+21756|0;m=Xi[T>>2]|0;N=(Zi(m,L)|0)+(s<<1<<C)|0;D=n+N|0;I=i+21760|0;L=(Zi(Xi[I>>2]|0,L)|0)+(s<<C)|0;P=t+L|0;L=o+L|0;g=(Xi[i+21764>>2]<<3)+s|0;R=i+21796|0;S=Xi[R>>2]|0;M=(Xi[i+21768>>2]>>S<<3)+u|0;if(!v){A=w;k=h}else{u=qi[120643+r>>0]|0;o=Wi[i+44096+u>>0]|0;t=(Gi[i+43776+(u<<2)>>1]|0)+(g<<3)|0;u=(Gi[i+43776+(u<<2)+2>>1]|0)+(M<<3)|0;F=u<<2&12|t&3;c=t>>2;y=u>>2;d=(Zi(y,m)|0)+(c<<C)|0;v=Xi[i+23384+(o*40|0)>>2]|0;_=v+d|0;O=Xi[e+206432>>2]|0;p=O<<4;s=Xi[e+206428>>2]<<4>>S;A=t&7;j=(A|0)==0?0:-3;K=(u&7|0)==0?0:-3;if((!((c|0)<(0-j|0)|(y|0)<(0-K|0))?(c+16|0)<=(j+p|0):0)?(y+16|0)<=(s+K|0):0)d=0;else{j=i+43620|0;_=2<<C;$z[Xi[e+8>>2]&3](Xi[j>>2]|0,v+(d-((m<<1)+_))|0,m,m,21,21,c+-2|0,y+-2|0,p,s);K=Xi[T>>2]|0;m=K;d=1;_=(Xi[j>>2]|0)+((K<<1)+_)|0}S=h+(F<<2)|0;aV[Xi[S>>2]&1023](D,_,m);if(!f)aV[Xi[S>>2]&1023](n+(N+a)|0,_+a|0,Xi[T>>2]|0);_=t>>3;m=Xi[I>>2]|0;S=(Zi(m,y)|0)+(_<<C)|0;c=(Xi[i+23384+(o*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(o*40|0)+8>>2]|0)+S|0;if(!d){_=u<<1&6;Xz[w&127](P,c,m,l,A,_)}else{V=e+8|0;h=i+43620|0;j=O<<3;$z[Xi[V>>2]&3](Xi[h>>2]|0,c,m,m,9,17,_,y,j,s);K=u<<1&6;Xz[w&127](P,Xi[h>>2]|0,Xi[I>>2]|0,l,A,K);Y=Xi[I>>2]|0;$z[Xi[V>>2]&3](Xi[h>>2]|0,S,Y,Y,9,17,_,y,j,s);_=K;S=Xi[h>>2]|0}Xz[w&127](L,S,Xi[I>>2]|0,l,A,_);A=b}if(E|0){o=qi[120643+r>>0]|0;y=Wi[i+44136+o>>0]|0;F=(Gi[i+43936+(o<<2)>>1]|0)+(g<<3)|0;o=(Gi[i+43936+(o<<2)+2>>1]|0)+(M<<3)|0;p=o<<2&12|F&3;S=F>>2;s=o>>2;m=Xi[T>>2]|0;c=(Zi(s,m)|0)+(S<<C)|0;d=Xi[i+25304+(y*40|0)>>2]|0;_=d+c|0;u=Xi[e+206432>>2]|0;v=u<<4;t=Xi[e+206428>>2]<<4>>Xi[R>>2];O=F&7;h=(O|0)==0?0:-3;w=(o&7|0)==0?0:-3;if((!((S|0)<(0-h|0)|(s|0)<(0-w|0))?(S+16|0)<=(v+h|0):0)?(s+16|0)<=(t+w|0):0)d=0;else{h=i+43620|0;_=2<<C;$z[Xi[e+8>>2]&3](Xi[h>>2]|0,d+(c-((m<<1)+_))|0,m,m,21,21,S+-2|0,s+-2|0,v,t);w=Xi[T>>2]|0;m=w;d=1;_=(Xi[h>>2]|0)+((w<<1)+_)|0}S=k+(p<<2)|0;aV[Xi[S>>2]&1023](D,_,m);if(!f)aV[Xi[S>>2]&1023](n+(N+a)|0,_+a|0,Xi[T>>2]|0);m=F>>3;c=Xi[I>>2]|0;S=(Zi(c,s)|0)+(m<<C)|0;_=(Xi[i+25304+(y*40|0)+4>>2]|0)+S|0;S=(Xi[i+25304+(y*40|0)+8>>2]|0)+S|0;if(!d){i=o<<1&6;Xz[A&127](P,_,c,l,O,i);_=i}else{w=e+8|0;i=i+43620|0;e=u<<3;$z[Xi[w>>2]&3](Xi[i>>2]|0,_,c,c,9,17,m,s,e,t);_=o<<1&6;Xz[A&127](P,Xi[i>>2]|0,Xi[I>>2]|0,l,O,_);a=Xi[I>>2]|0;$z[Xi[w>>2]&3](Xi[i>>2]|0,S,a,a,9,17,m,s,e,t);S=Xi[i>>2]|0}Xz[A&127](L,S,Xi[I>>2]|0,l,O,_)}}}while(0);do{if((H|0)==5){A=Xi[c>>2]|0;O=Xi[c+4>>2]|0;H=Xi[d>>2]|0;I=Xi[d+4>>2]|0;x=Xi[e+25960>>2]|0;z=u<<1;Y=i+21756|0;b=Xi[Y>>2]|0;T=(Zi(b,z)|0)+(s<<1<<x)|0;j=n+T|0;K=i+21760|0;S=Xi[K>>2]|0;z=(Zi(S,z)|0)+(s<<x)|0;V=t+z|0;z=o+z|0;_=(Xi[i+21764>>2]<<3)+s|0;R=i+21796|0;s=Xi[R>>2]|0;m=(m>>s<<3)+u|0;if(!(p&F)){y=F&1;t=qi[120643+r>>0]|0;u=Wi[i+44096+(y*40|0)+t>>0]|0;p=(Gi[i+43776+(y*160|0)+(t<<2)>>1]|0)+(_<<3)|0;t=(Gi[i+43776+(y*160|0)+(t<<2)+2>>1]|0)+(m<<3)|0;v=t<<2&12|p&3;S=p>>2;k=t>>2;m=(Zi(k,b)|0)+(S<<x)|0;c=Xi[i+23384+(y*1920|0)+(u*40|0)>>2]|0;_=c+m|0;o=Xi[e+206432>>2]|0;d=o<<4;F=Xi[e+206428>>2]<<4>>s;s=p&7;B=(s|0)==0?0:-3;U=(t&7|0)==0?0:-3;if((!((S|0)<(0-B|0)|(k|0)<(0-U|0))?(S+16|0)<=(B+d|0):0)?(k+16|0)<=(F+U|0):0){m=b;d=0}else{B=i+43620|0;_=2<<x;$z[Xi[e+8>>2]&3](Xi[B>>2]|0,c+(m-((b<<1)+_))|0,b,b,21,21,S+-2|0,k+-2|0,d,F);U=Xi[Y>>2]|0;m=U;d=1;_=(Xi[B>>2]|0)+((U<<1)+_)|0}S=h+(v<<2)|0;aV[Xi[S>>2]&1023](j,_,m);if(!f)aV[Xi[S>>2]&1023](n+(T+a)|0,_+a|0,Xi[Y>>2]|0);m=p>>3;c=Xi[K>>2]|0;S=(Zi(c,k)|0)+(m<<x)|0;_=(Xi[i+23384+(y*1920|0)+(u*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(y*1920|0)+(u*40|0)+8>>2]|0)+S|0;if(!d){e=t<<1&6;Xz[w&127](V,_,c,l,s,e);_=e}else{f=e+8|0;e=i+43620|0;a=o<<3;$z[Xi[f>>2]&3](Xi[e>>2]|0,_,c,c,9,17,m,k,a,F);_=t<<1&6;Xz[w&127](V,Xi[e>>2]|0,Xi[K>>2]|0,l,s,_);n=Xi[K>>2]|0;$z[Xi[f>>2]&3](Xi[e>>2]|0,S,n,n,9,17,m,k,a,F);S=Xi[e>>2]|0}Xz[w&127](z,S,Xi[K>>2]|0,l,s,_);Xz[A&127](j,Xi[Y>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(u<<4)+(y<<3)>>2]|0,Xi[i+888+(u<<4)+(y<<3)+4>>2]|0);if(!(Xi[i+860>>2]|0))break;e=i+868|0;Xz[O&127](V,Xi[K>>2]|0,l,Xi[e>>2]|0,Xi[i+1656+(u<<5)+(y<<4)>>2]|0,Xi[i+1656+(u<<5)+(y<<4)+4>>2]|0);Xz[O&127](z,Xi[K>>2]|0,l,Xi[e>>2]|0,Xi[i+1656+(u<<5)+(y<<4)+8>>2]|0,Xi[i+1656+(u<<5)+(y<<4)+12>>2]|0);break}P=Xi[i+43616>>2]|0;L=P+(16<<x)|0;E=S<<4;C=P+E|0;O=qi[120643+r>>0]|0;N=Wi[i+44096+O>>0]|0;D=Wi[i+44136+O>>0]|0;u=_<<3;p=(Gi[i+43776+(O<<2)>>1]|0)+u|0;y=m<<3;t=(Gi[i+43776+(O<<2)+2>>1]|0)+y|0;v=t<<2&12|p&3;S=p>>2;k=t>>2;_=(Zi(k,b)|0)+(S<<x)|0;c=Xi[i+23384+(N*40|0)>>2]|0;m=c+_|0;g=e+206432|0;o=Xi[g>>2]|0;d=o<<4;M=e+206428|0;F=Xi[M>>2]<<4>>s;s=p&7;A=(s|0)==0?0:-3;r=(t&7|0)==0?0:-3;if((!((S|0)<(0-A|0)|(k|0)<(0-r|0))?(S+16|0)<=(A+d|0):0)?(k+16|0)<=(F+r|0):0){_=b;d=0}else{A=i+43620|0;m=2<<x;$z[Xi[e+8>>2]&3](Xi[A>>2]|0,c+(_-((b<<1)+m))|0,b,b,21,21,S+-2|0,k+-2|0,d,F);r=Xi[Y>>2]|0;_=r;d=1;m=(Xi[A>>2]|0)+((r<<1)+m)|0}S=h+(v<<2)|0;aV[Xi[S>>2]&1023](j,m,_);A=(f|0)!=0;if(!A)aV[Xi[S>>2]&1023](n+(T+a)|0,m+a|0,Xi[Y>>2]|0);_=p>>3;m=Xi[K>>2]|0;S=(Zi(m,k)|0)+(_<<x)|0;c=(Xi[i+23384+(N*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(N*40|0)+8>>2]|0)+S|0;if(!d){_=t<<1&6;Xz[w&127](V,c,m,l,s,_)}else{b=e+8|0;n=i+43620|0;r=o<<3;$z[Xi[b>>2]&3](Xi[n>>2]|0,c,m,m,9,17,_,k,r,F);f=t<<1&6;Xz[w&127](V,Xi[n>>2]|0,Xi[K>>2]|0,l,s,f);T=Xi[K>>2]|0;$z[Xi[b>>2]&3](Xi[n>>2]|0,S,T,T,9,17,_,k,r,F);_=f;S=Xi[n>>2]|0}Xz[w&127](z,S,Xi[K>>2]|0,l,s,_);t=(Gi[i+43936+(O<<2)>>1]|0)+u|0;s=(Gi[i+43936+(O<<2)+2>>1]|0)+y|0;p=s<<2&12|t&3;c=t>>2;u=s>>2;m=Xi[Y>>2]|0;d=(Zi(u,m)|0)+(c<<x)|0;v=Xi[i+25304+(D*40|0)>>2]|0;_=v+d|0;k=Xi[g>>2]|0;S=k<<4;F=Xi[M>>2]<<4>>Xi[R>>2];o=t&7;f=(o|0)==0?0:-3;n=(s&7|0)==0?0:-3;if((!((c|0)<(0-f|0)|(u|0)<(0-n|0))?(c+16|0)<=(S+f|0):0)?(u+16|0)<=(F+n|0):0)d=0;else{f=i+43620|0;_=2<<x;$z[Xi[e+8>>2]&3](Xi[f>>2]|0,v+(d-((m<<1)+_))|0,m,m,21,21,c+-2|0,u+-2|0,S,F);n=Xi[Y>>2]|0;m=n;d=1;_=(Xi[f>>2]|0)+((n<<1)+_)|0}S=h+(p<<2)|0;aV[Xi[S>>2]&1023](C,_,m);if(!A)aV[Xi[S>>2]&1023](P+(E+a)|0,_+a|0,Xi[Y>>2]|0);m=t>>3;c=Xi[K>>2]|0;S=(Zi(c,u)|0)+(m<<x)|0;_=(Xi[i+25304+(D*40|0)+4>>2]|0)+S|0;S=(Xi[i+25304+(D*40|0)+8>>2]|0)+S|0;if(!d){e=s<<1&6;Xz[w&127](P,_,c,l,o,e);_=e}else{f=e+8|0;e=i+43620|0;a=k<<3;$z[Xi[f>>2]&3](Xi[e>>2]|0,_,c,c,9,17,m,u,a,F);_=s<<1&6;Xz[w&127](P,Xi[e>>2]|0,Xi[K>>2]|0,l,o,_);n=Xi[K>>2]|0;$z[Xi[f>>2]&3](Xi[e>>2]|0,S,n,n,9,17,m,u,a,F);S=Xi[e>>2]|0}Xz[w&127](L,S,Xi[K>>2]|0,l,o,_);if((Xi[U>>2]|0)==2){e=Xi[i+3192+(N*384|0)+(D<<3)+((Xi[B>>2]&1)<<2)>>2]|0;i=64-e|0;Gz[H&63](j,C,Xi[Y>>2]|0,l,5,e,i,0);Gz[I&63](V,P,Xi[K>>2]|0,l,5,e,i,0);Gz[I&63](z,L,Xi[K>>2]|0,l,5,e,i,0);break}else{Gz[H&63](j,C,Xi[Y>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(N<<4)>>2]|0,Xi[i+888+(D<<4)+8>>2]|0,(Xi[i+888+(D<<4)+12>>2]|0)+(Xi[i+888+(N<<4)+4>>2]|0)|0);e=i+868|0;Gz[I&63](V,P,Xi[K>>2]|0,l,Xi[e>>2]|0,Xi[i+1656+(N<<5)>>2]|0,Xi[i+1656+(D<<5)+16>>2]|0,(Xi[i+1656+(D<<5)+20>>2]|0)+(Xi[i+1656+(N<<5)+4>>2]|0)|0);Gz[I&63](z,L,Xi[K>>2]|0,l,Xi[e>>2]|0,Xi[i+1656+(N<<5)+8>>2]|0,Xi[i+1656+(D<<5)+24>>2]|0,(Xi[i+1656+(D<<5)+28>>2]|0)+(Xi[i+1656+(N<<5)+12>>2]|0)|0);break}}}while(0);return}function zD(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b,c,d,v,E){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;b=b|0;c=c|0;d=d|0;v=v|0;E=E|0;var S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0;U=i+856|0;_=Xi[U>>2]|0;p=(v|0)!=0;F=(E|0)!=0;if(F&(p&(_|0)==2)?(S=i+21768|0,m=Xi[S>>2]|0,W=qi[120643+r>>0]|0,(Xi[i+3192+((Wi[i+44096+W>>0]|0)*384|0)+(Wi[i+44136+W>>0]<<3)+((m&1)<<2)>>2]|0)!=32):0){x=S;B=5}else B=3;do{if((B|0)==3){if((_|0)==1){m=i+21768|0;x=m;m=Xi[m>>2]|0;B=5;break}P=Xi[e+25960>>2]|0;N=i+21756|0;c=Xi[N>>2]|0;D=(Zi(u<<1,c)|0)+(s<<1<<P)|0;C=n+D|0;H=i+21760|0;I=(Zi(Xi[H>>2]|0,u)|0)+(s<<P)|0;L=t+I|0;I=o+I|0;g=(Xi[i+21764>>2]<<3)+s|0;R=i+21768|0;T=i+21796|0;S=Xi[T>>2]|0;M=(Xi[R>>2]>>S<<3)+u|0;if(!v){A=w;k=h}else{_=qi[120643+r>>0]|0;u=Wi[i+44096+_>>0]|0;s=(Gi[i+43776+(_<<2)>>1]|0)+(g<<3)|0;_=(Gi[i+43776+(_<<2)+2>>1]|0)+(M<<3)|0;o=_<<2&12|s&3;d=s>>2;v=_>>2;p=(Zi(v,c)|0)+(d<<P)|0;F=Xi[i+23384+(u*40|0)>>2]|0;m=F+p|0;O=Xi[e+206432>>2]|0;t=O<<4;y=Xi[e+206428>>2]<<4>>S;A=s&7;K=(A|0)==0?0:-3;W=(_&7|0)==0?0:-3;if((!((d|0)<(0-K|0)|(v|0)<(0-W|0))?(d+16|0)<=(K+t|0):0)?(v+16|0)<=(y+W|0):0)p=0;else{K=i+43620|0;m=2<<P;$z[Xi[e+8>>2]&3](Xi[K>>2]|0,F+(p-((c<<1)+m))|0,c,c,21,21,d+-2|0,v+-2|0,t,y);W=Xi[N>>2]|0;c=W;p=1;m=(Xi[K>>2]|0)+((W<<1)+m)|0}S=h+(o<<2)|0;aV[Xi[S>>2]&1023](C,m,c);if(!f)aV[Xi[S>>2]&1023](n+(D+a)|0,m+a|0,Xi[N>>2]|0);if(Xi[T>>2]|0){_=(1-(Xi[i+23384+(u*40|0)+24>>2]|0)+(Xi[R>>2]&1)<<1)+_|0;S=_>>3;if((S|0)<0)S=1;else S=(S+8|0)>=(y>>1|0);p=S&1|p}m=s>>3;c=_>>3;d=Xi[H>>2]|0;S=(Zi(d,c)|0)+(m<<P)|0;v=(Xi[i+23384+(u*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(u*40|0)+8>>2]|0)+S|0;if(!p){h=l>>1;m=_&7;Xz[w&127](L,v,d,h,A,m);_=h}else{V=e+8|0;h=i+43620|0;Y=O<<3;j=y>>1;$z[Xi[V>>2]&3](Xi[h>>2]|0,v,d,d,9,9,m,c,Y,j);K=l>>1;W=_&7;Xz[w&127](L,Xi[h>>2]|0,Xi[H>>2]|0,K,A,W);_=Xi[H>>2]|0;$z[Xi[V>>2]&3](Xi[h>>2]|0,S,_,_,9,9,m,c,Y,j);_=K;m=W;S=Xi[h>>2]|0}Xz[w&127](I,S,Xi[H>>2]|0,_,A,m);A=b}if(E|0){_=qi[120643+r>>0]|0;y=Wi[i+44136+_>>0]|0;o=(Gi[i+43936+(_<<2)>>1]|0)+(g<<3)|0;_=(Gi[i+43936+(_<<2)+2>>1]|0)+(M<<3)|0;t=_<<2&12|o&3;S=o>>2;d=_>>2;c=Xi[N>>2]|0;v=(Zi(d,c)|0)+(S<<P)|0;p=Xi[i+25304+(y*40|0)>>2]|0;m=p+v|0;s=Xi[e+206432>>2]|0;F=s<<4;u=Xi[e+206428>>2]<<4>>Xi[T>>2];O=o&7;h=(O|0)==0?0:-3;w=(_&7|0)==0?0:-3;if((!((S|0)<(0-h|0)|(d|0)<(0-w|0))?(S+16|0)<=(F+h|0):0)?(d+16|0)<=(u+w|0):0)p=0;else{h=i+43620|0;m=2<<P;$z[Xi[e+8>>2]&3](Xi[h>>2]|0,p+(v-((c<<1)+m))|0,c,c,21,21,S+-2|0,d+-2|0,F,u);w=Xi[N>>2]|0;c=w;p=1;m=(Xi[h>>2]|0)+((w<<1)+m)|0}S=k+(t<<2)|0;aV[Xi[S>>2]&1023](C,m,c);if(!f)aV[Xi[S>>2]&1023](n+(D+a)|0,m+a|0,Xi[N>>2]|0);if(Xi[T>>2]|0){_=(1-(Xi[i+25304+(y*40|0)+24>>2]|0)+(Xi[R>>2]&1)<<1)+_|0;S=_>>3;if((S|0)<0)S=1;else S=(S+8|0)>=(u>>1|0);p=S&1|p}c=o>>3;d=_>>3;v=Xi[H>>2]|0;S=(Zi(v,d)|0)+(c<<P)|0;m=(Xi[i+25304+(y*40|0)+4>>2]|0)+S|0;S=(Xi[i+25304+(y*40|0)+8>>2]|0)+S|0;if(!p){l=l>>1;i=_&7;Xz[A&127](L,m,v,l,O,i);_=l;m=i}else{a=e+8|0;i=i+43620|0;w=s<<3;e=u>>1;$z[Xi[a>>2]&3](Xi[i>>2]|0,m,v,v,9,9,c,d,w,e);l=l>>1;m=_&7;Xz[A&127](L,Xi[i>>2]|0,Xi[H>>2]|0,l,O,m);_=Xi[H>>2]|0;$z[Xi[a>>2]&3](Xi[i>>2]|0,S,_,_,9,9,c,d,w,e);_=l;S=Xi[i>>2]|0}Xz[A&127](I,S,Xi[H>>2]|0,_,O,m)}}}while(0);do{if((B|0)==5){g=Xi[c>>2]|0;A=Xi[c+4>>2]|0;I=Xi[d>>2]|0;L=Xi[d+4>>2]|0;B=Xi[e+25960>>2]|0;Y=i+21756|0;c=Xi[Y>>2]|0;E=(Zi(u<<1,c)|0)+(s<<1<<B)|0;j=n+E|0;K=l>>1;W=i+21760|0;S=Xi[W>>2]|0;z=(Zi(S,u)|0)+(s<<B)|0;V=t+z|0;z=o+z|0;_=(Xi[i+21764>>2]<<3)+s|0;H=i+21796|0;o=Xi[H>>2]|0;m=(m>>o<<3)+u|0;if(!(p&F)){O=F&1;t=qi[120643+r>>0]|0;y=Wi[i+44096+(O*40|0)+t>>0]|0;k=(Gi[i+43776+(O*160|0)+(t<<2)>>1]|0)+(_<<3)|0;_=(Gi[i+43776+(O*160|0)+(t<<2)+2>>1]|0)+(m<<3)|0;t=_<<2&12|k&3;S=k>>2;d=_>>2;v=(Zi(d,c)|0)+(S<<B)|0;p=Xi[i+23384+(O*1920|0)+(y*40|0)>>2]|0;m=p+v|0;s=Xi[e+206432>>2]|0;F=s<<4;o=Xi[e+206428>>2]<<4>>o;u=k&7;r=(u|0)==0?0:-3;U=(_&7|0)==0?0:-3;if((!((S|0)<(0-r|0)|(d|0)<(0-U|0))?(S+16|0)<=(r+F|0):0)?(d+16|0)<=(o+U|0):0)p=0;else{r=i+43620|0;m=2<<B;$z[Xi[e+8>>2]&3](Xi[r>>2]|0,p+(v-((c<<1)+m))|0,c,c,21,21,S+-2|0,d+-2|0,F,o);U=Xi[Y>>2]|0;c=U;p=1;m=(Xi[r>>2]|0)+((U<<1)+m)|0}S=h+(t<<2)|0;aV[Xi[S>>2]&1023](j,m,c);if(!f)aV[Xi[S>>2]&1023](n+(E+a)|0,m+a|0,Xi[Y>>2]|0);if(Xi[H>>2]|0){_=(1-(Xi[i+23384+(O*1920|0)+(y*40|0)+24>>2]|0)+(Xi[x>>2]&1)<<1)+_|0;S=_>>3;if((S|0)<0)S=1;else S=(S+8|0)>=(o>>1|0);p=S&1|p}c=k>>3;d=_>>3;v=Xi[W>>2]|0;S=(Zi(v,d)|0)+(c<<B)|0;m=(Xi[i+23384+(O*1920|0)+(y*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(O*1920|0)+(y*40|0)+8>>2]|0)+S|0;if(!p){_=_&7;Xz[w&127](V,m,v,K,u,_)}else{h=e+8|0;e=i+43620|0;n=s<<3;a=o>>1;$z[Xi[h>>2]&3](Xi[e>>2]|0,m,v,v,9,9,c,d,n,a);_=_&7;Xz[w&127](V,Xi[e>>2]|0,Xi[W>>2]|0,K,u,_);f=Xi[W>>2]|0;$z[Xi[h>>2]&3](Xi[e>>2]|0,S,f,f,9,9,c,d,n,a);S=Xi[e>>2]|0}Xz[w&127](z,S,Xi[W>>2]|0,K,u,_);Xz[g&127](j,Xi[Y>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(y<<4)+(O<<3)>>2]|0,Xi[i+888+(y<<4)+(O<<3)+4>>2]|0);if(!(Xi[i+860>>2]|0))break;l=i+868|0;Xz[A&127](V,Xi[W>>2]|0,K,Xi[l>>2]|0,Xi[i+1656+(y<<5)+(O<<4)>>2]|0,Xi[i+1656+(y<<5)+(O<<4)+4>>2]|0);Xz[A&127](z,Xi[W>>2]|0,K,Xi[l>>2]|0,Xi[i+1656+(y<<5)+(O<<4)+8>>2]|0,Xi[i+1656+(y<<5)+(O<<4)+12>>2]|0);break}C=Xi[i+43616>>2]|0;P=C+(16<<B)|0;R=S<<4;D=C+R|0;A=qi[120643+r>>0]|0;T=Wi[i+44096+A>>0]|0;N=Wi[i+44136+A>>0]|0;y=_<<3;k=(Gi[i+43776+(A<<2)>>1]|0)+y|0;O=m<<3;_=(Gi[i+43776+(A<<2)+2>>1]|0)+O|0;t=_<<2&12|k&3;S=k>>2;d=_>>2;v=(Zi(d,c)|0)+(S<<B)|0;p=Xi[i+23384+(T*40|0)>>2]|0;m=p+v|0;M=e+206432|0;s=Xi[M>>2]|0;F=s<<4;b=e+206428|0;o=Xi[b>>2]<<4>>o;u=k&7;g=(u|0)==0?0:-3;r=(_&7|0)==0?0:-3;if((!((S|0)<(0-g|0)|(d|0)<(0-r|0))?(S+16|0)<=(g+F|0):0)?(d+16|0)<=(o+r|0):0)p=0;else{g=i+43620|0;m=2<<B;$z[Xi[e+8>>2]&3](Xi[g>>2]|0,p+(v-((c<<1)+m))|0,c,c,21,21,S+-2|0,d+-2|0,F,o);r=Xi[Y>>2]|0;c=r;p=1;m=(Xi[g>>2]|0)+((r<<1)+m)|0}S=h+(t<<2)|0;aV[Xi[S>>2]&1023](j,m,c);g=(f|0)!=0;if(!g)aV[Xi[S>>2]&1023](n+(E+a)|0,m+a|0,Xi[Y>>2]|0);if(Xi[H>>2]|0){_=(1-(Xi[i+23384+(T*40|0)+24>>2]|0)+(Xi[x>>2]&1)<<1)+_|0;S=_>>3;if((S|0)<0)S=1;else S=(S+8|0)>=(o>>1|0);p=S&1|p}m=k>>3;c=_>>3;d=Xi[W>>2]|0;S=(Zi(d,c)|0)+(m<<B)|0;v=(Xi[i+23384+(T*40|0)+4>>2]|0)+S|0;S=(Xi[i+23384+(T*40|0)+8>>2]|0)+S|0;if(!p){_=_&7;Xz[w&127](V,v,d,K,u,_)}else{k=e+8|0;n=i+43620|0;r=s<<3;f=o>>1;$z[Xi[k>>2]&3](Xi[n>>2]|0,v,d,d,9,9,m,c,r,f);_=_&7;Xz[w&127](V,Xi[n>>2]|0,Xi[W>>2]|0,K,u,_);E=Xi[W>>2]|0;$z[Xi[k>>2]&3](Xi[n>>2]|0,S,E,E,9,9,m,c,r,f);S=Xi[n>>2]|0}Xz[w&127](z,S,Xi[W>>2]|0,K,u,_);k=(Gi[i+43936+(A<<2)>>1]|0)+y|0;_=(Gi[i+43936+(A<<2)+2>>1]|0)+O|0;t=_<<2&12|k&3;d=k>>2;v=_>>2;c=Xi[Y>>2]|0;p=(Zi(v,c)|0)+(d<<B)|0;F=Xi[i+25304+(N*40|0)>>2]|0;m=F+p|0;s=Xi[M>>2]|0;S=s<<4;o=Xi[b>>2]<<4>>Xi[H>>2];u=k&7;f=(u|0)==0?0:-3;n=(_&7|0)==0?0:-3;if((!((d|0)<(0-f|0)|(v|0)<(0-n|0))?(d+16|0)<=(S+f|0):0)?(v+16|0)<=(o+n|0):0)p=0;else{f=i+43620|0;m=2<<B;$z[Xi[e+8>>2]&3](Xi[f>>2]|0,F+(p-((c<<1)+m))|0,c,c,21,21,d+-2|0,v+-2|0,S,o);n=Xi[Y>>2]|0;c=n;p=1;m=(Xi[f>>2]|0)+((n<<1)+m)|0}S=h+(t<<2)|0;aV[Xi[S>>2]&1023](D,m,c);if(!g)aV[Xi[S>>2]&1023](C+(R+a)|0,m+a|0,Xi[Y>>2]|0);if(Xi[H>>2]|0){_=(1-(Xi[i+25304+(N*40|0)+24>>2]|0)+(Xi[x>>2]&1)<<1)+_|0;S=_>>3;if((S|0)<0)S=1;else S=(S+8|0)>=(o>>1|0);p=S&1|p}c=k>>3;d=_>>3;v=Xi[W>>2]|0;S=(Zi(v,d)|0)+(c<<B)|0;m=(Xi[i+25304+(N*40|0)+4>>2]|0)+S|0;S=(Xi[i+25304+(N*40|0)+8>>2]|0)+S|0;if(!p){_=_&7;Xz[w&127](C,m,v,K,u,_)}else{h=e+8|0;e=i+43620|0;n=s<<3;a=o>>1;$z[Xi[h>>2]&3](Xi[e>>2]|0,m,v,v,9,9,c,d,n,a);_=_&7;Xz[w&127](C,Xi[e>>2]|0,Xi[W>>2]|0,K,u,_);f=Xi[W>>2]|0;$z[Xi[h>>2]&3](Xi[e>>2]|0,S,f,f,9,9,c,d,n,a);S=Xi[e>>2]|0}Xz[w&127](P,S,Xi[W>>2]|0,K,u,_);if((Xi[U>>2]|0)==2){e=Xi[i+3192+(T*384|0)+(N<<3)+((Xi[x>>2]&1)<<2)>>2]|0;i=64-e|0;Gz[I&63](j,D,Xi[Y>>2]|0,l,5,e,i,0);Gz[L&63](V,C,Xi[W>>2]|0,K,5,e,i,0);Gz[L&63](z,P,Xi[W>>2]|0,K,5,e,i,0);break}else{Gz[I&63](j,D,Xi[Y>>2]|0,l,Xi[i+864>>2]|0,Xi[i+888+(T<<4)>>2]|0,Xi[i+888+(N<<4)+8>>2]|0,(Xi[i+888+(N<<4)+12>>2]|0)+(Xi[i+888+(T<<4)+4>>2]|0)|0);l=i+868|0;Gz[L&63](V,C,Xi[W>>2]|0,K,Xi[l>>2]|0,Xi[i+1656+(T<<5)>>2]|0,Xi[i+1656+(N<<5)+16>>2]|0,(Xi[i+1656+(N<<5)+20>>2]|0)+(Xi[i+1656+(T<<5)+4>>2]|0)|0);Gz[L&63](z,P,Xi[W>>2]|0,K,Xi[l>>2]|0,Xi[i+1656+(T<<5)+8>>2]|0,Xi[i+1656+(N<<5)+24>>2]|0,(Xi[i+1656+(N<<5)+28>>2]|0)+(Xi[i+1656+(T<<5)+12>>2]|0)|0);break}}}while(0);return}function VD(e,i){e=e|0;i=i|0;var r=0;r=Xi[i>>2]|0;if(r|0?Xi[r+248>>2]|0:0){BO(Xi[e+4>>2]|0,i+4|0);UA(i+48|0);r=i+16|0;UA(r);UA(i+40|0);UA(i+24|0);UA(i+56|0);UA(i+28|0);UA(i+60|0);jT(r|0,0,648)|0}return}function YD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;t=Ue;Ue=Ue+32|0;a=t+16|0;f=t;l=Xi[i>>2]|0;if(Xi[l+248>>2]|0){Xi[f>>2]=113356;Xi[f+4>>2]=113372;Xi[f+8>>2]=72;nA(0,0,150445,f);$e()}f=Xi[r>>2]|0;if(!(Xi[f+248>>2]|0)){Xi[a>>2]=113398;Xi[a+4>>2]=113372;Xi[a+8>>2]=73;nA(0,0,150445,a);$e()}a=r+4|0;Xi[a>>2]=f;f=i+4|0;Xi[f>>2]=l;f=HO(f,a)|0;e:do{if((f|0)>=0?(a=i+16|0,Xi[a>>2]=BA(Xi[r+16>>2]|0)|0,l=BA(Xi[r+40>>2]|0)|0,Xi[i+40>>2]=l,!((l|0)==0|(Xi[a>>2]|0)==0)):0){Xi[i+20>>2]=Xi[r+20>>2];Xi[i+44>>2]=Xi[r+44>>2];l=0;do{a=i+24+(l<<2)|0;Xi[a>>2]=BA(Xi[r+24+(l<<2)>>2]|0)|0;o=BA(Xi[r+56+(l<<2)>>2]|0)|0;Xi[i+56+(l<<2)>>2]=o;if((o|0)==0|(Xi[a>>2]|0)==0){n=14;break e}Xi[i+32+(l<<2)>>2]=Xi[r+32+(l<<2)>>2];Xi[i+64+(l<<2)>>2]=Xi[r+64+(l<<2)>>2];l=l+1|0}while((l|0)<2);if(Xi[r+52>>2]|0){l=BA(Xi[r+48>>2]|0)|0;Xi[i+48>>2]=l;if(!l){n=14;break}Xi[i+52>>2]=Xi[l+4>>2]}Xi[i+72>>2]=Xi[r+72>>2];Xi[i+76>>2]=Xi[r+76>>2];qT(i+100|0,r+100|0,512)|0;f=i+612|0;o=r+612|0;Xi[f>>2]=Xi[o>>2];Xi[f+4>>2]=Xi[o+4>>2];Xi[f+8>>2]=Xi[o+8>>2];Xi[f+12>>2]=Xi[o+12>>2];Xi[i+80>>2]=Xi[r+80>>2];Xi[i+84>>2]=Xi[r+84>>2];Xi[i+88>>2]=Xi[r+88>>2];Xi[i+92>>2]=Xi[r+92>>2];Xi[i+96>>2]=Xi[r+96>>2];Xi[i+628>>2]=Xi[r+628>>2];Xi[i+632>>2]=Xi[r+632>>2];Xi[i+636>>2]=Xi[r+636>>2];Xi[i+652>>2]=Xi[r+652>>2];Xi[i+656>>2]=Xi[r+656>>2];Xi[i+660>>2]=Xi[r+660>>2];Xi[i+640>>2]=Xi[r+640>>2];Xi[i+644>>2]=Xi[r+644>>2];Xi[i+648>>2]=Xi[r+648>>2];f=0}else n=14}while(0);if((n|0)==14)VD(e,i);Ue=t;return f|0}function jD(e,i){e=e|0;i=i|0;Xi[e>>2]=0;Xi[e+4>>2]=0;Xi[e+8>>2]=0;Xi[e+12>>2]=0;Xi[e+16>>2]=0;Xi[e+20>>2]=0;Xi[e+24>>2]=0;Xi[e+28>>2]=0;if(i|0){Xi[e>>2]=Xi[i>>2];Xi[e+4>>2]=i+4;Xi[e+8>>2]=Xi[i+32>>2];Xi[e+16>>2]=Xi[i+64>>2];Xi[e+12>>2]=Xi[i+36>>2];Xi[e+20>>2]=Xi[i+68>>2];Xi[e+24>>2]=Xi[i+44>>2];Xi[e+28>>2]=Xi[i+632>>2]}return}function KD(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=Ue;Ue=Ue+16|0;a=n;f=Xi[e+4>>2]|0;Xi[e+206424>>2]=0;l=(r|0)!=0;if(!l?(Xi[f+808>>2]&1|0)!=0:0)i=0;else{if(!(Xi[e+25992>>2]|0)){i=uC(e,e+208160|0,Xi[e+208952>>2]|0)|0;Xi[e+207652>>2]=Xi[e+207632>>2];Xi[e+207656>>2]=Xi[e+207628>>2]}else i=0;Xi[e+207664>>2]=Xi[e+207660>>2];Xi[e+207668>>2]=Xi[e+207648>>2]}r=Xi[f+704>>2]|0;if(r){i=Yz[Xi[r+36>>2]&15](f)|0;if((i|0)<0)nA(f,16,122417,a)}if(!l?(Xi[e+25992>>2]|0)==0:0)VO((Xi[e+24620>>2]|0)+4|0,2147483647,(Xi[e+205812>>2]|0)==2&1);Xi[e+208968>>2]=0;Ue=n;return i|0}function WD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0;ke=Ue;Ue=Ue+416|0;he=ke+336|0;se=ke+328|0;oe=ke+320|0;ne=ke+312|0;fe=ke+304|0;ie=ke+296|0;ee=ke+288|0;$=ke+280|0;Q=ke+272|0;Z=ke+264|0;J=ke+256|0;q=ke+248|0;X=ke+240|0;W=ke+232|0;K=ke+208|0;j=ke+200|0;Y=ke+184|0;V=ke+176|0;z=ke+168|0;x=ke+160|0;U=ke+152|0;B=ke+144|0;H=ke+136|0;I=ke+128|0;L=ke+120|0;T=ke+112|0;P=ke+104|0;C=ke+96|0;D=ke+88|0;N=ke+80|0;R=ke+72|0;M=ke+64|0;g=ke+56|0;A=ke+48|0;O=ke+40|0;y=ke+32|0;p=ke+24|0;m=ke+16|0;_=ke+8|0;a=ke;we=iA(5304)|0;e:do{if(!we)r=-12;else{le=e+696|0;f=Xi[le>>2]|0;r=(Xi[e+700>>2]|0)-f|0;l=we+5300|0;Xi[l>>2]=r;if(r>>>0>4096){nA(Xi[e+4>>2]|0,24,114029,a);Xi[l>>2]=4096;f=Xi[le>>2]|0;r=4096}qT(we+1204|0,f|0,r|0)|0;ae=e+704|0;l=Xi[ae>>2]|0;re=e+712|0;F=Xi[re>>2]|0;n=f+(l>>>3)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;o=l+8|0;o=F>>>0>o>>>0?o:F;Xi[ae>>2]=o;b=Wi[f+(o>>>3)>>0]|0;s=((o|0)<(F|0)&1)+o|0;Xi[ae>>2]=s;c=Wi[f+(s>>>3)>>0]|0;u=((s|0)<(F|0)&1)+s|0;Xi[ae>>2]=u;d=Wi[f+(u>>>3)>>0]|0;h=((u|0)<(F|0)&1)+u|0;Xi[ae>>2]=h;v=Wi[f+(h>>>3)>>0]|0;w=((h|0)<(F|0)&1)+h|0;Xi[ae>>2]=w;E=Wi[f+(w>>>3)>>0]|0;k=((w|0)<(F|0)&1)+w|0;Xi[ae>>2]=k;S=Wi[f+(k>>>3)>>0]|0;r=((k|0)<(F|0)&1)+k+2|0;r=F>>>0>r>>>0?r:F;Xi[ae>>2]=r;t=f+(r>>>3)|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;a=r+8|0;a=F>>>0>a>>>0?a:F;Xi[ae>>2]=a;te=f+(a>>>3)|0;te=(ZT(qi[te>>0]|qi[te+1>>0]<<8|qi[te+2>>0]<<16|qi[te+3>>0]<<24|0)|0)<<(a&7)>>>23;a=(qi[98538+te>>0]|0)+a|0;a=F>>>0>a>>>0?a:F;Xi[ae>>2]=a;te=Wi[99050+te>>0]|0;ue=te&255;i:do{if((te&255)>31){e=Xi[e+4>>2]|0;Xi[_>>2]=ue;nA(e,16,114062,_)}else{t=(ZT(t|0)|0)<<(r&7)>>>24;_=(ZT(n|0)|0)<<(l&7)>>>24;Xi[we>>2]=ue;Xi[we+1164>>2]=24;te=we+4|0;Xi[te>>2]=_;Xi[we+1196>>2]=(c&255)<<(s&7)>>>6&2|(b&255)<<(o&7)>>>7&1|(d&255)<<(u&7)>>>5&4|(v&255)<<(h&7)>>>4&8|(E&255)<<(w&7)>>>3&16|(S&255)<<(k&7)>>>2&32;E=we+8|0;Xi[E>>2]=t;k=we+112|0;Xi[k>>2]=-1;o=we+672|0;s=we+768|0;jT(o|0,16,480)|0;Xi[we+668>>2]=0;c=we+128|0;Xi[c>>2]=2;r:do{switch(_|0){case 144:case 138:case 128:case 118:case 86:case 83:case 44:case 244:case 122:case 110:case 100:{l=f+(a>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(a&7)>>>23;r=(qi[98538+l>>0]|0)+a|0;r=F>>>0>r>>>0?r:F;Xi[ae>>2]=r;l=Wi[99050+l>>0]|0;a=l&255;Xi[we+12>>2]=a;if((l&255)>3){e=Xi[e+4>>2]|0;Xi[m>>2]=a;bM(e,114086,m);break i}if(l<<24>>24==3){m=qi[f+(r>>>3)>>0]<<(r&7)>>>7&1;r=((r|0)<(F|0)&1)+r|0;Xi[ae>>2]=r;Xi[we+1192>>2]=m;if(m){nA(Xi[e+4>>2]|0,16,114107,p);break i}}a=f+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);do{if(a>>>0<=134217727){l=a>>>0>65535;p=l?a>>>16:a;l=l?16:0;n=(p&65280|0)==0;l=(qi[145894+(n?p:p>>>8)>>0]|0)+(n?l:l|8)<<1;n=l+-31|0;l=63-l+r|0;l=F>>>0>l>>>0?l:F;Xi[ae>>2]=l;if((n|0)<7){nA(0,16,118304,y);r=-1094995529;t=Xi[ae>>2]|0;f=Xi[le>>2]|0;n=Xi[re>>2]|0;break}else{r=(a>>>n)+-1|0;t=l;n=F;break}}else{n=a>>>23;t=(qi[98538+n>>0]|0)+r|0;t=F>>>0>t>>>0?t:F;Xi[ae>>2]=t;r=qi[99050+n>>0]|0;n=F}}while(0);r=r+8|0;a=we+1184|0;Xi[a>>2]=r;f=f+(t>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(t&7);do{if(f>>>0<=134217727){y=f>>>0>65535;F=y?f>>>16:f;y=y?16:0;l=(F&65280|0)==0;y=(qi[145894+(l?F:F>>>8)>>0]|0)+(l?y:y|8)<<1;l=y+-31|0;y=63-y+t|0;Xi[ae>>2]=n>>>0>y>>>0?y:n;if((l|0)<7){nA(0,16,118304,O);f=-1094995529;r=Xi[a>>2]|0;break}else{f=(f>>>l)+-1|0;break}}else{f=f>>>23;O=(qi[98538+f>>0]|0)+t|0;Xi[ae>>2]=n>>>0>O>>>0?O:n;f=qi[99050+f>>0]|0}}while(0);O=f+8|0;Xi[we+1188>>2]=O;if((O|0)!=(r|0)){bM(Xi[e+4>>2]|0,114148,A);break i}if((r|0)>14|((f|0)<0|f>>>0>6)){e=Xi[e+4>>2]|0;Xi[g>>2]=r;Xi[g+4>>2]=r;nA(e,16,114184,g);break i}else{t=Xi[ae>>2]|0;a=qi[(Xi[le>>2]|0)+(t>>>3)>>0]<<(t&7)>>>7&1;Xi[ae>>2]=((t|0)<(Xi[re>>2]|0)&1)+t;Xi[we+16>>2]=a;GD(e,we,0,1,o,s);a=Xi[ae>>2]|0;t=Xi[le>>2]|0;F=Xi[re>>2]|0;break r}}default:{Xi[we+12>>2]=1;Xi[we+1184>>2]=8;Xi[we+1188>>2]=8;t=f}}}while(0);r=t+(a>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(a&7);do{if(r>>>0<=134217727){f=r>>>0>65535;g=f?r>>>16:r;f=f?16:0;l=(g&65280|0)==0;f=(qi[145894+(l?g:g>>>8)>>0]|0)+(l?f:f|8)<<1;l=f+-31|0;f=63-f+a|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;if((l|0)<7){nA(0,16,118304,M);r=-1094995529;break}else{r=(r>>>l)+-1|0;G=33;break}}else{r=r>>>23;f=(qi[98538+r>>0]|0)+a|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=qi[99050+r>>0]|0;G=33}}while(0);if((G|0)==33)if(r>>>0<=12){Xi[we+20>>2]=r+4;v=t+(f>>>3)|0;v=(ZT(qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24|0)|0)<<(f&7)>>>23;r=(qi[98538+v>>0]|0)+f|0;r=F>>>0>r>>>0?r:F;Xi[ae>>2]=r;f=qi[99050+v>>0]|0;v=we+24|0;Xi[v>>2]=f;r:do{switch(f|0){case 0:{l=t+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);do{if(l>>>0<=134217727){f=l>>>0>65535;P=f?l>>>16:l;f=f?16:0;a=(P&65280|0)==0;f=(qi[145894+(a?P:P>>>8)>>0]|0)+(a?f:f|8)<<1;a=f+-31|0;f=63-f+r|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;if((a|0)<7){nA(0,16,118304,N);r=-1094995529;break}else{r=(l>>>a)+-1|0;G=41;break}}else{G=l>>>23;f=(qi[98538+G>>0]|0)+r|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=qi[99050+G>>0]|0;G=41}}while(0);if((G|0)==41)if(r>>>0<=12){Xi[we+28>>2]=r+4;r=f;break r}e=Xi[e+4>>2]|0;Xi[D>>2]=r;nA(e,16,114429,D);break i}case 1:{f=qi[t+(r>>>3)>>0]<<(r&7)>>>7&1;r=((r|0)<(F|0)&1)+r|0;Xi[ae>>2]=r;Xi[we+32>>2]=f;f=t+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){G=f>>>23;f=(qi[98538+G>>0]|0)+r|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=Wi[99562+G>>0]|0}else{G=f>>>0>65535;D=G?f>>>16:f;f=G?16:0;G=(D&65280|0)==0;f=(qi[145894+(G?D:D>>>8)>>0]|0)+(G?f:f|8)|0;r=31-f+r|0;r=F>>>0>r>>>0?r:F;G=t+(r>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(r&7)>>>f;f=r+(32-f)|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=G&1;r=(G>>>1^0-r)+r|0}Xi[we+36>>2]=r;r=t+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;f=(qi[98538+r>>0]|0)+f|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=Wi[99562+r>>0]|0}else{G=r>>>0>65535;D=G?r>>>16:r;r=G?16:0;G=(D&65280|0)==0;r=(qi[145894+(G?D:D>>>8)>>0]|0)+(G?r:r|8)|0;f=31-r+f|0;f=F>>>0>f>>>0?f:F;G=t+(f>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(f&7)>>>r;f=f+(32-r)|0;f=F>>>0>f>>>0?f:F;Xi[ae>>2]=f;r=G&1;r=(G>>>1^0-r)+r|0}Xi[we+40>>2]=r;r=t+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);do{if(r>>>0>134217727){r=r>>>23;l=(qi[98538+r>>0]|0)+f|0;l=F>>>0>l>>>0?l:F;Xi[ae>>2]=l;r=qi[99050+r>>0]|0;f=we+44|0;Xi[f>>2]=r}else{l=r>>>0>65535;G=l?r>>>16:r;l=l?16:0;a=(G&65280|0)==0;l=(qi[145894+(a?G:G>>>8)>>0]|0)+(a?l:l|8)<<1;a=l+-31|0;l=63-l+f|0;l=F>>>0>l>>>0?l:F;Xi[ae>>2]=l;if((a|0)>=7){r=(r>>>a)+-1|0;f=we+44|0;Xi[f>>2]=r;if(r>>>0<=255)break}else{nA(0,16,118304,C);Xi[we+44>>2]=-1094995529;r=-1094995529}e=Xi[e+4>>2]|0;Xi[P>>2]=r;nA(e,16,114468,P);break i}}while(0);if((r|0)>0){n=we+148|0;r=l;a=0;do{l=t+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){l=l>>>23;r=(qi[98538+l>>0]|0)+r|0;r=F>>>0>r>>>0?r:F;Xi[ae>>2]=r;l=Wi[99562+l>>0]|0}else{G=l>>>0>65535;P=G?l>>>16:l;l=G?16:0;G=(P&65280|0)==0;l=(qi[145894+(G?P:P>>>8)>>0]|0)+(G?l:l|8)|0;r=31-l+r|0;r=F>>>0>r>>>0?r:F;G=t+(r>>>3)|0;G=(ZT(qi[G>>0]|qi[G+1>>0]<<8|qi[G+2>>0]<<16|qi[G+3>>0]<<24|0)|0)<<(r&7)>>>l;r=r+(32-l)|0;r=F>>>0>r>>>0?r:F;Xi[ae>>2]=r;l=G&1;l=(G>>>1^0-l)+l|0}Gi[n+(a<<1)>>1]=l;a=a+1|0}while((a|0)<(Xi[f>>2]|0))}else r=l;break}case 2:break;default:{e=Xi[e+4>>2]|0;Xi[T>>2]=f;nA(e,16,114498,T);break i}}}while(0);f=t+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7)>>>23;l=(qi[98538+f>>0]|0)+r|0;l=F>>>0>l>>>0?l:F;Xi[ae>>2]=l;f=qi[99050+f>>0]|0;d=we+48|0;Xi[d>>2]=f;r=e+4|0;a=Xi[r>>2]|0;if((Xi[a+52>>2]|0)==844516691){f=f>>>0<2?2:f;Xi[d>>2]=f}if((f|0)>34|f>>>0>16){Xi[L>>2]=f;nA(a,16,114519,L);break}a=qi[t+(l>>>3)>>0]<<(l&7)>>>7&1;f=((l|0)<(F|0)&1)+l|0;Xi[ae>>2]=f;Xi[we+52>>2]=a;a=t+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0<=134217727){l=a>>>0>65535;G=l?a>>>16:a;l=l?16:0;n=(G&65280|0)==0;l=(qi[145894+(n?G:G>>>8)>>0]|0)+(n?l:l|8)<<1;n=l+-31|0;l=63-l+f|0;l=F>>>0>l>>>0?l:F;Xi[ae>>2]=l;if((n|0)<7){nA(0,16,118304,I);f=-1094995529;n=Xi[ae>>2]|0;l=Xi[le>>2]|0;a=Xi[re>>2]|0;break}else{f=(a>>>n)+-1|0;n=l;l=t;a=F;break}}else{l=a>>>23;n=(qi[98538+l>>0]|0)+f|0;n=F>>>0>n>>>0?n:F;Xi[ae>>2]=n;f=qi[99050+l>>0]|0;l=t;a=F}}while(0);t=f+1|0;O=we+56|0;Xi[O>>2]=t;f=l+(n>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(n&7);do{if(f>>>0<=134217727){G=f>>>0>65535;I=G?f>>>16:f;G=G?16:0;l=(I&65280|0)==0;G=(qi[145894+(l?I:I>>>8)>>0]|0)+(l?G:G|8)<<1;l=G+-31|0;G=63-G+n|0;Xi[ae>>2]=a>>>0>G>>>0?G:a;if((l|0)<7){nA(0,16,118304,H);Xi[we+60>>2]=-1094995528;G=78;break}else{f=(f>>>l)+-1|0;G=77;break}}else{f=f>>>23;G=(qi[98538+f>>0]|0)+n|0;Xi[ae>>2]=a>>>0>G>>>0?G:a;f=qi[99050+f>>0]|0;G=77}}while(0);if((G|0)==77){f=f+1|0;b=we+60|0;Xi[b>>2]=f;if(!(t>>>0>134217726|f>>>0>134217726)){if(!(Gg(t<<4,f<<4,0,Xi[r>>2]|0)|0)){f=Xi[ae>>2]|0;l=Xi[le>>2]|0;B=qi[l+(f>>>3)>>0]<<(f&7)>>>7&1;n=Xi[re>>2]|0;f=((f|0)<(n|0)&1)+f|0;Xi[ae>>2]=f;y=we+64|0;Xi[y>>2]=B;if(!B){B=qi[l+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(n|0)&1)+f|0;Xi[ae>>2]=f;Xi[we+68>>2]=B}else Xi[we+68>>2]=0;B=qi[l+(f>>>3)>>0]<<(f&7)>>>7&1;a=((f|0)<(n|0)&1)+f|0;Xi[ae>>2]=a;F=we+72|0;Xi[F>>2]=B;B=qi[l+(a>>>3)>>0]<<(a&7)>>>7&1;a=((a|0)<(n|0)&1)+a|0;Xi[ae>>2]=a;f=we+76|0;Xi[f>>2]=B;r:do{if(!B){Xi[f>>2]=0;Xi[f+4>>2]=0;Xi[f+8>>2]=0;Xi[f+12>>2]=0;Xi[f+16>>2]=0}else{f=l+(a>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(a&7);do{if(f>>>0<=134217727){B=f>>>0>65535;H=B?f>>>16:f;B=B?16:0;t=(H&65280|0)==0;B=(qi[145894+(t?H:H>>>8)>>0]|0)+(t?B:B|8)<<1;t=B+-31|0;a=63-B+a|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;if((t|0)<7){nA(0,16,118304,U);f=-1094995529;a=Xi[ae>>2]|0;l=Xi[le>>2]|0;n=Xi[re>>2]|0;break}else{f=(f>>>t)+-1|0;break}}else{f=f>>>23;a=(qi[98538+f>>0]|0)+a|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;f=qi[99050+f>>0]|0}}while(0);t=l+(a>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(a&7);do{if(t>>>0<=134217727){U=t>>>0>65535;B=U?t>>>16:t;U=U?16:0;o=(B&65280|0)==0;U=(qi[145894+(o?B:B>>>8)>>0]|0)+(o?U:U|8)<<1;o=U+-31|0;a=63-U+a|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;if((o|0)<7){nA(0,16,118304,x);w=-1094995529;a=Xi[ae>>2]|0;l=Xi[le>>2]|0;n=Xi[re>>2]|0;break}else{w=(t>>>o)+-1|0;break}}else{w=t>>>23;a=(qi[98538+w>>0]|0)+a|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;w=qi[99050+w>>0]|0}}while(0);t=l+(a>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(a&7);do{if(t>>>0<=134217727){x=t>>>0>65535;U=x?t>>>16:t;x=x?16:0;o=(U&65280|0)==0;x=(qi[145894+(o?U:U>>>8)>>0]|0)+(o?x:x|8)<<1;o=x+-31|0;a=63-x+a|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;if((o|0)<7){nA(0,16,118304,z);h=-1094995529;t=Xi[ae>>2]|0;l=Xi[le>>2]|0;n=Xi[re>>2]|0;break}else{h=(t>>>o)+-1|0;t=a;break}}else{h=t>>>23;t=(qi[98538+h>>0]|0)+a|0;t=n>>>0>t>>>0?t:n;Xi[ae>>2]=t;h=qi[99050+h>>0]|0}}while(0);l=l+(t>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(t&7);do{if(l>>>0<=134217727){z=l>>>0>65535;x=z?l>>>16:l;z=z?16:0;a=(x&65280|0)==0;z=(qi[145894+(a?x:x>>>8)>>0]|0)+(a?z:z|8)<<1;a=z+-31|0;z=63-z+t|0;Xi[ae>>2]=n>>>0>z>>>0?z:n;if((a|0)<7){nA(0,16,118304,V);o=-1094995529;break}else{o=(l>>>a)+-1|0;break}}else{o=l>>>23;V=(qi[98538+o>>0]|0)+t|0;Xi[ae>>2]=n>>>0>V>>>0?V:n;o=qi[99050+o>>0]|0}}while(0);s=Xi[O>>2]<<4;l=2-(Xi[y>>2]|0)|0;u=Zi(l,Xi[b>>2]<<4)|0;n=Xi[r>>2]|0;if(Xi[n+96>>2]&65536|0){Xi[Y>>2]=f;Xi[Y+4>>2]=w;Xi[Y+8>>2]=h;Xi[Y+12>>2]=o;nA(n,48,114575,Y);K=we+80|0;Xi[K>>2]=0;Xi[K+4>>2]=0;Xi[K+8>>2]=0;Xi[K+12>>2]=0;break}a=Xi[we+12>>2]|0;t=(a+-1|0)>>>0<2&1;a=l<<((a|0)==1&1);l=31>>>((Xi[we+1184>>2]|0)>8&1);do{if(l&f){if(Xi[n+92>>2]&1|0)break;f=f&~l;Xi[j>>2]=f;nA(n,24,114641,j)}}while(0);j=536870911>>>t;do{if(!(w>>>0>j>>>0|f>>>0>j>>>0)){j=536870911/(a>>>0)|0;if(h>>>0>j>>>0|o>>>0>j>>>0)break;if(f+w<<t>>>0>=s>>>0)break;if((Zi(a,o+h|0)|0)>>>0>=u>>>0)break;Xi[we+80>>2]=f<<t;Xi[we+84>>2]=w<<t;Xi[we+88>>2]=Zi(a,h)|0;Xi[we+92>>2]=Zi(a,o)|0;break r}}while(0);e=Xi[r>>2]|0;Xi[K>>2]=f;Xi[K+4>>2]=w;Xi[K+8>>2]=h;Xi[K+12>>2]=o;Xi[K+16>>2]=s;Xi[K+20>>2]=u;nA(e,16,114709,K);break i}}while(0);f=Xi[ae>>2]|0;a=Xi[le>>2]|0;K=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;s=Xi[re>>2]|0;f=((f|0)<(s|0)&1)+f|0;Xi[ae>>2]=f;p=we+96|0;Xi[p>>2]=K;r:do{if(!K)l=e+708|0;else{K=qi[a+(f>>>3)>>0]|0;l=((f|0)<(s|0)&1)+f|0;Xi[ae>>2]=l;do{if(K&128>>>(f&7)){n=a+(l>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(l&7);t=n>>>24;f=l+8|0;f=s>>>0>f>>>0?f:s;Xi[ae>>2]=f;if((t|0)==255){W=a+(f>>>3)|0;W=(ZT(qi[W>>0]|qi[W+1>>0]<<8|qi[W+2>>0]<<16|qi[W+3>>0]<<24|0)|0)<<(f&7)>>>16;f=f+16|0;f=s>>>0>f>>>0?f:s;Xi[ae>>2]=f;Xi[we+100>>2]=W;W=a+(f>>>3)|0;W=(ZT(qi[W>>0]|qi[W+1>>0]<<8|qi[W+2>>0]<<16|qi[W+3>>0]<<24|0)|0)<<(f&7)>>>16;f=f+16|0;f=s>>>0>f>>>0?f:s;Xi[ae>>2]=f;Xi[we+104>>2]=W;break}if(n>>>0<285212672){j=88752+(t<<3)|0;K=Xi[j+4>>2]|0;W=we+100|0;Xi[W>>2]=Xi[j>>2];Xi[W+4>>2]=K;break}else{nA(Xi[r>>2]|0,16,114750,W);break i}}else{Xi[we+104>>2]=0;Xi[we+100>>2]=0;f=l}}while(0);l=((f|0)<(s|0)&1)+f|0;l=((qi[a+(f>>>3)>>0]&128>>>(f&7)|0)==0?0:(l|0)<(s|0)&1)+l|0;Xi[ae>>2]=l;W=qi[a+(l>>>3)>>0]<<(l&7)>>>7&1;l=((l|0)<(s|0)&1)+l|0;Xi[ae>>2]=l;Xi[we+108>>2]=W;do{if(W){f=l+3|0;f=s>>>0>f>>>0?f:s;Xi[ae>>2]=f;W=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(s|0)&1)+f|0;Xi[ae>>2]=f;Xi[k>>2]=W;W=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(s|0)&1)+f|0;Xi[ae>>2]=f;Xi[we+116>>2]=W;if(!W){l=f;break}W=a+(f>>>3)|0;W=(ZT(qi[W>>0]|qi[W+1>>0]<<8|qi[W+2>>0]<<16|qi[W+3>>0]<<24|0)|0)<<(f&7);l=f+8|0;l=s>>>0>l>>>0?l:s;Xi[ae>>2]=l;f=we+120|0;Xi[f>>2]=W>>>24;n=a+(l>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(l&7);l=l+8|0;l=s>>>0>l>>>0?l:s;Xi[ae>>2]=l;t=we+124|0;Xi[t>>2]=n>>>24;o=a+(l>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(l&7);l=l+8|0;l=s>>>0>l>>>0?l:s;Xi[ae>>2]=l;Xi[c>>2]=o>>>24;if(W>>>0>184549375)Xi[f>>2]=2;if(n>>>0>301989887)Xi[t>>2]=2;if(o>>>0<=184549375)break;Xi[c>>2]=2}}while(0);W=qi[a+(l>>>3)>>0]|0;f=((l|0)<(s|0)&1)+l|0;Xi[ae>>2]=f;do{if(W&128>>>(l&7)){n=a+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7);do{if(n>>>0<=134217727){l=n>>>0>65535;W=l?n>>>16:n;l=l?16:0;t=(W&65280|0)==0;l=(qi[145894+(t?W:W>>>8)>>0]|0)+(t?l:l|8)<<1;t=l+-31|0;l=63-l+f|0;l=s>>>0>l>>>0?l:s;Xi[ae>>2]=l;if((t|0)<7){nA(0,16,118304,X);f=-1094995529;n=Xi[ae>>2]|0;a=Xi[le>>2]|0;l=Xi[re>>2]|0;break}else{f=(n>>>t)+-1|0;n=l;l=s;break}}else{l=n>>>23;n=(qi[98538+l>>0]|0)+f|0;n=s>>>0>n>>>0?n:s;Xi[ae>>2]=n;f=qi[99050+l>>0]|0;l=s}}while(0);Xi[(Xi[r>>2]|0)+404>>2]=f+1;f=a+(n>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(n&7);if(f>>>0>134217727){f=(qi[98538+(f>>>23)>>0]|0)+n|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;break}X=f>>>0>65535;W=X?f>>>16:f;X=X?16:0;f=(W&65280|0)==0;X=(qi[145894+(f?W:W>>>8)>>0]|0)+(f?X:X|8)<<1;f=63-X+n|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((X+-31|0)>=7)break;nA(0,16,118304,q);f=Xi[ae>>2]|0;a=Xi[le>>2]|0}}while(0);n=a+(f>>>3)|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=f&7;do{if((ZT(n|0)|0)&-2147483648>>>t|0){l=e+708|0;if(((Xi[l>>2]|0)-f|0)>=10)break;nA(Xi[r>>2]|0,24,114772,J);f=Xi[ae>>2]|0;break r}}while(0);J=(n&255)<<t>>>7&1;l=Xi[re>>2]|0;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;o=we+132|0;Xi[o>>2]=J;if(J){n=a+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)&-65536;f=f+16|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;t=a+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7)>>>16;f=f+16|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;n=t|n;t=a+(f>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(f&7)&-65536;f=f+16|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;J=a+(f>>>3)|0;J=(ZT(qi[J>>0]|qi[J+1>>0]<<8|qi[J+2>>0]<<16|qi[J+3>>0]<<24|0)|0)<<(f&7)>>>16;f=f+16|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;t=J|t;if((n|0)!=0&(t|0)!=0){Xi[we+136>>2]=n;Xi[we+140>>2]=t}else{f=Xi[r>>2]|0;Xi[Z>>2]=t;Xi[Z+4>>2]=n;nA(f,16,114787,Z);Xi[o>>2]=0;f=Xi[ae>>2]|0;a=Xi[le>>2]|0;l=Xi[re>>2]|0}Z=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;Xi[we+144>>2]=Z}Z=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;n=we+1152|0;Xi[n>>2]=Z;if(Z){if((qD(e,we)|0)<0)break i;f=Xi[ae>>2]|0;a=Xi[le>>2]|0;l=Xi[re>>2]|0}Z=qi[a+(f>>>3)>>0]<<(f&7)>>>7&1;Xi[ae>>2]=((f|0)<(l|0)&1)+f;f=we+1156|0;Xi[f>>2]=Z;if(Z|0?(qD(e,we)|0)<0:0)break i;do{if(!(Xi[n>>2]|0)){if(Xi[f>>2]|0){G=160;break}f=Xi[ae>>2]|0;l=Xi[re>>2]|0}else G=160}while(0);if((G|0)==160){f=Xi[ae>>2]|0;l=Xi[re>>2]|0;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f}n=Xi[le>>2]|0;u=qi[n+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;Xi[we+1160>>2]=u;u=e+708|0;if((Xi[u>>2]|0)==(f|0)){l=u;break}Z=qi[n+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;s=we+660|0;Xi[s>>2]=Z;if(!Z){l=u;break}f=((f|0)<(l|0)&1)+f|0;Xi[ae>>2]=f;a=n+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0>134217727){f=(qi[98538+(a>>>23)>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f}else{Z=a>>>0>65535;q=Z?a>>>16:a;Z=Z?16:0;J=(q&65280|0)==0;Z=(qi[145894+(J?q:q>>>8)>>0]|0)+(J?Z:Z|8)<<1;f=63-Z+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((Z+-31|0)>=7)break;nA(0,16,118304,Q);f=Xi[ae>>2]|0;n=Xi[le>>2]|0;l=Xi[re>>2]|0}}while(0);a=n+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0>134217727){f=(qi[98538+(a>>>23)>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f}else{Q=a>>>0>65535;J=Q?a>>>16:a;Q=Q?16:0;Z=(J&65280|0)==0;Q=(qi[145894+(Z?J:J>>>8)>>0]|0)+(Z?Q:Q|8)<<1;f=63-Q+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((Q+-31|0)>=7)break;nA(0,16,118304,$);f=Xi[ae>>2]|0;n=Xi[le>>2]|0;l=Xi[re>>2]|0}}while(0);a=n+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0>134217727){f=(qi[98538+(a>>>23)>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f}else{$=a>>>0>65535;Z=$?a>>>16:a;$=$?16:0;Q=(Z&65280|0)==0;$=(qi[145894+(Q?Z:Z>>>8)>>0]|0)+(Q?$:$|8)<<1;f=63-$+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if(($+-31|0)>=7)break;nA(0,16,118304,ee);f=Xi[ae>>2]|0;n=Xi[le>>2]|0;l=Xi[re>>2]|0}}while(0);a=n+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0>134217727){f=(qi[98538+(a>>>23)>>0]|0)+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;o=n}else{ee=a>>>0>65535;Q=ee?a>>>16:a;ee=ee?16:0;$=(Q&65280|0)==0;ee=(qi[145894+($?Q:Q>>>8)>>0]|0)+($?ee:ee|8)<<1;f=63-ee+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((ee+-31|0)>=7){o=n;break}nA(0,16,118304,ie);f=Xi[ae>>2]|0;o=Xi[le>>2]|0;l=Xi[re>>2]|0}}while(0);a=o+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0<=134217727){ie=a>>>0>65535;ee=ie?a>>>16:a;ie=ie?16:0;n=(ee&65280|0)==0;ie=(qi[145894+(n?ee:ee>>>8)>>0]|0)+(n?ie:ie|8)<<1;n=ie+-31|0;f=63-ie+f|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((n|0)<7){nA(0,16,118304,fe);n=-1094995529;t=Xi[ae>>2]|0;f=Xi[le>>2]|0;l=Xi[re>>2]|0;break}else{n=(a>>>n)+-1|0;t=f;f=o;break}}else{n=a>>>23;t=(qi[98538+n>>0]|0)+f|0;t=l>>>0>t>>>0?t:l;Xi[ae>>2]=t;n=qi[99050+n>>0]|0;f=o}}while(0);a=we+664|0;Xi[a>>2]=n;f=f+(t>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(t&7);do{if(f>>>0>134217727){f=(qi[98538+(f>>>23)>>0]|0)+t|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f}else{le=f>>>0>65535;fe=le?f>>>16:f;le=le?16:0;f=(fe&65280|0)==0;le=(qi[145894+(f?fe:fe>>>8)>>0]|0)+(f?le:le|8)<<1;f=63-le+t|0;f=l>>>0>f>>>0?f:l;Xi[ae>>2]=f;if((le+-31|0)>=7)break;nA(0,16,118304,ne);f=Xi[ae>>2]|0}}while(0);if((Xi[u>>2]|0)<(f|0)){Xi[a>>2]=0;Xi[s>>2]=0;l=u;break}l=Xi[a>>2]|0;if(l>>>0<=16){l=u;break}e=Xi[r>>2]|0;Xi[oe>>2]=l;nA(e,16,114870,oe);Xi[a>>2]=16;break i}}while(0);f=(Xi[l>>2]|0)-f|0;if((f|0)<0?(oe=Xi[r>>2]|0,i=(i|0)!=0,Xi[se>>2]=Xi[p>>2]|0?114910:124125,Xi[se+4>>2]=0-f,nA(oe,i?24:16,114914,se),!i):0)break;m=(Xi[we+660>>2]|0)==0;r:do{if(m){a=we+664|0;Xi[a>>2]=15;l=Xi[E>>2]|0;f=0;while(1){if((Xi[88408+(f<<3)>>2]|0)==(l|0))break;f=f+1|0;if(f>>>0>=16)break r}se=(Xi[88408+(f<<3)+4>>2]|0)/(Zi(Xi[b>>2]|0,Xi[O>>2]|0)|0)|0;Xi[a>>2]=(se|0)>15?15:se}}while(0);f=we+104|0;if(!(Xi[f>>2]|0))Xi[f>>2]=1;_=Xi[r>>2]|0;if(Xi[_+680>>2]&1|0){S=Xi[te>>2]|0;E=Xi[E>>2]|0;v=Xi[v>>2]|0;d=Xi[d>>2]|0;c=Xi[O>>2]|0;b=Xi[b>>2]|0;if(!(Xi[y>>2]|0))k=Xi[we+68>>2]|0?114938:114945;else k=114953;o=Xi[F>>2]|0?114957:237325;s=Xi[we+80>>2]|0;u=Xi[we+84>>2]|0;h=Xi[we+88>>2]|0;w=Xi[we+92>>2]|0;f=Xi[p>>2]|0?114910:237325;l=114961+((Xi[we+12>>2]|0)*5|0)|0;if(!(Xi[we+132>>2]|0)){n=0;t=0}else{n=Xi[we+136>>2]|0;t=Xi[we+140>>2]|0}a=Xi[we+1184>>2]|0;if(m)r=-1;else r=Xi[we+664>>2]|0;Xi[he>>2]=ue;Xi[he+4>>2]=S;Xi[he+8>>2]=E;Xi[he+12>>2]=v;Xi[he+16>>2]=d;Xi[he+20>>2]=c;Xi[he+24>>2]=b;Xi[he+28>>2]=k;Xi[he+32>>2]=o;Xi[he+36>>2]=s;Xi[he+40>>2]=u;Xi[he+44>>2]=h;Xi[he+48>>2]=w;Xi[he+52>>2]=f;Xi[he+56>>2]=l;Xi[he+60>>2]=n;Xi[he+64>>2]=t;Xi[he+68>>2]=a;Xi[he+72>>2]=r;nA(_,48,114981,he)}Xi[we+1200>>2]=1;r=e+206468+(ue<<2)|0;FA(Xi[r>>2]|0);Xi[r>>2]=we;r=0;break e}}else G=78}nA(Xi[r>>2]|0,16,114549,B);break}e=Xi[e+4>>2]|0;Xi[R>>2]=r;nA(e,16,114378,R)}}while(0);FA(we);r=-1094995529}}while(0);Ue=ke;return r|0}function GD(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0;n=(f|0)!=0;if(n)t=0;else t=(Xi[i+668>>2]|0)!=0;o=t?i+768|0:114218;s=t?i+960|0:114282;w=e+704|0;u=Xi[w>>2]|0;h=qi[(Xi[e+696>>2]|0)+(u>>>3)>>0]|0;Xi[w>>2]=((u|0)<(Xi[e+712>>2]|0)&1)+u;do{if(h&128>>>(u&7)|0){h=i+668|0;Xi[h>>2]=Xi[h>>2]|f;XD(e,l,16,114346,t?i+672|0:114346);h=l+16|0;XD(e,h,16,114346,l);XD(e,l+32|0,16,114346,h);h=l+48|0;XD(e,h,16,114362,t?i+720|0:114362);w=l+64|0;XD(e,w,16,114362,h);XD(e,l+80|0,16,114362,w);if(!n?(Xi[r+64>>2]|0)==0:0)break;XD(e,a,64,114218,o);n=a+192|0;XD(e,n,64,114282,s);if((Xi[i+12>>2]|0)==3){h=a+64|0;XD(e,h,64,114218,a);w=a+256|0;XD(e,w,64,114282,n);XD(e,a+128|0,64,114218,h);XD(e,a+320|0,64,114282,w)}}}while(0);return}function XD(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=(r|0)==16?117669:131425;h=e+704|0;o=Xi[h>>2]|0;w=e+696|0;t=qi[(Xi[w>>2]|0)+(o>>>3)>>0]|0;s=e+712|0;Xi[h>>2]=((o|0)<(Xi[s>>2]|0)&1)+o;e:do{if(t&128>>>(o&7)){if((r|0)>0){t=0;o=8;e=8;while(1){if(!e)e=0;else{e=Xi[h>>2]|0;l=Xi[s>>2]|0;a=Xi[w>>2]|0;n=a+(e>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(e&7);if(n>>>0>134217727){n=n>>>23;e=(qi[98538+n>>0]|0)+e|0;Xi[h>>2]=l>>>0>e>>>0?e:l;e=Wi[99562+n>>0]|0}else{k=n>>>0>65535;b=k?n>>>16:n;k=k?16:0;n=(b&65280|0)==0;k=(qi[145894+(n?b:b>>>8)>>0]|0)+(n?k:k|8)|0;e=31-k+e|0;e=l>>>0>e>>>0?e:l;n=a+(e>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(e&7)>>>k;e=e+(32-k)|0;Xi[h>>2]=l>>>0>e>>>0?e:l;e=n&1;e=(n>>>1^0-e)+e|0}e=e+o&255}if(!(e|t))break;o=e|0?e:o;Wi[i+(qi[u+t>>0]|0)>>0]=o;t=t+1|0;if((t|0)>=(r|0))break e}qT(i|0,f|0,r|0)|0}}else qT(i|0,l|0,r|0)|0}while(0);return}function qD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=Ue;Ue=Ue+16|0;f=s;a=e+704|0;r=Xi[a>>2]|0;t=Xi[e+712>>2]|0;o=Xi[e+696>>2]|0;n=o+(r>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(r&7)>>>23;r=(qi[98538+n>>0]|0)+r|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;n=(qi[99050+n>>0]|0)+1|0;if(n>>>0>32){r=Xi[e+4>>2]|0;Xi[f>>2]=n;nA(r,16,114848,f);r=-1094995529}else{r=r+4|0;r=(t>>>0>r>>>0?r:t)+4|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;l=0;do{u=o+(r>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=t>>>0>e>>>0?e:t;f=o+(e>>>3)|0;e=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(e&7)>>>16|u&-65536;f=e>>>0>65535;e=f?u>>>16:e;f=f?16:0;u=(e&65280|0)==0;f=31-(qi[145894+(u?e:e>>>8)>>0]|0)-(u?f:f|8)|0;u=0-r|0;e=t-r|0;r=((f|0)<(u|0)?u:(e|0)<(f|0)?e:f)+r|0;Xi[a>>2]=r;e=f+1|0;do{if(e)if((e|0)<26){r=r+e|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;break}else{r=r+16|0;r=f+-15+(t>>>0>r>>>0?r:t)|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;break}}while(0);u=o+(r>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=t>>>0>e>>>0?e:t;f=o+(e>>>3)|0;e=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(e&7)>>>16|u&-65536;f=e>>>0>65535;e=f?u>>>16:e;f=f?16:0;u=(e&65280|0)==0;f=31-(qi[145894+(u?e:e>>>8)>>0]|0)-(u?f:f|8)|0;u=0-r|0;e=t-r|0;r=((f|0)<(u|0)?u:(e|0)<(f|0)?e:f)+r|0;Xi[a>>2]=r;e=f+1|0;do{if(e)if((e|0)<26){r=r+e|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;break}else{r=r+16|0;r=f+-15+(t>>>0>r>>>0?r:t)|0;r=t>>>0>r>>>0?r:t;Xi[a>>2]=r;break}}while(0);r=((r|0)<(t|0)&1)+r|0;Xi[a>>2]=r;l=l+1|0}while((l|0)!=(n|0));l=o+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7)>>>27;u=r+5|0;u=t>>>0>u>>>0?u:t;Xi[a>>2]=u;Xi[i+1172>>2]=l+1;r=o+(u>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(u&7)>>>27;u=u+5|0;u=t>>>0>u>>>0?u:t;Xi[a>>2]=u;Xi[i+1176>>2]=r+1;r=o+(u>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(u&7)>>>27;u=u+5|0;u=t>>>0>u>>>0?u:t;Xi[a>>2]=u;Xi[i+1180>>2]=r+1;r=o+(u>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(u&7)>>>27;u=u+5|0;Xi[a>>2]=t>>>0>u>>>0?u:t;Xi[i+1164>>2]=r;Xi[i+1168>>2]=n;r=0}Ue=s;return r|0}function JD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0;C=Ue;Ue=Ue+176|0;D=C+104|0;O=C+96|0;E=C+88|0;v=C+80|0;d=C+72|0;c=C+64|0;b=C+56|0;k=C+48|0;h=C+40|0;w=C+32|0;u=C+24|0;o=C+16|0;t=C+8|0;n=C;R=e+704|0;r=Xi[R>>2]|0;A=e+712|0;l=Xi[A>>2]|0;g=e+696|0;f=(Xi[g>>2]|0)+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);do{if(f>>>0>134217727){T=f>>>23;r=(qi[98538+T>>0]|0)+r|0;Xi[R>>2]=l>>>0>r>>>0?r:l;r=qi[99050+T>>0]|0;T=7}else{N=f>>>0>65535;M=N?f>>>16:f;N=N?16:0;a=(M&65280|0)==0;N=(qi[145894+(a?M:M>>>8)>>0]|0)+(a?N:N|8)<<1;a=N+-31|0;N=63-N+r|0;Xi[R>>2]=l>>>0>N>>>0?N:l;if((a|0)>=7){r=(f>>>a)+-1|0;if(r>>>0<=255){T=7;break}}else{nA(0,16,118304,n);r=-1094995529}e=Xi[e+4>>2]|0;Xi[t>>2]=r;nA(e,16,118328,t);r=-1094995529}}while(0);e:do{if((T|0)==7){N=iA(4828)|0;if(!N)r=-12;else{l=Xi[g>>2]|0;f=(Xi[e+700>>2]|0)-l|0;a=N+4824|0;Xi[a>>2]=f;if(f>>>0>4096){nA(Xi[e+4>>2]|0,24,115069,o);Xi[a>>2]=4096;t=Xi[g>>2]|0;f=4096}else t=l;qT(N+728|0,t|0,f|0)|0;l=Xi[R>>2]|0;o=Xi[A>>2]|0;M=t+(l>>>3)|0;M=(ZT(qi[M>>0]|qi[M+1>>0]<<8|qi[M+2>>0]<<16|qi[M+3>>0]<<24|0)|0)<<(l&7)>>>23;l=(qi[98538+M>>0]|0)+l|0;l=o>>>0>l>>>0?l:o;Xi[R>>2]=l;M=Wi[99050+M>>0]|0;f=M&255;Xi[N>>2]=f;i:do{if((M&255)<=31?(s=Xi[e+206468+(f<<2)>>2]|0,(s|0)!=0):0){y=s+1184|0;f=Xi[y>>2]|0;if((f|0)>14){r=Xi[e+4>>2]|0;Xi[w>>2]=f;nA(r,16,115102,w);r=-1094995529;break}switch(f|0){case 13:case 11:{r=Xi[e+4>>2]|0;Xi[h>>2]=f;nA(r,16,115129,h);r=-1163346256;break i}default:{}}a=qi[t+(l>>>3)>>0]<<(l&7)>>>7&1;f=((l|0)<(o|0)&1)+l|0;Xi[R>>2]=f;M=N+4|0;Xi[M>>2]=a;a=qi[t+(f>>>3)>>0]<<(f&7)>>>7&1;f=((f|0)<(o|0)&1)+f|0;Xi[R>>2]=f;Xi[N+8>>2]=a;a=t+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0<=134217727){l=a>>>0>65535;F=l?a>>>16:a;l=l?16:0;n=(F&65280|0)==0;l=(qi[145894+(n?F:F>>>8)>>0]|0)+(n?l:l|8)<<1;n=l+-31|0;l=63-l+f|0;l=o>>>0>l>>>0?l:o;Xi[R>>2]=l;if((n|0)<7){nA(0,16,118304,k);F=N+12|0;Xi[F>>2]=-1094995528;break}else{f=(a>>>n)+-1|0;a=l;T=22;break}}else{T=a>>>23;a=(qi[98538+T>>0]|0)+f|0;a=o>>>0>a>>>0?a:o;Xi[R>>2]=a;f=qi[99050+T>>0]|0;T=22}}while(0);if((T|0)==22){n=N+12|0;Xi[n>>2]=f+1;if((f|0)>0){f=t+(a>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(a&7);do{if(f>>>0<=134217727){F=f>>>0>65535;p=F?f>>>16:f;F=F?16:0;l=(p&65280|0)==0;F=(qi[145894+(l?p:p>>>8)>>0]|0)+(l?F:F|8)<<1;l=F+-31|0;F=63-F+a|0;Xi[R>>2]=o>>>0>F>>>0?F:o;if((l|0)<7){nA(0,16,118304,b);f=-1094995529;break}else{f=(f>>>l)+-1|0;break}}else{f=f>>>23;F=(qi[98538+f>>0]|0)+a|0;Xi[R>>2]=o>>>0>F>>>0?F:o;f=qi[99050+f>>0]|0}}while(0);Xi[N+16>>2]=f;nA(Xi[e+4>>2]|0,16,115162,c);F=n}else F=n}f=Xi[R>>2]|0;o=Xi[A>>2]|0;t=Xi[g>>2]|0;a=t+(f>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(f&7);do{if(a>>>0<=134217727){l=a>>>0>65535;p=l?a>>>16:a;l=l?16:0;n=(p&65280|0)==0;l=(qi[145894+(n?p:p>>>8)>>0]|0)+(n?l:l|8)<<1;n=l+-31|0;l=63-l+f|0;l=o>>>0>l>>>0?l:o;Xi[R>>2]=l;if((n|0)<7){nA(0,16,118304,d);f=-1094995529;s=Xi[R>>2]|0;l=Xi[g>>2]|0;n=Xi[A>>2]|0;break}else{f=(a>>>n)+-1|0;s=l;l=t;n=o;break}}else{l=a>>>23;s=(qi[98538+l>>0]|0)+f|0;s=o>>>0>s>>>0?s:o;Xi[R>>2]=s;f=qi[99050+l>>0]|0;l=t;n=o}}while(0);f=f+1|0;p=N+20|0;Xi[p>>2]=f;l=l+(s>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(s&7);do{if(l>>>0<=134217727){m=l>>>0>65535;_=m?l>>>16:l;m=m?16:0;a=(_&65280|0)==0;m=(qi[145894+(a?_:_>>>8)>>0]|0)+(a?m:m|8)<<1;a=m+-31|0;m=63-m+s|0;Xi[R>>2]=n>>>0>m>>>0?m:n;if((a|0)<7){nA(0,16,118304,v);l=-1094995529;f=Xi[p>>2]|0;break}else{l=(l>>>a)+-1|0;break}}else{l=l>>>23;m=(qi[98538+l>>0]|0)+s|0;Xi[R>>2]=n>>>0>m>>>0?m:n;l=qi[99050+l>>0]|0}}while(0);m=N+24|0;Xi[m>>2]=l+1;if((f+-1|l)>>>0>31){nA(Xi[e+4>>2]|0,16,115181,E);r=-1094995529;break}a=(Xi[y>>2]|0)*6|0;f=Xi[R>>2]|0;h=Xi[g>>2]|0;l=qi[h+(f>>>3)>>0]<<(f&7)>>>7&1;w=Xi[A>>2]|0;f=((f|0)<(w|0)&1)+f|0;Xi[R>>2]=f;_=N+28|0;Xi[_>>2]=l;l=h+(f>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(f&7)>>>30;f=f+2|0;f=w>>>0>f>>>0?f:w;Xi[R>>2]=f;Xi[N+32>>2]=l;l=h+(f>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(f&7);if(l>>>0>134217727){S=l>>>23;l=(qi[98538+S>>0]|0)+f|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=Wi[99562+S>>0]|0}else{S=l>>>0>65535;E=S?l>>>16:l;l=S?16:0;S=(E&65280|0)==0;l=(qi[145894+(S?E:E>>>8)>>0]|0)+(S?l:l|8)|0;f=31-l+f|0;f=w>>>0>f>>>0?f:w;S=h+(f>>>3)|0;S=(ZT(qi[S>>0]|qi[S+1>>0]<<8|qi[S+2>>0]<<16|qi[S+3>>0]<<24|0)|0)<<(f&7)>>>l;l=f+(32-l)|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=S&1;f=(S>>>1^0-f)+f|0}a=a+-22|0;S=N+36|0;Xi[S>>2]=a+f;f=h+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7);if(f>>>0>134217727){f=f>>>23;l=(qi[98538+f>>0]|0)+l|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=Wi[99562+f>>0]|0}else{E=f>>>0>65535;v=E?f>>>16:f;f=E?16:0;E=(v&65280|0)==0;f=(qi[145894+(E?v:v>>>8)>>0]|0)+(E?f:f|8)|0;l=31-f+l|0;l=w>>>0>l>>>0?l:w;E=h+(l>>>3)|0;E=(ZT(qi[E>>0]|qi[E+1>>0]<<8|qi[E+2>>0]<<16|qi[E+3>>0]<<24|0)|0)<<(l&7)>>>f;l=l+(32-f)|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=E&1;f=(E>>>1^0-f)+f|0}E=N+40|0;Xi[E>>2]=a+f;f=h+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7);if(f>>>0>134217727){f=f>>>23;l=(qi[98538+f>>0]|0)+l|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=Wi[99562+f>>0]|0}else{v=f>>>0>65535;d=v?f>>>16:f;f=v?16:0;v=(d&65280|0)==0;f=(qi[145894+(v?d:d>>>8)>>0]|0)+(v?f:f|8)|0;l=31-f+l|0;l=w>>>0>l>>>0?l:w;v=h+(l>>>3)|0;v=(ZT(qi[v>>0]|qi[v+1>>0]<<8|qi[v+2>>0]<<16|qi[v+3>>0]<<24|0)|0)<<(l&7)>>>f;l=l+(32-f)|0;l=w>>>0>l>>>0?l:w;Xi[R>>2]=l;f=v&1;f=(v>>>1^0-f)+f|0}k=N+44|0;Xi[k>>2]=f;v=qi[h+(l>>>3)>>0]<<(l&7)>>>7&1;t=((l|0)<(w|0)&1)+l|0;Xi[R>>2]=t;b=N+52|0;Xi[b>>2]=v;v=qi[h+(t>>>3)>>0]<<(t&7)>>>7&1;t=((t|0)<(w|0)&1)+t|0;Xi[R>>2]=t;c=N+56|0;Xi[c>>2]=v;v=qi[h+(t>>>3)>>0]<<(t&7)>>>7&1;t=((t|0)<(w|0)&1)+t|0;Xi[R>>2]=t;d=N+60|0;Xi[d>>2]=v;v=N+64|0;Xi[v>>2]=0;Xi[e+207620>>2]=-1;o=N+68|0;s=e+206468+(Xi[N>>2]<<2)|0;u=Xi[s>>2]|0;l=o;a=u+672|0;n=l+96|0;do{Wi[l>>0]=Wi[a>>0]|0;l=l+1|0;a=a+1|0}while((l|0)<(n|0));l=N+164|0;qT(l|0,u+768|0,384)|0;r:do{if((t|0)<(i|0)){switch(Xi[u+4>>2]|0){case 66:case 77:case 88:{if(Xi[u+1196>>2]&7|0){nA(Xi[e+4>>2]|0,40,115207,O);f=Xi[k>>2]|0;T=58;break r}break}default:{}}n=qi[h+(t>>>3)>>0]<<(t&7)>>>7&1;Xi[R>>2]=((t|0)<(w|0)&1)+t;Xi[v>>2]=n;GD(e,Xi[s>>2]|0,N,0,o,l);n=Xi[R>>2]|0;a=Xi[A>>2]|0;f=Xi[g>>2]|0;l=f+(n>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(n&7);if(l>>>0>134217727){f=l>>>23;g=(qi[98538+f>>0]|0)+n|0;Xi[R>>2]=a>>>0>g>>>0?g:a;f=Wi[99562+f>>0]|0}else{A=l>>>0>65535;g=A?l>>>16:l;A=A?16:0;O=(g&65280|0)==0;A=(qi[145894+(O?g:g>>>8)>>0]|0)+(O?A:A|8)|0;O=31-A+n|0;O=a>>>0>O>>>0?O:a;g=f+(O>>>3)|0;g=(ZT(qi[g>>0]|qi[g+1>>0]<<8|qi[g+2>>0]<<16|qi[g+3>>0]<<24|0)|0)<<(O&7)>>>A;f=O+(32-A)|0;Xi[R>>2]=a>>>0>f>>>0?f:a;f=g&1;f=(g>>>1^0-f)+f|0}Xi[N+48>>2]=f;t=Xi[k>>2]|0}else T=58}while(0);if((T|0)==58){Xi[N+48>>2]=f;t=f}l=Xi[y>>2]|0;a=l+-8|0;T=a*6|0;n=T+51|0;if((T|0)>-52){f=0;while(1){T=f+t|0;Wi[N+548+f>>0]=Wi[((T|0)<0?0:(T|0)>(n|0)?n:T)+(113413+(a*88|0))>>0]|0;if((f|0)<(n|0))f=f+1|0;else break}f=N+48|0;t=f;l=Xi[y>>2]|0;f=Xi[f>>2]|0}else t=N+48|0;l=l+-8|0;T=l*6|0;a=T+51|0;if((T|0)>-52){n=0;while(1){T=n+f|0;Wi[N+636+n>>0]=Wi[((T|0)<0?0:(T|0)>(a|0)?a:T)+(113413+(l*88|0))>>0]|0;if((n|0)<(a|0))n=n+1|0;else break}}a=Xi[k>>2]|0;f=Xi[t>>2]|0;if((a|0)!=(f|0))Xi[N+724>>2]=1;l=Xi[e+4>>2]|0;if(Xi[l+680>>2]&1|0){h=Xi[N>>2]|0;w=Xi[M>>2]|0?115272:115278;k=Xi[F>>2]|0;F=Xi[p>>2]|0;y=Xi[m>>2]|0;i=Xi[_>>2]|0?115284:237325;O=Xi[S>>2]|0;A=Xi[E>>2]|0;g=Xi[b>>2]|0?115293:237325;M=Xi[c>>2]|0?115298:237325;R=Xi[d>>2]|0?115305:237325;T=Xi[v>>2]|0?115310:237325;Xi[D>>2]=r;Xi[D+4>>2]=h;Xi[D+8>>2]=w;Xi[D+12>>2]=k;Xi[D+16>>2]=F;Xi[D+20>>2]=y;Xi[D+24>>2]=i;Xi[D+28>>2]=O;Xi[D+32>>2]=A;Xi[D+36>>2]=a;Xi[D+40>>2]=f;Xi[D+44>>2]=g;Xi[D+48>>2]=M;Xi[D+52>>2]=R;Xi[D+56>>2]=T;nA(l,48,115317,D)}r=e+206596+(r<<2)|0;FA(Xi[r>>2]|0);Xi[r>>2]=N;r=0;break e}else T=12}while(0);if((T|0)==12){r=Xi[e+4>>2]|0;Xi[u>>2]=f;nA(r,16,114062,u);r=-1094995529}FA(N)}}}while(0);Ue=C;return r|0}function ZD(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0;U=Ue;Ue=Ue+304|0;B=U+112|0;H=U+104|0;M=U+96|0;C=U+88|0;g=U+80|0;A=U+72|0;O=U+64|0;y=U+56|0;d=U+48|0;r=U+32|0;w=U+16|0;h=U;u=U+176|0;k=U+168|0;b=U+128|0;QD(e);$D(e);c=i+816|0;do{if((Xi[c>>2]|0)==3){t=e+205812|0;o=Xi[t>>2]|0;l=Xi[e+24620>>2]|0;o=Xi[((o|0)==3?l+80|0:l+72+(((o|0)==2&1)<<2)|0)>>2]|0;l=e+207760|0;a=e+208964|0;n=e+207888|0;s=0;while(1){r=eC(u,l,Xi[a>>2]|0,o,s^1)|0;r=(eC(u+(r<<2)|0,l,Xi[a>>2]|0,o,s)|0)+r|0;if((r|0)>=33){L=4;break}r=iC(i+23384+(s*1920|0)|0,48,u,r,0,Xi[t>>2]|0)|0;r=(iC(i+23384+(s*1920|0)+(r*40|0)|0,48-r|0,n,16,1,Xi[t>>2]|0)|0)+r|0;if((r|0)>=33){L=6;break}f=Xi[i+23372+(s<<2)>>2]|0;if(f>>>0>r>>>0)jT(i+23384+(s*1920|0)+(r*40|0)|0,0,(f-r|0)*40|0)|0;Xi[k+(s<<2)>>2]=r;s=s+1|0;if((s|0)>=2){L=10;break}}if((L|0)==4){Xi[h>>2]=115446;Xi[h+4>>2]=115456;Xi[h+8>>2]=151;nA(0,0,150445,h);$e()}else if((L|0)==6){Xi[w>>2]=115446;Xi[w+4>>2]=115456;Xi[w+8>>2]=158;nA(0,0,150445,w);$e()}else if((L|0)==10){f=Xi[k>>2]|0;P=Xi[k+4>>2]|0;if((f|0)==(P|0)&(P|0)>1){e:do{if((f|0)>0){r=0;do{if((Xi[Xi[(Xi[Xi[i+23384+(r*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0)!=(Xi[Xi[(Xi[Xi[i+25304+(r*40|0)+36>>2]>>2]|0)+248>>2]>>2]|0))break e;r=r+1|0}while((r|0)<(f|0))}else r=0}while(0);if((r|0)==(f|0)){r=i+25344|0;T=b;R=r;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0));f=i+25304|0;T=r;R=f;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0));T=f;R=b;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0))}}break}}else{P=e+205812|0;f=iC(i+23384|0,48,e+207760|0,Xi[e+208964>>2]|0,0,Xi[P>>2]|0)|0;f=(iC(i+23384+(f*40|0)|0,48-f|0,e+207888|0,16,1,Xi[P>>2]|0)|0)+f|0;if((f|0)>=33){Xi[r>>2]=115446;Xi[r+4>>2]=115456;Xi[r+8>>2]=179;nA(0,0,150445,r);$e()}r=Xi[i+23372>>2]|0;if(r>>>0>f>>>0)jT(i+23384+(f*40|0)|0,0,(r-f|0)*40|0)|0}}while(0);m=e+24620|0;P=e+4|0;t=0;do{n=i+23372+(t<<2)|0;r=Xi[n>>2]|0;if(r|0){a=0;do{f=i+23384+(t*1920|0)+(a*40|0)|0;l=Xi[i+23384+(t*1920|0)+(a*40|0)+36>>2]|0;do{if(l){D=Xi[l>>2]|0;N=Xi[Xi[m>>2]>>2]|0;if(((Xi[N+68>>2]|0)==(Xi[D+68>>2]|0)?(Xi[N+72>>2]|0)==(Xi[D+72>>2]|0):0)?(Xi[N+80>>2]|0)==(Xi[D+80>>2]|0):0)break;nA(Xi[P>>2]|0,16,115495,d);T=f;N=T+40|0;do{Xi[T>>2]=0;T=T+4|0}while((T|0)<(N|0));r=Xi[n>>2]|0}}while(0);a=a+1|0}while(a>>>0<r>>>0)}t=t+1|0}while((t|0)<(((Xi[c>>2]|0)==3?2:1)|0));D=i+23380|0;e:do{if(Xi[D>>2]|0){f=0;do{T=e+207680+(f*40|0)|0;R=i+23384+(f*1920|0)|0;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0));f=f+1|0;r=Xi[D>>2]|0}while(f>>>0<r>>>0);if(r){b=i+4|0;c=i+12|0;d=i+20|0;v=e+207672|0;E=e+207676|0;S=e+205812|0;_=e+208964|0;n=Xi[c>>2]|0;a=Xi[b>>2]|0;f=Xi[d>>2]|0;k=0;i:while(1){N=qi[a+(n>>>3)>>0]|0;l=((n|0)<(f|0)&1)+n|0;Xi[c>>2]=l;if(N&128>>>(n&7)){w=i+23372+(k<<2)|0;h=0;t=Xi[v>>2]|0;while(1){n=a+(l>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(l&7)>>>23;l=(qi[98538+n>>0]|0)+l|0;l=f>>>0>l>>>0?l:f;Xi[c>>2]=l;n=Wi[99050+n>>0]|0;r=n&255;if(n<<24>>24==3)break;if(h>>>0>=(Xi[w>>2]|0)>>>0){L=41;break i}switch(r|0){case 1:case 0:{r=lC(b)|0;f=r+1|0;l=Xi[E>>2]|0;if(f>>>0>l>>>0){L=44;break i}t=(n<<24>>24==0?~r:f)+t&l+-1;r=Xi[S>>2]|0;if((r|0)==3){a=t;n=3}else{a=t>>1;n=(t&1|0)==0?r^3:r}r=Xi[_>>2]|0;if((r|0)>0){while(1){l=r+-1|0;f=Xi[e+207760+(l<<2)>>2]|0;if((Xi[f+84>>2]|0)==(a|0)?Xi[f+636>>2]&n|0:0){L=51;break}if((r|0)>1)r=l;else{r=l;break}}if((L|0)==51)Xi[f+92>>2]=t;if((r|0)>=1){r=n;u=t;L=67}else{r=t;L=71}}else{r=t;L=71}break}case 2:{r=a+(l>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(l&7);do{if(r>>>0<=134217727){L=r>>>0>65535;N=L?r>>>16:r;L=L?16:0;a=(N&65280|0)==0;L=(qi[145894+(a?N:N>>>8)>>0]|0)+(a?L:L|8)<<1;a=L+-31|0;L=63-L+l|0;Xi[c>>2]=f>>>0>L>>>0?L:f;if((a|0)<7){nA(0,16,118304,A);l=-1094995529;break}else{l=(r>>>a)+-1|0;break}}else{L=r>>>23;l=(qi[98538+L>>0]|0)+l|0;Xi[c>>2]=f>>>0>l>>>0?l:f;l=qi[99050+L>>0]|0}}while(0);r=Xi[S>>2]|0;if((r|0)==3){f=l;r=3}else{f=l>>1;r=(l&1|0)==0?r^3:r}if(f>>>0>31){L=60;break i}f=Xi[e+207888+(f<<2)>>2]|0;if(((((f|0)!=0?(Xi[f+636>>2]&r|0)!=0:0)?(p=Xi[f>>2]|0,F=Xi[Xi[m>>2]>>2]|0,(Xi[F+68>>2]|0)==(Xi[p+68>>2]|0)):0)?(Xi[F+72>>2]|0)==(Xi[p+72>>2]|0):0)?(Xi[F+80>>2]|0)==(Xi[p+80>>2]|0):0){Xi[f+92>>2]=l;u=t;L=67}else{r=t;L=71}break}default:{L=69;break i}}if((L|0)==67){L=0;s=f+92|0;n=h+1|0;t=Xi[w>>2]|0;if(n>>>0<t>>>0){o=f+96|0;l=n;a=h;while(1){N=Xi[i+23384+(k*1920|0)+(a*40|0)+36>>2]|0;if((N|0?(Xi[o>>2]|0)==(Xi[N+96>>2]|0):0)?(Xi[s>>2]|0)==(Xi[i+23384+(k*1920|0)+(a*40|0)+32>>2]|0):0){l=a;break}a=l+1|0;if(a>>>0<t>>>0){N=l;l=a;a=N}else break}if((l|0)>(h|0))do{T=i+23384+(k*1920|0)+(l*40|0)|0;l=l+-1|0;R=i+23384+(k*1920|0)+(l*40|0)|0;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0))}while((l|0)>(h|0))}l=i+23384+(k*1920|0)+(h*40|0)|0;N=Xi[f>>2]|0;Xi[l>>2]=Xi[N>>2];Xi[l+4>>2]=Xi[N+4>>2];Xi[l+8>>2]=Xi[N+8>>2];N=i+23384+(k*1920|0)+(h*40|0)+12|0;T=(Xi[f>>2]|0)+32|0;Xi[N>>2]=Xi[T>>2];Xi[N+4>>2]=Xi[T+4>>2];Xi[N+8>>2]=Xi[T+8>>2];Xi[i+23384+(k*1920|0)+(h*40|0)+24>>2]=Xi[f+636>>2];Xi[i+23384+(k*1920|0)+(h*40|0)+28>>2]=Xi[f+80>>2];Xi[i+23384+(k*1920|0)+(h*40|0)+32>>2]=Xi[s>>2];Xi[i+23384+(k*1920|0)+(h*40|0)+36>>2]=f;if((Xi[S>>2]|0)==3)r=u;else{fC(l,r);r=u}}else if((L|0)==71){L=0;nA(Xi[P>>2]|0,16,115651,M);T=i+23384+(k*1920|0)+(h*40|0)|0;N=T+40|0;do{Xi[T>>2]=0;T=T+4|0}while((T|0)<(N|0));n=h+1|0}l=Xi[c>>2]|0;a=Xi[b>>2]|0;f=Xi[d>>2]|0;h=n;t=r}r=Xi[D>>2]|0}k=k+1|0;if(k>>>0>=r>>>0){L=35;break}else n=l}if((L|0)==35){if(!r){I=0;break}w=e+205812|0;k=e+208088|0;b=e+208092|0;c=e+208096|0;d=e+208100|0;v=e+208104|0;E=e+208108|0;S=e+208112|0;_=e+208116|0;m=e+208120|0;p=e+208124|0;F=e+208128|0;y=e+208132|0;O=e+208136|0;A=e+208140|0;g=e+208144|0;M=e+208148|0;h=0;i:while(1){u=i+23372+(h<<2)|0;if(Xi[u>>2]|0){a=e+207680+(h*40|0)|0;n=e+207680+(h*40|0)+28|0;t=e+207680+(h*40|0)+36|0;o=e+207680+(h*40|0)+24|0;s=0;do{f=i+23384+(h*1920|0)+(s*40|0)|0;l=i+23384+(h*1920|0)+(s*40|0)+36|0;r=Xi[l>>2]|0;if(r){if((Xi[w>>2]|0)==3?(Xi[i+23384+(h*1920|0)+(s*40|0)+24>>2]&3|0)!=3:0)L=89}else L=89;if((L|0)==89){L=0;C=Xi[P>>2]|0;Xi[H>>2]=Xi[n>>2];nA(C,16,115693,H);Xi[k>>2]=-2147483648;Xi[b>>2]=-2147483648;Xi[c>>2]=-2147483648;Xi[d>>2]=-2147483648;Xi[v>>2]=-2147483648;Xi[E>>2]=-2147483648;Xi[S>>2]=-2147483648;Xi[_>>2]=-2147483648;Xi[m>>2]=-2147483648;Xi[p>>2]=-2147483648;Xi[F>>2]=-2147483648;Xi[y>>2]=-2147483648;Xi[O>>2]=-2147483648;Xi[A>>2]=-2147483648;Xi[g>>2]=-2147483648;Xi[M>>2]=-2147483648;if(!(Xi[t>>2]|0)){I=-1;break e}if((Xi[w>>2]|0)==3?(Xi[o>>2]&3|0)!=3:0){I=-1;break e}T=f;R=a;N=T+40|0;do{Xi[T>>2]=Xi[R>>2];T=T+4|0;R=R+4|0}while((T|0)<(N|0));r=Xi[l>>2]|0}s=s+1|0;if((zA(Xi[(Xi[r>>2]|0)+248>>2]|0)|0)<=0)break i}while(s>>>0<(Xi[u>>2]|0)>>>0);r=Xi[D>>2]|0}h=h+1|0;if(h>>>0>=r>>>0){I=0;break e}}Xi[B>>2]=115735;Xi[B+4>>2]=115456;Xi[B+8>>2]=365;nA(0,0,150445,B);$e()}else if((L|0)==41){nA(Xi[P>>2]|0,16,115529,y);I=-1;break}else if((L|0)==44){nA(Xi[P>>2]|0,16,115555,O);I=-1094995529;break}else if((L|0)==60){nA(Xi[P>>2]|0,16,115582,g);I=-1094995529;break}else if((L|0)==69){I=Xi[P>>2]|0;Xi[C>>2]=r;nA(I,16,115610,C);I=-1094995529;break}}else I=0}else I=0}while(0);Ue=U;return I|0}function QD(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=Ue;Ue=Ue+32|0;l=a+8|0;r=e+4|0;i=Xi[r>>2]|0;if(Xi[i+680>>2]&2048|0?(nA(i,48,115391,a),f=e+208964|0,Xi[f>>2]|0):0){i=0;do{t=Xi[e+207760+(i<<2)>>2]|0;n=Xi[r>>2]|0;s=Xi[t+84>>2]|0;o=Xi[t+80>>2]|0;t=Xi[Xi[t>>2]>>2]|0;Xi[l>>2]=i;Xi[l+4>>2]=s;Xi[l+8>>2]=o;Xi[l+12>>2]=t;nA(n,48,115409,l);i=i+1|0}while(i>>>0<(Xi[f>>2]|0)>>>0)}Ue=a;return}function $D(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0;a=Ue;Ue=Ue+32|0;l=a+8|0;f=e+4|0;i=Xi[f>>2]|0;if(Xi[i+680>>2]&2048|0){nA(i,48,115429,a);r=0;do{i=Xi[e+207888+(r<<2)>>2]|0;if(i|0){n=Xi[f>>2]|0;o=Xi[i+84>>2]|0;t=Xi[i+80>>2]|0;i=Xi[Xi[i>>2]>>2]|0;Xi[l>>2]=r;Xi[l+4>>2]=o;Xi[l+8>>2]=t;Xi[l+12>>2]=i;nA(n,48,115409,l)}r=r+1|0}while((r|0)!=16)}Ue=a;return}function eC(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=l|0?-2147483648:2147483647;w=(r|0)>0;e:do{if(w){s=f;u=0;while(1){t=e+(u<<2)|0;n=h;o=0;while(1){a=Xi[i+(o<<2)>>2]|0;f=Xi[a+80>>2]|0;if(((f|0)>(s|0)|0)!=(l|0)?((f|0)<(n|0)|0)!=(l|0):0)Xi[t>>2]=a;else f=n;o=o+1|0;if((o|0)==(r|0))break;else n=f}if((f|0)==(h|0)){f=u;break e}f=u+1|0;if(w){s=(Xi[(Xi[e+(u<<2)>>2]|0)+80>>2]|0)-l|0;u=f}else break}}else f=0}while(0);return f|0}function iC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+32|0;c=d+16|0;b=d;e:do{if((f|0)>0){h=(l|0)==0;w=a^3;l=0;n=0;t=0;while(1){i:do{if((l|0)<(f|0))while(1){u=Xi[r+(l<<2)>>2]|0;if(u|0?Xi[u+636>>2]&a|0:0){o=1;break i}l=l+1|0;if((l|0)>=(f|0)){o=0;break}}else o=0}while(0);i:do{if((n|0)<(f|0))while(1){u=Xi[r+(n<<2)>>2]|0;if(u|0?Xi[u+636>>2]&w|0:0){u=1;break i}n=n+1|0;if((n|0)>=(f|0)){u=0;break}}else u=0}while(0);if(o){if((t|0)>=(i|0)){l=13;break}o=Xi[r+(l<<2)>>2]|0;if(h)s=Xi[o+84>>2]|0;else s=l;Xi[o+92>>2]=s;rC(e+(t*40|0)|0,o,a,1);l=l+1|0;s=t+1|0}else s=t;if(u){if((s|0)>=(i|0)){l=19;break}t=Xi[r+(n<<2)>>2]|0;if(h)o=Xi[t+84>>2]|0;else o=n;Xi[t+92>>2]=o;rC(e+(s*40|0)|0,t,w,0);n=n+1|0;t=s+1|0}else t=s;if(!((n|0)<(f|0)|(l|0)<(f|0))){k=t;break e}}if((l|0)==13){Xi[b>>2]=115479;Xi[b+4>>2]=115456;Xi[b+8>>2]=89;nA(0,0,150445,b);$e()}else if((l|0)==19){Xi[c>>2]=115479;Xi[c+4>>2]=115456;Xi[c+8>>2]=94;nA(0,0,150445,c);$e()}}else k=0}while(0);Ue=d;return k|0}function rC(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0;l=i+636|0;if(Xi[l>>2]&r|0?(a=Xi[i>>2]|0,Xi[e>>2]=Xi[a>>2],Xi[e+4>>2]=Xi[a+4>>2],Xi[e+8>>2]=Xi[a+8>>2],a=e+12|0,n=(Xi[i>>2]|0)+32|0,Xi[a>>2]=Xi[n>>2],Xi[a+4>>2]=Xi[n+4>>2],Xi[a+8>>2]=Xi[n+8>>2],Xi[e+24>>2]=Xi[l>>2],Xi[e+28>>2]=Xi[i+80>>2],a=e+32|0,Xi[a>>2]=Xi[i+92>>2],Xi[e+36>>2]=i,(r|0)!=3):0){fC(e,r);Xi[a>>2]=(Xi[a>>2]<<1)+f}return}function fC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=(i|0)==2;a=e+24|0;r=e+12|0;f=Xi[r>>2]|0;if(l){Xi[e>>2]=(Xi[e>>2]|0)+f;Xi[r>>2]=f<<1;r=e+16|0;f=Xi[r>>2]|0;n=e+4|0;Xi[n>>2]=(Xi[n>>2]|0)+f;Xi[a>>2]=i;Xi[r>>2]=f<<1;r=e+20|0;f=Xi[r>>2]|0;n=e+8|0;Xi[n>>2]=(Xi[n>>2]|0)+f}else{Xi[r>>2]=f<<1;f=e+16|0;r=Xi[f>>2]|0;Xi[a>>2]=i;Xi[f>>2]=r<<1;f=e+20|0;r=f;f=Xi[f>>2]|0}Xi[a>>2]=i;Xi[r>>2]=f<<1;Xi[e+28>>2]=Xi[(Xi[e+36>>2]|0)+72+((l&1)<<2)>>2];return}function lC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=Xi[e>>2]|0;t=e+8|0;r=Xi[t>>2]|0;l=Xi[e+16>>2]|0;i=n+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=n+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[t>>2]=r;f=i+1|0;do{if(f){a=n+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){n=r+f|0;Xi[t>>2]=l>>>0>n>>>0?n:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[t>>2]=f;e=i+-15|0;n=n+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[t>>2]=l>>>0>f>>>0?f:l;e=n|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function aC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;u=i+23380|0;e=Xi[u>>2]|0;if(e|0){s=0;do{o=i+23372+(s<<2)|0;if(Xi[o>>2]|0){l=0;do{e=l<<1;r=e+16|0;f=i+23384+(s*1920|0)+(r*40|0)|0;a=f;n=i+23384+(s*1920|0)+(l*40|0)|0;t=a+40|0;do{Xi[a>>2]=Xi[n>>2];a=a+4|0;n=n+4|0}while((a|0)<(t|0));a=i+23384+(s*1920|0)+(r*40|0)+12|0;Xi[a>>2]=Xi[a>>2]<<1;a=i+23384+(s*1920|0)+(r*40|0)+16|0;Xi[a>>2]=Xi[a>>2]<<1;a=i+23384+(s*1920|0)+(r*40|0)+20|0;Xi[a>>2]=Xi[a>>2]<<1;Xi[i+23384+(s*1920|0)+(r*40|0)+24>>2]=1;Xi[i+23384+(s*1920|0)+(r*40|0)+28>>2]=Xi[(Xi[i+23384+(s*1920|0)+(r*40|0)+36>>2]|0)+72>>2];e=e+17|0;a=i+23384+(s*1920|0)+(e*40|0)|0;n=f;t=a+40|0;do{Xi[a>>2]=Xi[n>>2];a=a+4|0;n=n+4|0}while((a|0)<(t|0));n=i+23384+(s*1920|0)+(l*40|0)+36|0;a=Xi[n>>2]|0;t=i+23384+(s*1920|0)+(e*40|0)|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[(Xi[a>>2]|0)+32>>2]|0);t=i+23384+(s*1920|0)+(e*40|0)+4|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[(Xi[a>>2]|0)+36>>2]|0);t=i+23384+(s*1920|0)+(e*40|0)+8|0;Xi[t>>2]=(Xi[t>>2]|0)+(Xi[(Xi[Xi[n>>2]>>2]|0)+40>>2]|0);Xi[i+23384+(s*1920|0)+(e*40|0)+24>>2]=2;Xi[i+23384+(s*1920|0)+(e*40|0)+28>>2]=Xi[(Xi[i+23384+(s*1920|0)+(e*40|0)+36>>2]|0)+76>>2];t=Xi[i+888+(l<<4)+(s<<3)>>2]|0;Xi[i+888+(e<<4)+(s<<3)>>2]=t;Xi[i+888+(r<<4)+(s<<3)>>2]=t;t=Xi[i+888+(l<<4)+(s<<3)+4>>2]|0;Xi[i+888+(e<<4)+(s<<3)+4>>2]=t;Xi[i+888+(r<<4)+(s<<3)+4>>2]=t;t=Xi[i+1656+(l<<5)+(s<<4)>>2]|0;Xi[i+1656+(e<<5)+(s<<4)>>2]=t;Xi[i+1656+(r<<5)+(s<<4)>>2]=t;t=Xi[i+1656+(l<<5)+(s<<4)+4>>2]|0;Xi[i+1656+(e<<5)+(s<<4)+4>>2]=t;Xi[i+1656+(r<<5)+(s<<4)+4>>2]=t;t=Xi[i+1656+(l<<5)+(s<<4)+8>>2]|0;Xi[i+1656+(e<<5)+(s<<4)+8>>2]=t;Xi[i+1656+(r<<5)+(s<<4)+8>>2]=t;t=Xi[i+1656+(l<<5)+(s<<4)+12>>2]|0;Xi[i+1656+(e<<5)+(s<<4)+12>>2]=t;Xi[i+1656+(r<<5)+(s<<4)+12>>2]=t;l=l+1|0}while(l>>>0<(Xi[o>>2]|0)>>>0);e=Xi[u>>2]|0}s=s+1|0}while(s>>>0<e>>>0)}return}function nC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=0;do{tC(e,i,0);i=i+1|0}while((i|0)!=16);o=e+208964|0;if(Xi[o>>2]|0){i=e+25288|0;if((Xi[Xi[i>>2]>>2]|0)==0?(VD(e,i),r=Xi[e+207760>>2]|0,Xi[(Xi[r>>2]|0)+248>>2]|0):0)YD(e,i,r)|0;if((Xi[o>>2]|0)>0){f=e+208016|0;t=0;do{l=e+207760+(t<<2)|0;a=Xi[l>>2]|0;n=a+636|0;Xi[n>>2]=0;i=Xi[f>>2]|0;e:do{if(i|0){r=0;while(1){r=r+1|0;if((i|0)==(a|0))break;i=Xi[e+208016+(r<<2)>>2]|0;if(!i)break e}Xi[n>>2]=4}}while(0);Xi[l>>2]=0;t=t+1|0}while((t|0)<(Xi[o>>2]|0))}}Xi[o>>2]=0;i=e+207680|0;r=i+80|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(r|0));f=e+25956|0;if((Xi[f>>2]|0)>0){i=e+25952|0;r=0;do{jT((Xi[i>>2]|0)+(r*49776|0)+23372|0,0,3852)|0;r=r+1|0}while((r|0)<(Xi[f>>2]|0))}return}function tC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=e+207888+(i<<2)|0;l=Xi[f>>2]|0;if(l|0?(a=l+636|0,r=Xi[a>>2]&r,Xi[a>>2]=r,(r|0)==0):0){i=Xi[e+208016>>2]|0;e:do{if(i|0){r=0;while(1){r=r+1|0;if((i|0)==(l|0))break;i=Xi[e+208016+(r<<2)>>2]|0;if(!i)break e}Xi[a>>2]=4}}while(0);Xi[l+96>>2]=0;Xi[f>>2]=0;e=e+208960|0;Xi[e>>2]=(Xi[e>>2]|0)+-1}return}function oC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;s=Ue;Ue=Ue+800|0;o=s;t=s+8|0;a=(i|0)!=0;n=e+208160|0;f=a?n:t;i=Xi[e+208964>>2]|0;do{if((i|0)!=0?((Xi[e+208960>>2]|0)+i|0)>=(Xi[e+26708>>2]|0):0){l=(Xi[e+205812>>2]|0)==3;if((!l?(Xi[e+205816>>2]|0)==0:0)?Xi[(Xi[e+24620>>2]|0)+636>>2]|0:0){f=0;break}Xi[f>>2]=1;i=Xi[(Xi[e+207760+(i+-1<<2)>>2]|0)+84>>2]|0;r=f+4|0;Xi[r>>2]=i;if(l)f=1;else{l=i<<1;Xi[r>>2]=l;Xi[f+12>>2]=1;Xi[f+16>>2]=l|1;f=2}}else f=0}while(0);r=e+208952|0;do{if(a){Xi[r>>2]=f;i=0}else{i=Xi[r>>2]|0;if((f|0)==(i|0)){if(!(sC(n,t,f)|0)){i=0;break}i=Xi[r>>2]|0}e=Xi[e+4>>2]|0;Xi[o>>2]=f;Xi[o+4>>2]=i;nA(e,16,115862,o);i=-1094995529}}while(0);Ue=s;return i|0}function sC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;n=t;e:do{if((r|0)>0){f=0;while(1){a=Xi[e+(f*12|0)>>2]|0;l=Xi[i+(f*12|0)>>2]|0;if((a|0)!=(l|0))break;f=f+1|0;if((f|0)>=(r|0)){f=0;break e}}Xi[n>>2]=a;Xi[n+4>>2]=l;Xi[n+8>>2]=f;nA(0,16,115808,n);f=-1}else f=0}while(0);Ue=t;return f|0}function uC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0;re=Ue;Ue=Ue+112|0;Q=re+96|0;Z=re+88|0;J=re+80|0;W=re+64|0;K=re+56|0;j=re+48|0;Y=re+40|0;X=re+32|0;G=re+24|0;V=re+8|0;z=re+108|0;ee=e+4|0;f=Xi[ee>>2]|0;if((r|0)==0?(Xi[f+680>>2]&2048|0)!=0:0)nA(f,48,115911,re);if((r|0)>0){L=e+208964|0;I=e+208960|0;k=e+205812|0;b=e+207760|0;c=e+24620|0;d=e+207764|0;v=e+207648|0;E=e+208956|0;S=e+208088|0;_=e+208092|0;m=e+208096|0;p=e+208100|0;F=e+208104|0;y=e+208108|0;O=e+208112|0;A=e+208116|0;g=e+208120|0;M=e+208124|0;R=e+208128|0;T=e+208132|0;N=e+208136|0;D=e+208140|0;C=e+208144|0;P=e+208148|0;a=0;h=0;w=0;n=0;H=0;t=0;e:while(1){f=Xi[ee>>2]|0;if(Xi[f+680>>2]&2048|0){s=Xi[e+208160+(H*12|0)+4>>2]|0;u=Xi[e+208160+(H*12|0)+8>>2]|0;Xi[V>>2]=Xi[e+208160+(H*12|0)>>2];Xi[V+4>>2]=s;Xi[V+8>>2]=u;nA(f,48,115925,V)}o=i+(H*12|0)|0;f=Xi[o>>2]|0;i:do{switch(f|0){case 3:case 1:{f=Xi[i+(H*12|0)+4>>2]|0;a=Xi[k>>2]|0;if((a|0)==3){s=f;a=3}else{s=f>>1;a=(f&1|0)==0?a^3:a}n=hC(e,s,z)|0;f=Xi[o>>2]|0;if(!n){if(((f|0)==3?(U=Xi[e+207888+(Xi[i+(H*12|0)+8>>2]<<2)>>2]|0,U|0):0)?(Xi[U+84>>2]|0)==(s|0):0){t=h;o=w;n=s;f=0;break i}nA(Xi[ee>>2]|0,Xi[L>>2]|0?16:48,115950,G);t=h;o=-1094995529;n=s;f=0}else{u=n;q=15}break}default:{s=n;u=t;q=15}}}while(0);i:do{if((q|0)==15){q=0;switch(f|0){case 1:{f=Xi[ee>>2]|0;if(Xi[f+680>>2]&2048|0){o=Xi[L>>2]|0;Xi[X>>2]=Xi[e+208160+(H*12|0)+4>>2];Xi[X+4>>2]=o;nA(f,48,115977,X)}wC(e,s,a^3)|0;t=h;o=w;n=s;f=u;break i}case 3:{o=i+(H*12|0)+8|0;f=Xi[o>>2]|0;if((Xi[e+207888+(f<<2)>>2]|0)!=(u|0))tC(e,f,0);f=Xi[z>>2]|0;n=e+207760+(f<<2)|0;Xi[n>>2]=0;t=(Xi[L>>2]|0)+-1|0;Xi[L>>2]=t;if(t|0)JT(n|0,e+207760+(f+1<<2)|0,t-f<<2|0)|0;Xi[e+207888+(Xi[o>>2]<<2)>>2]=u;if(!u){t=h;o=w;n=s;f=0;break i}Xi[u+96>>2]=1;Xi[I>>2]=(Xi[I>>2]|0)+1;t=h;o=w;n=s;f=u;break i}case 2:{f=Xi[i+(H*12|0)+8>>2]|0;a=Xi[k>>2]|0;if((a|0)==3){n=f;a=3}else{n=f>>1;a=(f&1|0)==0?a^3:a}Xi[z>>2]=n;f=Xi[e+207888+(n<<2)>>2]|0;if(f|0){tC(e,n,a^3);t=h;o=w;n=s;break i}f=Xi[ee>>2]|0;if(!(Xi[f+680>>2]&2048)){t=h;o=w;n=s;f=0;break i}nA(f,48,116034,Y);t=h;o=w;n=s;f=0;break i}case 6:{if((Xi[b>>2]|0)==(Xi[c>>2]|0)?(nA(Xi[ee>>2]|0,16,116060,j),Xi[b>>2]=0,B=(Xi[L>>2]|0)+-1|0,Xi[L>>2]=B,B|0):0)JT(b|0,d|0,B<<2|0)|0;f=Xi[c>>2]|0;if(!(Xi[f+96>>2]|0))t=i+(H*12|0)+8|0;else{Xi[z>>2]=0;t=i+(H*12|0)+8|0;n=0;while(1){if((Xi[e+207888+(n<<2)>>2]|0)==(f|0)){if((n|0)!=(Xi[t>>2]|0))nA(Xi[ee>>2]|0,16,116132,K);tC(e,n,0)}f=n+1|0;if((f|0)==32)break;n=f;f=Xi[c>>2]|0}Xi[z>>2]=32;f=Xi[c>>2]|0}n=Xi[t>>2]|0;if((Xi[e+207888+(n<<2)>>2]|0)!=(f|0)){if(Xi[f+96>>2]|0){q=47;break e}tC(e,n,0);f=Xi[c>>2]|0;Xi[e+207888+(Xi[t>>2]<<2)>>2]=f;Xi[f+96>>2]=1;Xi[I>>2]=(Xi[I>>2]|0)+1;f=Xi[c>>2]|0}t=f+636|0;Xi[t>>2]=Xi[t>>2]|Xi[k>>2];t=1;o=w;n=s;f=u;break i}case 4:{f=Xi[i+(H*12|0)+8>>2]|0;Xi[z>>2]=f;if((f|0)>=16){t=h;o=w;n=s;f=u;break i}n=f+1|0;t=(n|0)>16;do{tC(e,f,0);f=f+1|0}while((f|0)<16);Xi[z>>2]=t?n:16;t=h;o=w;n=s;f=u;break i}case 5:{if(Xi[L>>2]|0)do{wC(e,Xi[(Xi[b>>2]|0)+84>>2]|0,0)|0}while((Xi[L>>2]|0)!=0);Xi[z>>2]=0;f=0;do{tC(e,f,0);f=f+1|0}while((f|0)!=16);t=Xi[c>>2]|0;Xi[t+84>>2]=0;Xi[v>>2]=0;Xi[E>>2]=1;Xi[t+88>>2]=1;Xi[S>>2]=-2147483648;Xi[_>>2]=-2147483648;Xi[m>>2]=-2147483648;Xi[p>>2]=-2147483648;Xi[F>>2]=-2147483648;Xi[y>>2]=-2147483648;Xi[O>>2]=-2147483648;Xi[A>>2]=-2147483648;Xi[g>>2]=-2147483648;Xi[M>>2]=-2147483648;Xi[R>>2]=-2147483648;Xi[T>>2]=-2147483648;Xi[N>>2]=-2147483648;Xi[D>>2]=-2147483648;Xi[C>>2]=-2147483648;Xi[P>>2]=-2147483648;Xi[z>>2]=16;t=h;o=w;n=s;f=u;break i}default:{t=h;o=w;n=s;f=u;break i}}}}while(0);H=H+1|0;if((H|0)>=(r|0)){x=t;l=o;break}else{h=t;w=o;t=f}}if((q|0)==47){Xi[W>>2]=116195;Xi[W+4>>2]=115456;Xi[W+8>>2]=705;nA(0,0,150445,W);$e()}if(!x)q=61;else h=e+208964|0}else{l=0;q=61}do{if((q|0)==61){t=e+208964|0;if(Xi[t>>2]|0){a=Xi[e+207760>>2]|0;n=e+24620|0;f=Xi[n>>2]|0;if((a|0)==(f|0)){h=a+636|0;Xi[h>>2]=Xi[h>>2]|Xi[e+205812>>2];h=t;break}}else{f=e+24620|0;n=f;f=Xi[f>>2]|0}if(Xi[f+96>>2]|0){nA(Xi[ee>>2]|0,16,116221,J);h=t;l=-1094995529;break}if(wC(e,Xi[f+84>>2]|0,0)|0){nA(Xi[ee>>2]|0,16,116334,Z);l=-1094995529}f=Xi[t>>2]|0;if(!f)f=1;else{JT(e+207764|0,e+207760|0,f<<2|0)|0;f=(Xi[t>>2]|0)+1|0}h=Xi[n>>2]|0;Xi[e+207760>>2]=h;Xi[t>>2]=f;h=h+636|0;Xi[h>>2]=Xi[h>>2]|Xi[e+205812>>2];h=t}}while(0);u=e+208960|0;f=Xi[u>>2]|0;a=Xi[h>>2]|0;o=e+26708|0;n=Xi[o>>2]|0;do{if((a+f|0)>(((n|0)>1?n:1)|0)){Z=Xi[ee>>2]|0;Xi[Q>>2]=f;Xi[Q+4>>2]=a;Xi[Q+8>>2]=n;nA(Z,16,116376,Q);f=Xi[h>>2]|0;if((Xi[u>>2]|0)!=0&(f|0)==0)f=0;else{wC(e,Xi[(Xi[e+207760+(f+-1<<2)>>2]|0)+84>>2]|0,0)|0;s=-1094995529;break}do{if(Xi[e+207888+(f<<2)>>2]|0)break;f=f+1|0}while((f|0)<16);tC(e,f,0);s=-1094995529}else s=l}while(0);f=Xi[h>>2]|0;if((f|0)>0){n=e+24620|0;t=e+26680|0;a=0;do{l=Xi[e+207760+(a<<2)>>2]|0;if((Xi[l+644>>2]|0)!=0?($=Xi[l+84>>2]|0,((1<<Xi[t>>2])+-1&(Xi[(Xi[n>>2]|0)+84>>2]|0)-$|0)>(Xi[o>>2]|0)):0){wC(e,$,0)|0;f=Xi[h>>2]|0}a=a+1|0}while((a|0)<(f|0))}QD(e);$D(e);f=Xi[e+31984>>2]|0;n=Xi[e+31988>>2]|0;t=0;l=0;a=0;do{l=l>>>0>f>>>0?l:f;a=a>>>0>n>>>0?a:n;t=t+1|0}while((t|0)!=256);do{if((s|0)>-1?(Xi[u>>2]|0)==0:0){f=Xi[e+205812>>2]|0;if((Xi[h>>2]|0)>=3?!((a|0)<2&(l|0)<=(((f|0)!=3?2:1)|0)):0)break;if(((l|0)<=((((Xi[e+209096>>2]|0)==0&1)<<1)+((f|0)!=3|2)|0)?(ie=Xi[e+24620>>2]|0,(Xi[(Xi[ie>>2]|0)+88>>2]|0)==1):0)?(ie=ie+640|0,Xi[ie>>2]=Xi[ie>>2]|1,(Xi[(Xi[ee>>2]|0)+180>>2]|0)==0):0){e=e+209092|0;Xi[e>>2]=Xi[e>>2]|2}}}while(0);Ue=re;return(Xi[(Xi[ee>>2]|0)+688>>2]&8|0?s:0)|0}function hC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;s=Ue;Ue=Ue+16|0;o=s;n=e+208964|0;e:do{if((Xi[n>>2]|0)>0){t=e+4|0;l=0;while(1){f=Xi[e+207760+(l<<2)>>2]|0;a=Xi[t>>2]|0;if(!(Xi[a+680>>2]&2048))a=f+84|0;else{u=f+84|0;h=Xi[u>>2]|0;Xi[o>>2]=l;Xi[o+4>>2]=h;Xi[o+8>>2]=f;nA(a,48,115940,o);a=u}if((Xi[a>>2]|0)==(i|0))break;l=l+1|0;if((l|0)>=(Xi[n>>2]|0)){f=0;break e}}Xi[r>>2]=l}else f=0}while(0);Ue=s;return f|0}function wC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;o=Ue;Ue=Ue+16|0;l=o;t=o+8|0;f=Xi[e+4>>2]|0;if(Xi[f+680>>2]&2048|0){n=Xi[e+208964>>2]|0;Xi[l>>2]=i;Xi[l+4>>2]=n;nA(f,48,116008,l)}n=hC(e,i,t)|0;if(n|0?(a=n+636|0,r=Xi[a>>2]&r,Xi[a>>2]=r,(r|0)==0):0){f=Xi[e+208016>>2]|0;e:do{if(f|0){i=0;while(1){i=i+1|0;if((f|0)==(n|0))break;f=Xi[e+208016+(i<<2)>>2]|0;if(!f)break e}Xi[a>>2]=4}}while(0);f=Xi[t>>2]|0;i=e+207760+(f<<2)|0;Xi[i>>2]=0;t=e+208964|0;l=(Xi[t>>2]|0)+-1|0;Xi[t>>2]=l;if(l|0)JT(i|0,e+207760+(f+1<<2)|0,l-f<<2|0)|0}Ue=o;return n|0}function kC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;E=Ue;Ue=Ue+816|0;v=E+16|0;c=E+8|0;b=E;d=E+24|0;k=i+8|0;l=Xi[k>>2]|0;e:do{if((Xi[e+206448>>2]|0)==5){w=Xi[i+16>>2]|0;b=l+1|0;b=w>>>0>b>>>0?b:w;Xi[k>>2]=b;c=qi[(Xi[i>>2]|0)+(b>>>3)>>0]|0;Xi[k>>2]=((b|0)<(w|0)&1)+b;if(!(128>>>(b&7)&c)){a=0;t=24}else{Xi[d>>2]=6;Xi[d+8>>2]=0;a=1;t=24}}else{n=Xi[i>>2]|0;h=qi[n+(l>>>3)>>0]|0;w=i+16|0;o=Xi[w>>2]|0;a=((l|0)<(o|0)&1)+l|0;Xi[k>>2]=a;if(!(h&128>>>(l&7))){if((r|0?(f=oC(e,r)|0,(f|0)<0):0)?Xi[(Xi[e+4>>2]|0)+688>>2]&8|0:0)break;f=0;break}s=e+207672|0;u=e+207676|0;h=e+205812|0;t=a;l=n;f=o;a=0;i:while(1){l=l+(t>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(t&7)>>>23;o=(qi[98538+l>>0]|0)+t|0;Xi[k>>2]=f>>>0>o>>>0?o:f;l=Wi[99050+l>>0]|0;f=l&255;Xi[d+(a*12|0)>>2]=f;if((f&253|0)==1){o=Xi[s>>2]|0;o=o+-1-(lC(i)|0)|0;Xi[d+(a*12|0)+4>>2]=o&(Xi[u>>2]|0)+-1}n=l<<24>>24==2;switch(f|0){case 2:case 3:case 4:case 6:{S=Xi[k>>2]|0;o=Xi[w>>2]|0;t=(Xi[i>>2]|0)+(S>>>3)|0;t=(ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0)<<(S&7)>>>23;S=(qi[98538+t>>0]|0)+S|0;Xi[k>>2]=o>>>0>S>>>0?S:o;t=Wi[99050+t>>0]|0;o=t&255;if((t&255)>31){t=13;break i}if(!((t&255)<16|l<<24>>24==4&t<<24>>24==16)){if(!n){t=13;break i}if((Xi[h>>2]|0)==3){t=13;break i}}Xi[d+(a*12|0)+8>>2]=o;break}default:{if((l&255)>6){t=16;break i}if(!(l<<24>>24)){t=24;break e}}}a=a+1|0;if((a|0)>=66){t=24;break e}t=Xi[k>>2]|0;l=Xi[i>>2]|0;f=Xi[w>>2]|0}if((t|0)==13){S=Xi[e+4>>2]|0;Xi[b>>2]=f;nA(S,16,116469,b);f=-1;break}else if((t|0)==16){S=Xi[e+4>>2]|0;Xi[c>>2]=f;nA(S,16,116529,c);f=-1;break}}}while(0);do{if((t|0)==24){if((r|0)!=0&(a|0)!=-1){qT(e+208160|0,d|0,792)|0;Xi[e+208952>>2]=a;f=0;break}if((r|0)==0&(a|0)>-1){l=e+208952|0;f=Xi[l>>2]|0;if((a|0)==(f|0)){if(!(sC(e+208160|0,d,a)|0)){f=0;break}f=Xi[l>>2]|0}S=Xi[e+4>>2]|0;Xi[v>>2]=a;Xi[v+4>>2]=f;nA(S,16,115862,v);f=-1094995529}else f=0}}while(0);Ue=E;return f|0}function bC(e){e=e|0;Xi[e+209056>>2]=-1;Xi[e+209048>>2]=0;Xi[e+209052>>2]=-1;Xi[e+209108>>2]=0;Xi[e+208996>>2]=0;Xi[e+209012>>2]=0;Xi[e+209028>>2]=0;Xi[e+209036>>2]=0;vA(e+209040|0);return}function cC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0;Oe=Ue;Ue=Ue+192|0;Se=Oe+176|0;Ee=Oe+168|0;ve=Oe+160|0;de=Oe+128|0;ce=Oe+120|0;be=Oe+112|0;ke=Oe+104|0;we=Oe+96|0;he=Oe+88|0;ue=Oe+64|0;me=Oe+56|0;se=Oe+48|0;oe=Oe+40|0;te=Oe+32|0;_e=Oe+24|0;pe=Oe+8|0;ne=Oe;ae=Oe+180|0;w=e+696|0;k=e+708|0;r=Xi[k>>2]|0;P=e+704|0;i=Xi[P>>2]|0;e:do{if((r-i|0)>16){ee=e+712|0;Fe=e+4|0;le=e+26660|0;b=e+696|0;c=e+208988|0;d=e+209044|0;v=e+209052|0;E=e+209048|0;S=e+209032|0;_=e+209028|0;m=e+209036|0;p=e+209040|0;F=e+206420|0;y=e+209056|0;O=e+209096|0;A=e+209108|0;g=e+209064|0;M=e+209068|0;R=e+208996|0;T=e+209e3|0;N=e+209072|0;D=e+209008|0;C=e+209084|0;L=e+209004|0;I=e+209080|0;H=e+209076|0;B=e+209012|0;U=e+209020|0;x=e+209024|0;z=e+209016|0;V=e+209356|0;Y=e+209357|0;j=e+209360|0;K=e+209362|0;W=e+209363|0;G=e+209364|0;X=e+209365|0;q=e+209358|0;J=e+209366|0;Z=e+209368|0;n=r;i:while(1){a=Xi[w>>2]|0;h=a+(i>>>3)|0;if(!((ZT(qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24|0)|0)&-65536>>>(i&7))){i=0;break e}else f=0;while(1){if((n-i|0)<8){i=-1094995529;break e}h=a+(i>>>3)|0;h=(ZT(qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24|0)|0)<<(i&7)>>>24;f=h+f|0;r=Xi[ee>>2]|0;i=i+8|0;i=r>>>0>i>>>0?i:r;Xi[P>>2]=i;if((h|0)!=255){l=r;break}}r=0;do{if((n-i|0)<8){i=-1094995529;break e}h=a+(i>>>3)|0;h=(ZT(qi[h>>0]|qi[h+1>>0]<<8|qi[h+2>>0]<<16|qi[h+3>>0]<<24|0)|0)<<(i&7)>>>24;r=h+r|0;i=i+8|0;i=l>>>0>i>>>0?i:l;Xi[P>>2]=i}while((h|0)==255);l=Xi[Fe>>2]|0;if(!(Xi[l+680>>2]&256)){o=i;i=n}else{Xi[ne>>2]=f;Xi[ne+4>>2]=r;nA(l,48,116577,ne);o=Xi[P>>2]|0;i=Xi[k>>2]|0}i=i-o|0;if(r>>>0>((i|0)/8|0)>>>0){ye=12;break}h=o+(r<<3)|0;r:do{switch(f|0){case 1:{r=0;i=le;do{if(!(Xi[i+20>>2]|0)){u=Xi[e+206468+(r<<2)>>2]|0;i=(u|0)==0?i:u}r=r+1|0}while((r|0)!=32);t=i;if((Xi[t+1152>>2]|0)==0?(Xi[t+1156>>2]|0)==0:0)i=o;else{i=Xi[t+1176>>2]|0;do{if(i){r=Xi[ee>>2]|0;f=Xi[w>>2]|0;l=f+(o>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(o&7);if((i|0)<26){u=o+i|0;u=r>>>0>u>>>0?u:r;Xi[P>>2]=u;r=l>>>(32-i|0);i=u;break}else{o=o+16|0;o=r>>>0>o>>>0?o:r;Xi[P>>2]=o;u=i+-16|0;s=f+(o>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(o&7)>>>(48-i|0);i=o+u|0;i=r>>>0>i>>>0?i:r;Xi[P>>2]=i;r=s|l>>>16<<u;break}}else{r=0;i=o}}while(0);Xi[v>>2]=r;r=Xi[t+1180>>2]|0;do{if(r){f=Xi[ee>>2]|0;l=Xi[w>>2]|0;a=l+(i>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(i&7);if((r|0)<26){i=i+r|0;i=f>>>0>i>>>0?i:f;Xi[P>>2]=i;r=a>>>(32-r|0);break}else{i=i+16|0;i=f>>>0>i>>>0?i:f;Xi[P>>2]=i;u=r+-16|0;s=l+(i>>>3)|0;r=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(i&7)>>>(48-r|0);i=i+u|0;i=f>>>0>i>>>0?i:f;Xi[P>>2]=i;r=r|a>>>16<<u;break}}else r=0}while(0);Xi[E>>2]=r}if(Xi[t+1160>>2]|0){o=Xi[ee>>2]|0;s=Xi[b>>2]|0;n=s+(i>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(i&7);u=n>>>28;i=i+4|0;i=o>>>0>i>>>0?i:o;Xi[P>>2]=i;Xi[c>>2]=u;Xi[d>>2]=0;if(n>>>0>2415919103){i=-1094995529;break e}n=qi[116629+u>>0]|0;a=t+1164|0;f=i;i=0;l=0;while(1){t=s+(f>>>3)|0;t=ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0;r=f+1|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r;if(t&-2147483648>>>(f&7)){f=s+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7)>>>30;t=r+2|0;i=1<<f|i;Xi[d>>2]=i;t=(o>>>0>t>>>0?t:o)+1|0;t=(o>>>0>t>>>0?t:o)+5|0;t=o>>>0>t>>>0?t:o;Xi[P>>2]=t;r=s+(t>>>3)|0;r=ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0;f=t+1|0;f=(o>>>0>f>>>0?f:o)+1|0;f=(o>>>0>f>>>0?f:o)+1|0;f=(o>>>0>f>>>0?f:o)+8|0;f=o>>>0>f>>>0?f:o;Xi[P>>2]=f;if(!(r&-2147483648>>>(t&7))){t=s+(f>>>3)|0;t=ZT(qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24|0)|0;r=f+1|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r;if(t&-2147483648>>>(f&7)){t=r+6|0;t=o>>>0>t>>>0?t:o;Xi[P>>2]=t;f=s+(t>>>3)|0;f=ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0;r=t+1|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r;if(f&-2147483648>>>(t&7)){t=r+6|0;t=o>>>0>t>>>0?t:o;Xi[P>>2]=t;f=s+(t>>>3)|0;f=ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0;r=t+1|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r;if(f&-2147483648>>>(t&7)){r=r+5|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r}}}}else{r=f+6|0;r=(o>>>0>r>>>0?r:o)+6|0;r=(o>>>0>r>>>0?r:o)+5|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r}f=Xi[a>>2]|0;if((f|0)>0){r=f+r|0;r=o>>>0>r>>>0?r:o;Xi[P>>2]=r}}l=l+1|0;if(l>>>0>=n>>>0)break;else f=r}r=Xi[Fe>>2]|0;if(Xi[r+680>>2]&1|0){Xi[_e>>2]=i;Xi[_e+4>>2]=u;nA(r,48,116638,_e)}}break}case 4:{if((r|0)<7){i=-1094995529;break e}a=Xi[ee>>2]|0;l=Xi[b>>2]|0;u=l+(o>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(o&7);i=o+8|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;if(u>>>0>4278190079){i=i+8|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;f=r+-8|0}else f=r+-7|0;i=i+8|0;i=(a>>>0>i>>>0?i:a)+8|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;r=l+(i>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(i&7)&-65536;i=i+16|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;u=l+(i>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(i&7)>>>16;i=i+16|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;r=u|r;f:do{if((r|0)<1195456820){switch(r|0){case 1146373937:break;default:break f}if((f|0)<1){i=-1094995529;break e}u=i+1|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;s=l+(u>>>3)|0;s=ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0;i=u+1|0;i=(a>>>0>i>>>0?i:a)+6|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;if(!(s&-2147483648>>>(u&7)))break r;if((f|0)<2){i=-1094995529;break e}s=i+4|0;s=a>>>0>s>>>0?s:a;Xi[P>>2]=s;u=l+(s>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(s&7)>>>28;s=s+4|0;Xi[P>>2]=a>>>0>s>>>0?s:a;Wi[S>>0]=u;Xi[_>>2]=1;Xi[(Xi[Fe>>2]|0)+276>>2]=u;break r}else{switch(r|0){case 1195456820:break;default:break f}if((f|0)<3){i=-22;break e}u=l+(i>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(i&7);i=i+8|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;if((u&-16777216|0)!=50331648){f=f+-1|0;r=0;do{i=i+8|0;i=a>>>0>i>>>0?i:a;r=r+1|0}while((r|0)!=(f|0));Xi[P>>2]=i;break r}u=i+1|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;s=l+(u>>>3)|0;s=ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0;i=u+1|0;i=a>>>0>i>>>0?i:a;Xi[P>>2]=i;if(!(s&-2147483648>>>(u&7)))break r;u=i+1|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;l=l+(u>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(u&7)>>>27;u=u+5|0;u=(a>>>0>u>>>0?u:a)+8|0;Xi[P>>2]=a>>>0>u>>>0?u:a;if(!l)break r;if((f+-2|0)<(l*3|0))break r;u=Xi[m>>2]|0;i=rN(l|0,0,3,0)|0;i=WT(u|0,((u|0)<0)<<31>>31|0,i|0,Ie|0)|0;u=Ie;if(u>>>0>0|(u|0)==0&i>>>0>2147483647){i=-22;break e}i=SM(p,i)|0;if((i|0)<0)break e;r=Xi[P>>2]|0;i=Xi[ee>>2]|0;f=0;do{u=(Xi[b>>2]|0)+(r>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(r&7)>>>24;r=r+8|0;Xi[P>>2]=i>>>0>r>>>0?r:i;i=Xi[m>>2]|0;Xi[m>>2]=i+1;Wi[(Xi[p>>2]|0)+i>>0]=u;i=Xi[P>>2]|0;u=Xi[ee>>2]|0;r=(Xi[b>>2]|0)+(i>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(i&7)>>>24;i=i+8|0;Xi[P>>2]=u>>>0>i>>>0?i:u;u=Xi[m>>2]|0;Xi[m>>2]=u+1;Wi[(Xi[p>>2]|0)+u>>0]=r;u=Xi[P>>2]|0;r=Xi[ee>>2]|0;i=(Xi[b>>2]|0)+(u>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;Xi[P>>2]=r>>>0>u>>>0?u:r;r=Xi[m>>2]|0;Xi[m>>2]=r+1;Wi[(Xi[p>>2]|0)+r>>0]=i;f=f+1|0;r=Xi[P>>2]|0;i=Xi[ee>>2]|0}while((f|0)!=(l|0));u=r+8|0;Xi[P>>2]=i>>>0>u>>>0?u:i;break r}}while(0);u=i+(f<<3)|0;Xi[P>>2]=a>>>0>u>>>0?u:a;break}case 5:{if((r+-16|0)>>>0>2147483614){i=-1094995529;ye=130;break i}t=rA(r+17|0)|0;if(!t){i=-12;ye=130;break i}if((r|0)>-16){l=r+15|0;i=Xi[ee>>2]|0;f=Xi[b>>2]|0;a=Xi[P>>2]|0;n=0;while(1){u=f+(a>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(a&7)>>>24;s=a+8|0;a=i>>>0>s>>>0?s:i;Xi[P>>2]=a;Wi[t+n>>0]=u;if((n|0)>=(l|0))break;else n=n+1|0}i=(l|0)>0?r+16|0:1}else i=0;Wi[t+i>>0]=0;i=t+16|0;Xi[te>>2]=ae;r=(qR(i,116664,te)|0)==1;f=Xi[ae>>2]|0;if(r&(f|0)>0)Xi[F>>2]=f;if(r&(f|0)==1?(UR(i,116679,16)|0)==0:0)Xi[F>>2]=67;if(Wi[i>>0]|0){u=Xi[Fe>>2]|0;Xi[oe>>2]=i;nA(u,48,116696,oe)}FA(t);break}case 6:{i=dC(w)|0;Xi[y>>2]=i;r=Xi[ee>>2]|0;u=(Xi[P>>2]|0)+4|0;Xi[P>>2]=r>>>0>u>>>0?u:r;r=Xi[Fe>>2]|0;if(Xi[r+680>>2]&1|0){Xi[se>>2]=i;nA(r,48,116712,se)}Xi[O>>2]=1;break}case 0:{l=Xi[ee>>2]|0;u=(Xi[b>>2]|0)+(o>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(o&7)>>>23;r=(qi[98538+u>>0]|0)+o|0;r=l>>>0>r>>>0?r:l;Xi[P>>2]=r;u=Wi[99050+u>>0]|0;i=u&255;if((u&255)>31){ye=83;break i}o=Xi[e+206468+(i<<2)>>2]|0;if(!o){ye=83;break i}if((Xi[o+1152>>2]|0)!=0?(Q=o+1168|0,(Xi[Q>>2]|0)>0):0){t=o+1172|0;n=Xi[t>>2]|0;i=r;r=l;a=0;do{do{if(n){f=Xi[b>>2]|0;l=f+(i>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(i&7);if((n|0)<26){i=n+i|0;Xi[P>>2]=r>>>0>i>>>0?i:r;i=l>>>(32-n|0);break}else{s=i+16|0;s=r>>>0>s>>>0?s:r;Xi[P>>2]=s;i=n+-16|0;u=f+(s>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(s&7)>>>(48-n|0);s=s+i|0;Xi[P>>2]=r>>>0>s>>>0?s:r;i=u|l>>>16<<i;break}}else i=0}while(0);Xi[e+209112+(a<<2)>>2]=i;n=Xi[t>>2]|0;r=Xi[ee>>2]|0;i=(Xi[P>>2]|0)+n|0;i=r>>>0>i>>>0?i:r;Xi[P>>2]=i;a=a+1|0}while((a|0)<(Xi[Q>>2]|0));l=r}else i=r;if(Xi[o+1156>>2]|0?($=o+1168|0,(Xi[$>>2]|0)>0):0){t=o+1172|0;n=Xi[t>>2]|0;a=0;do{do{if(n){r=Xi[b>>2]|0;f=r+(i>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(i&7);if((n|0)<26){i=n+i|0;Xi[P>>2]=l>>>0>i>>>0?i:l;i=f>>>(32-n|0);break}else{s=i+16|0;s=l>>>0>s>>>0?s:l;Xi[P>>2]=s;i=n+-16|0;u=r+(s>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(s&7)>>>(48-n|0);s=s+i|0;Xi[P>>2]=l>>>0>s>>>0?s:l;i=u|f>>>16<<i;break}}else i=0}while(0);Xi[e+209112+(a<<2)>>2]=i;n=Xi[t>>2]|0;l=Xi[ee>>2]|0;i=(Xi[P>>2]|0)+n|0;i=l>>>0>i>>>0?i:l;Xi[P>>2]=i;a=a+1|0}while((a|0)<(Xi[$>>2]|0))}Xi[A>>2]=1;break}case 45:{Xi[g>>2]=dC(w)|0;i=Xi[P>>2]|0;r=Xi[w>>2]|0;u=qi[r+(i>>>3)>>0]<<(i&7)>>>7&1;f=Xi[ee>>2]|0;i=((i|0)<(f|0)&1)+i|0;Xi[P>>2]=i;Xi[M>>2]=u;Xi[R>>2]=u^1;if(!u){s=r+(i>>>3)|0;s=(ZT(qi[s>>0]|qi[s+1>>0]<<8|qi[s+2>>0]<<16|qi[s+3>>0]<<24|0)|0)<<(i&7)>>>25;i=i+7|0;i=f>>>0>i>>>0?i:f;Xi[P>>2]=i;Xi[T>>2]=s;Xi[N>>2]=s;u=qi[r+(i>>>3)>>0]<<(i&7)>>>7&1;i=((i|0)<(f|0)&1)+i|0;Xi[P>>2]=i;Xi[D>>2]=u;Xi[C>>2]=u;o=r+(i>>>3)|0;o=(ZT(qi[o>>0]|qi[o+1>>0]<<8|qi[o+2>>0]<<16|qi[o+3>>0]<<24|0)|0)<<(i&7)>>>26;i=i+6|0;Xi[L>>2]=o;Xi[I>>2]=o;i=(f>>>0>i>>>0?i:f)+6|0;i=f>>>0>i>>>0?i:f;if(!((s|0)==5|(u|0)!=0)){i=i+16|0;i=f>>>0>i>>>0?i:f}r=i+8|0;Xi[P>>2]=f>>>0>r>>>0?r:f;Xi[H>>2]=dC(w)|0;r=Xi[P>>2]|0;i=Xi[ee>>2]|0}else{r=i;i=f}u=r+1|0;Xi[P>>2]=i>>>0>u>>>0?u:i;i=Xi[Fe>>2]|0;if(Xi[i+680>>2]&1|0){n=Xi[M>>2]|0;t=Xi[N>>2]|0;o=Xi[C>>2]|0;s=Xi[I>>2]|0;u=Xi[H>>2]|0;Xi[ue>>2]=Xi[g>>2];Xi[ue+4>>2]=n;Xi[ue+8>>2]=t;Xi[ue+12>>2]=o;Xi[ue+16>>2]=s;Xi[ue+20>>2]=u;nA(i,48,116792,ue)}break}case 47:{r=Xi[w>>2]|0;u=qi[r+(o>>>3)>>0]<<(o&7)&128;f=Xi[ee>>2]|0;i=((o|0)<(f|0)&1)+o|0;Xi[P>>2]=i;Xi[B>>2]=u>>>7^1;if(!u){u=qi[r+(i>>>3)>>0]<<(i&7)>>>7&1;s=((i|0)<(f|0)&1)+i|0;Xi[P>>2]=s;Xi[U>>2]=u;u=qi[r+(s>>>3)>>0]<<(s&7)>>>7&1;s=((s|0)<(f|0)&1)+s|0;Xi[P>>2]=s;Xi[x>>2]=u;u=r+(s>>>3)|0;u=(ZT(qi[u>>0]|qi[u+1>>0]<<8|qi[u+2>>0]<<16|qi[u+3>>0]<<24|0)|0)<<(s&7)>>>16;s=s+16|0;Xi[P>>2]=f>>>0>s>>>0?s:f;Xi[z>>2]=u;dC(w)|0;u=Xi[ee>>2]|0;s=(Xi[P>>2]|0)+1|0;Xi[P>>2]=u>>>0>s>>>0?s:u}break}case 56:{r=Xi[Fe>>2]|0;i=Xi[r+680>>2]|0;if(!(i&8388608)){l=o;a=i}else{nA(r,48,116819,he);r=Xi[Fe>>2]|0;l=Xi[P>>2]|0;a=Xi[r+680>>2]|0}i=Xi[ee>>2]|0;f=(Xi[b>>2]|0)+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7)>>>24;u=l+8|0;Xi[P>>2]=i>>>0>u>>>0?u:i;i=f&255;Wi[V>>0]=i;if(a&8388608){Xi[we>>2]=f;nA(r,48,116852,we);i=Wi[V>>0]|0}switch(i<<24>>24){case 0:break;case 1:{s=Xi[P>>2]|0;u=Xi[ee>>2]|0;f=Xi[b>>2]|0;r=f+(s>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(s&7)>>>24;s=s+8|0;s=u>>>0>s>>>0?s:u;Xi[P>>2]=s;i=r&255;Wi[J>>0]=i;f=f+(s>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(s&7)>>>16;s=s+16|0;Xi[P>>2]=u>>>0>s>>>0?s:u;Gi[Z>>1]=f;f=Xi[Fe>>2]|0;if(Xi[f+680>>2]&8388608){Xi[ve>>2]=r;nA(f,48,117126,ve);i=Wi[J>>0]|0}if(i<<24>>24)break r;i=Xi[Fe>>2]|0;if(!(Xi[i+680>>2]&8388608))break r;Ae[Ee>>3]=+(Ji[Z>>1]|0)/100.0;nA(i,48,117179,Ee);break r}default:break r}f=Xi[P>>2]|0;r=Xi[ee>>2]|0;i=(Xi[b>>2]|0)+(f>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(f&7)>>>24;f=f+8|0;Xi[P>>2]=r>>>0>f>>>0?f:r;r=i&255;Wi[Y>>0]=r;f=Xi[Fe>>2]|0;do{if(Xi[f+680>>2]&8388608){Xi[ke>>2]=i;nA(f,48,116905,ke);if((Wi[V>>0]|0)!=2){ie=Wi[Y>>0]|0;ye=119;break}u=Xi[P>>2]|0;r=Xi[ee>>2]|0;i=(Xi[b>>2]|0)+(u>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(u&7)>>>16;u=u+16|0;Xi[P>>2]=r>>>0>u>>>0?u:r;Gi[q>>1]=i;r=Xi[Fe>>2]|0;if(Xi[r+680>>2]&8388608|0){Xi[be>>2]=i;nA(r,48,116958,be)}}else{ie=r;ye=119}}while(0);if(((ye|0)==119?(ye=0,ie<<24>>24==3):0)?(u=Xi[P>>2]|0,fe=Xi[ee>>2]|0,re=(Xi[b>>2]|0)+(u>>>3)|0,re=(ZT(qi[re>>0]|qi[re+1>>0]<<8|qi[re+2>>0]<<16|qi[re+3>>0]<<24|0)|0)<<(u&7)>>>16,u=u+16|0,Xi[P>>2]=fe>>>0>u>>>0?u:fe,Gi[j>>1]=re,fe=Xi[Fe>>2]|0,Xi[fe+680>>2]&8388608|0):0){Xi[ce>>2]=re;nA(fe,48,117011,ce)}u=Xi[P>>2]|0;a=Xi[ee>>2]|0;l=Xi[b>>2]|0;i=l+(u>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;i=i&255;Wi[K>>0]=i;r=l+(u>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;r=r&255;Wi[W>>0]=r;f=l+(u>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;u=a>>>0>u>>>0?u:a;Xi[P>>2]=u;f=f&255;Wi[G>>0]=f;l=l+(u>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(u&7)>>>24;u=u+8|0;Xi[P>>2]=a>>>0>u>>>0?u:a;l=l&255;Wi[X>>0]=l;a=Xi[Fe>>2]|0;if(Xi[a+680>>2]&8388608|0){Ae[de>>3]=+(i&255)/255.0;Ae[de+8>>3]=+(r&255)/255.0;Ae[de+16>>3]=+(f&255)/255.0;Ae[de+24>>3]=+(l&255)/255.0;nA(a,48,117064,de)}break}default:{u=Xi[Fe>>2]|0;Xi[Se>>2]=f;nA(u,48,117232,Se)}}}while(0);i=Xi[P>>2]|0;u=0-i|0;f=h-i|0;r=Xi[ee>>2]|0;h=r-i|0;i=((f|0)<(u|0)?u:(h|0)<(f|0)?h:f)+i|0;f=0-i&7;if(f){i=f+i|0;i=r>>>0>i>>>0?i:r}Xi[P>>2]=i;n=Xi[k>>2]|0;if((n-i|0)<=16){i=0;break e}}if((ye|0)==12){ye=Xi[Fe>>2]|0;Xi[pe>>2]=f;Xi[pe+4>>2]=r<<3;Xi[pe+8>>2]=i;nA(ye,16,116592,pe);i=-1094995529;break}else if((ye|0)==83){ye=Xi[Fe>>2]|0;Xi[me>>2]=i;nA(ye,16,116740,me);i=-1094995529;break}else if((ye|0)==130)break}else i=0}while(0);Ue=Oe;return i|0}function dC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=Xi[e>>2]|0;t=e+8|0;r=Xi[t>>2]|0;l=Xi[e+16>>2]|0;i=n+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=n+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[t>>2]=r;f=i+1|0;do{if(f){a=n+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){n=r+f|0;Xi[t>>2]=l>>>0>n>>>0?n:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[t>>2]=f;e=i+-15|0;n=n+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[t>>2]=l>>>0>f>>>0?f:l;e=n|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function vC(e){e=e|0;e:do{switch(Xi[e+209068>>2]|0){case 0:switch(Xi[e+209072>>2]|0){case 0:{e=(Xi[e+209080>>2]|0)==2?117253:117269;break e}case 1:{e=(Xi[e+209080>>2]|0)==2?117285:117304;break e}case 2:{e=(Xi[e+209080>>2]|0)==2?117323:117342;break e}case 3:{e=(Xi[e+209080>>2]|0)==2?117361:117372;break e}case 4:{e=(Xi[e+209080>>2]|0)==2?117383:117394;break e}case 5:{e=(Xi[e+209080>>2]|0)==2?117405:117414;break e}default:{e=146863;break e}}case 1:{e=146863;break}default:e=0}}while(0);return e|0}function EC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;o=e+27844|0;a=((Xi[o>>2]|0)*6|0)+4|0;n=(a|0)>0;t=0;do{f=e+205756+(t<<2)|0;Xi[f>>2]=e+36796+(t*5632|0);e:do{if((t|0)>0){r=e+32032+(t<<4)|0;i=0;while(1){if(!(kR(e+32032+(i<<4)|0,r,16)|0))break;i=i+1|0;if((i|0)>=(t|0)){u=4;break e}}Xi[f>>2]=e+36796+(i*5632|0)}else u=4}while(0);if((u|0)==4?(u=0,n):0){f=0;do{i=(qi[117423+f>>0]|0)+2|0;r=qi[117511+f>>0]|0;l=0;do{s=l>>2;Xi[e+36796+(t*5632|0)+(f<<6)+((l<<2&12|s)<<2)>>2]=(Zi(qi[e+32032+(t<<4)+l>>0]|0,qi[(s&1)+(l&1)+(117599+(r*3|0))>>0]|0)|0)<<i;l=l+1|0}while((l|0)!=16);f=f+1|0}while((f|0)!=(a|0))}t=t+1|0}while((t|0)!=6);s=e+205780|0;Xi[s>>2]=0;Xi[s+4>>2]=0;Xi[s+8>>2]=0;Xi[s+12>>2]=0;Xi[s+16>>2]=0;Xi[s+20>>2]=0;s=e+32028|0;if(Xi[s>>2]|0){a=((Xi[o>>2]|0)*6|0)+4|0;n=(a|0)>0;t=0;do{f=e+205780+(t<<2)|0;Xi[f>>2]=e+70588+(t*22528|0);e:do{if((t|0)>0){r=e+32128+(t<<6)|0;i=0;while(1){if(!(kR(e+32128+(i<<6)|0,r,64)|0))break;i=i+1|0;if((i|0)>=(t|0)){u=16;break e}}Xi[f>>2]=e+70588+(i*22528|0)}else u=16}while(0);if((u|0)==16?(u=0,n):0){f=0;do{i=qi[117423+f>>0]|0;r=qi[117511+f>>0]|0;l=0;do{Xi[e+70588+(t*22528|0)+(f<<8)+((l<<3&56|l>>3)<<2)>>2]=(Zi(qi[e+32128+(t<<6)+l>>0]|0,qi[(qi[117617+(l>>>1&12|l&3)>>0]|0)+(117633+(r*6|0))>>0]|0)|0)<<i;l=l+1|0}while((l|0)!=64);f=f+1|0}while((f|0)!=(a|0))}t=t+1|0}while((t|0)!=6)}if(Xi[e+26676>>2]|0){i=0;do{u=Xi[e+205756+(i<<2)>>2]|0;Xi[u>>2]=64;Xi[u+4>>2]=64;Xi[u+8>>2]=64;Xi[u+12>>2]=64;Xi[u+16>>2]=64;Xi[u+20>>2]=64;Xi[u+24>>2]=64;Xi[u+28>>2]=64;Xi[u+32>>2]=64;Xi[u+36>>2]=64;Xi[u+40>>2]=64;Xi[u+44>>2]=64;Xi[u+48>>2]=64;Xi[u+52>>2]=64;Xi[u+56>>2]=64;Xi[u+60>>2]=64;i=i+1|0}while((i|0)!=6);if(Xi[s>>2]|0){r=0;do{i=Xi[e+205780+(r<<2)>>2]|0;f=0;do{Xi[i+(f<<2)>>2]=64;f=f+1|0}while((f|0)!=64);r=r+1|0}while((r|0)!=6)}}return}function SC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=Ue;Ue=Ue+48|0;f=h+40|0;s=h+32|0;t=h+24|0;n=h+16|0;a=h+8|0;l=h;o=e+4|0;r=Xi[o>>2]|0;i=e+26760|0;Xi[f>>2]=Xi[i>>2];Xi[f+4>>2]=Xi[i+4>>2];dO(r,f)|0;XM(Xi[(Xi[o>>2]|0)+144>>2]|0,e+25972|0,e+25976|0)|0;if(Xi[e+26792>>2]|0){f=KT(Xi[e+26800>>2]|0,0,(Xi[e+206420>>2]|0)>>>0<44|0)|0;r=Xi[o>>2]|0;rg(r+884|0,r+880|0,Zi(Xi[r+116>>2]|0,Xi[e+26796>>2]|0)|0,0,f,Ie,1073741824,0)|0}KN(e);Xi[e+205816>>2]=0;Xi[e+208992>>2]=1;i=0;do{f=qi[117669+i>>0]|0;Wi[e+205844+i>>0]=f<<2&12|f>>>2;f=qi[117686+i>>0]|0;Wi[e+205988+i>>0]=f<<2&12|f>>>2;i=i+1|0}while((i|0)!=16);i=0;do{f=qi[131425+i>>0]|0;Wi[e+205860+i>>0]=f<<3&56|f>>>3;f=qi[117703+i>>0]|0;Wi[e+205924+i>>0]=f<<3&56|f>>>3;f=qi[117768+i>>0]|0;Wi[e+206004+i>>0]=f<<3&56|f>>>3;f=qi[117833+i>>0]|0;Wi[e+206068+i>>0]=f<<3&56|f>>>3;i=i+1|0}while((i|0)!=64);i=e+206132|0;if(!(Xi[e+26676>>2]|0)){r=e+205844|0;f=i+16|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206148|0;r=e+205860|0;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206212|0;r=e+205924|0;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206276|0;r=e+205988|0;f=i+16|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206292|0;r=e+206004|0;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206356|0;r=e+206068|0;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0))}else{r=117669;f=i+16|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206148|0;r=131425;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206212|0;r=117703;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206276|0;r=117686;f=i+16|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206292|0;r=117768;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0));i=e+206356|0;r=117833;f=i+64|0;do{Wi[i>>0]=Wi[r>>0]|0;i=i+1|0;r=r+1|0}while((i|0)<(f|0))}i=eD(e)|0;f=Xi[o>>2]|0;e:do{if((i|0)<0){nA(f,16,117898,l);u=24}else{l=Xi[f+12>>2]|0;do{if(l|0?Xi[l+16>>2]&128|0:0){if((Xi[e+27844>>2]|0)==8?(Xi[e+26672>>2]|0)<=1:0)break;nA(f,16,117925,a);i=-1094995529;u=24;break e}}while(0);i=e+27844|0;r=Xi[i>>2]|0;i:do{if((r+-8|0)>>>0<=6){switch(r|0){case 11:case 13:break i;default:{}}Xi[f+788>>2]=r;Xi[e+209244>>2]=r;n=e+26672|0;a=Xi[n>>2]|0;Xi[e+209240>>2]=a;Xi[e+25960>>2]=(r|0)>8&1;Xi[e+206464>>2]=a;Xi[e+206460>>2]=r;XC(e+16|0,r,a);NC(e+152|0,Xi[e+27848>>2]|0);Vl(e+184|0,Xi[i>>2]|0);vH(e+26020|0,Xi[(Xi[o>>2]|0)+48>>2]|0,Xi[i>>2]|0,Xi[n>>2]|0);QO(e+8|0,Xi[i>>2]|0);i=Xi[e+206428>>2]|0;if((i|0)>-1)i=1;else{n=Xi[o>>2]|0;Xi[t>>2]=1;Xi[t+4>>2]=i;nA(n,24,118002,t)}Xi[e+208976>>2]=i;t=e+208972|0;n=Xi[t>>2]|0;Xi[t>>2]=(n|0)>(i|0)?i:n;i=iD(e,Xi[e+25952>>2]|0)|0;if((i|0)<0){nA(Xi[o>>2]|0,16,118046,s);u=24;break e}else{Xi[e+26004>>2]=1;i=0;break e}}}while(0);Xi[n>>2]=r;nA(f,16,117976,n);i=-1094995529;u=24}}while(0);if((u|0)==24){KN(e);Xi[e+26004>>2]=0}Ue=h;return i|0}function _C(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0;pe=Ue;Ue=Ue+592|0;me=pe+440|0;be=pe+432|0;we=pe+424|0;he=pe+416|0;se=pe+408|0;ne=pe+400|0;fe=pe+392|0;ie=pe+384|0;ee=pe+376|0;q=pe+368|0;G=pe+352|0;W=pe+336|0;K=pe+328|0;V=pe+320|0;Y=pe+312|0;z=pe+296|0;x=pe+280|0;U=pe+272|0;B=pe+264|0;H=pe+256|0;P=pe+248|0;D=pe+240|0;T=pe+232|0;R=pe+224|0;M=pe+208|0;g=pe+184|0;A=pe+176|0;O=pe+168|0;y=pe+152|0;F=pe+136|0;_=pe+128|0;S=pe+120|0;v=pe+112|0;d=pe+104|0;c=pe+96|0;b=pe+88|0;k=pe+80|0;w=pe+72|0;h=pe+64|0;s=pe+56|0;n=pe+40|0;a=pe+32|0;l=pe+24|0;f=pe+16|0;r=pe;Se=pe+520|0;ue=e+25952|0;if((Xi[ue>>2]|0)==(i|0)?(Xi[e+208968>>2]|0)==0:0)if(!(Xi[e+209104>>2]|0))C=1;else{Xi[r>>2]=118070;Xi[r+4>>2]=118089;Xi[r+8>>2]=1166;nA(0,0,150445,r);$e()}else C=0;Xi[e+209348>>2]=e+184;Xi[e+209352>>2]=e+440;re=i+4|0;_e=mC(re)|0;ke=e+208968|0;e:do{if(!_e){do{if(Xi[ke>>2]|0){if(Xi[e+209104>>2]|0){nA(Xi[e+4>>2]|0,16,118113,f);r=-1094995529;break e}f=e+208972|0;if((Xi[f>>2]|0)>1){r=e+208980|0;if(!(Xi[r>>2]|0)){nA(Xi[e+4>>2]|0,24,118130,l);Xi[r>>2]=1}Xi[f>>2]=1;r=1;break e}f=e+24620|0;if(!(Xi[f>>2]|0)){r=-1094995529;break e}l=e+205816|0;r=(Xi[l>>2]|0)==0;if((Xi[e+205812>>2]|0)!=3){if(r){r=-1094995529;break e}r=KD(e,Xi[ue>>2]|0,1)|0;Xi[ke>>2]=0;if((r|0)<0)break e;else{r=l;break}}if(!r){r=-1094995529;break e}if((Xi[e+206448>>2]|0)!=5){r=-1094995529;break e}nA(e,24,118184,a);r=KD(e,Xi[ue>>2]|0,1)|0;Xi[ke>>2]=0;VO((Xi[f>>2]|0)+4|0,2147483647,0);VO((Xi[f>>2]|0)+4|0,2147483647,1);Xi[f>>2]=0;if((r|0)<0)break e;else r=l}else r=e+205816|0}while(0);if(!(Xi[r>>2]|0)){r=e+24620|0;f=Xi[r>>2]|0;if(f|0?(Xi[e+25992>>2]|0)==0:0)VO(f+4|0,2147483647,(Xi[e+205812>>2]|0)==2&1);Xi[r>>2]=0;Z=26}else Z=26}else Z=26}while(0);e:do{if((Z|0)==26){if((Xi[ke>>2]|0)==0?(Xi[ue>>2]|0)!=(i|0):0){Xi[n>>2]=118210;Xi[n+4>>2]=118089;Xi[n+8>>2]=1216;nA(0,0,150445,n);$e()}ae=i+12|0;t=Xi[ae>>2]|0;$=i+20|0;o=Xi[$>>2]|0;n=Xi[re>>2]|0;r=n+(t>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(t&7)>>>23;t=(qi[98538+r>>0]|0)+t|0;t=o>>>0>t>>>0?t:o;Xi[ae>>2]=t;r=Wi[99050+r>>0]|0;f=r&255;if((r&255)>9){r=Xi[e+4>>2]|0;Xi[s>>2]=f;Xi[s+4>>2]=_e;nA(r,16,118229,s);r=-1094995529;break}a=(r&255)>4;N=a?f+-5|0:f;de=i+820|0;Xi[de>>2]=a&1;a=qi[118260+N>>0]|0;Ee=i+812|0;Xi[Ee>>2]=a;r=a&3;Q=i+816|0;Xi[Q>>2]=r;ve=e+206448|0;f=Xi[ve>>2]|0;l=(r|0)==1;if(!((f|0)!=5|l)){nA(Xi[e+4>>2]|0,16,118265,h);r=-1094995529;break}do{if(((Xi[ke>>2]|0)==0?(Xi[e+205816>>2]|0)==0:0)?(u=Xi[(Xi[e+4>>2]|0)+844>>2]|0,(u|0)>7):0){if(!(Xi[e+206444>>2]|0)){r=2;break e}if((u|0)>15){if((r|0)==3){r=2;break e}if((u|0)>23){if(!l){r=2;break e}if((u|0)>31)if((f|0)==5)if((u|0)>47){r=2;break e}else break;else if((Xi[e+209056>>2]|0)<0|(u|0)>47){r=2;break e}else break}}}}while(0);J=e+209104|0;l=(Xi[J>>2]|0)==0;if(l)Xi[e+208984>>2]=a;r=n+(t>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(t&7);do{if(r>>>0>134217727){ce=r>>>23;oe=(qi[98538+ce>>0]|0)+t|0;Xi[ae>>2]=o>>>0>oe>>>0?oe:o;ce=qi[99050+ce>>0]|0}else{ce=r>>>0>65535;oe=ce?r>>>16:r;ce=ce?16:0;f=(oe&65280|0)==0;ce=(qi[145894+(f?oe:oe>>>8)>>0]|0)+(f?ce:ce|8)<<1;f=ce+-31|0;ce=63-ce+t|0;Xi[ae>>2]=o>>>0>ce>>>0?ce:o;if((f|0)>=7){r=(r>>>f)+-1|0;if(r>>>0<=255){ce=r;break}}else{nA(0,16,118304,w);r=-1094995529}me=Xi[e+4>>2]|0;Xi[k>>2]=r;nA(me,16,118328,k);r=-1094995529;break e}}while(0);f=Xi[e+206596+(ce<<2)>>2]|0;if(!f){r=Xi[e+4>>2]|0;Xi[b>>2]=ce;nA(r,16,118352,b);r=-1094995529;break}oe=e+36792|0;r=Xi[oe>>2]|0;if(!((r|0)<0|(ce|0)==(r|0))){me=Xi[e+4>>2]|0;Xi[c>>2]=r;Xi[c+4>>2]=ce;nA(me,16,118384,c);r=-1094995529;break}r=Xi[f>>2]|0;if(!(Xi[e+206468+(r<<2)>>2]|0)){r=Xi[e+4>>2]|0;Xi[d>>2]=Xi[e+31964>>2];nA(r,16,118420,d);r=-1094995529;break}te=e+31964|0;do{if(C){qT(te|0,f|0,4828)|0;r=Xi[f>>2]|0}else{if((Xi[te>>2]|0)==(r|0)?(Xi[e+32028>>2]|0)==(Xi[f+64>>2]|0):0){if(l)break;if((Xi[e+207620>>2]|0)==(ce|0))break}nA(Xi[e+4>>2]|0,16,118452,v);r=-1094995529;break e}}while(0);w=e+26660|0;if(((r|0)==(Xi[w>>2]|0)?(r|0)==(Xi[e+26656>>2]|0):0)?(Xi[(Xi[e+206468+(r<<2)>>2]|0)+1200>>2]|0)==0:0)f=0;else{if(!C){nA(Xi[e+4>>2]|0,16,118480,S);r=-1094995529;break}qT(w|0,Xi[e+206468+(Xi[te>>2]<<2)>>2]|0,5304)|0;if((((Xi[e+206432>>2]|0)==(Xi[e+26716>>2]|0)?(Xi[e+206428>>2]|0)==(Zi(2-(Xi[e+26724>>2]|0)|0,Xi[e+26720>>2]|0)|0):0)?(E=Xi[e+209244>>2]|0,(E|0)==(Xi[e+27844>>2]|0)):0)?(Xi[e+209240>>2]|0)==(Xi[e+26672>>2]|0):0){r=E;f=0}else{r=Xi[e+27844>>2]|0;f=1}if(!((Xi[e+206460>>2]|0)==(r|0)?(Xi[e+206464>>2]|0)==(Xi[e+26672>>2]|0):0))f=1;do{if(!(Xi[e+26008>>2]&524288)){if(!(Xi[e+27320>>2]|0))break;if(!(Xi[e+27324>>2]|0))Z=82}else Z=82}while(0);i:do{if((Z|0)==82){r=Xi[e+4>>2]|0;do{if((Xi[r+180>>2]|0)<=1){if(Xi[e+208016>>2]|0)break;Xi[e+26e3>>2]=1;break i}}while(0);nA(r,24,118520,_)}}while(0);r=(Xi[e+4>>2]|0)+180|0;if((Xi[r>>2]|0)<2)Xi[r>>2]=(Xi[e+26e3>>2]|0)==0&1}k=e+26004|0;do{if(Xi[k>>2]|0){r=Xi[e+26716>>2]|0;l=e+4|0;a=Xi[l>>2]|0;if((((r<<4|0)==(Xi[a+132>>2]|0)?(m=Xi[e+26720>>2]|0,p=2-(Xi[e+26724>>2]|0)|0,le=Zi(m<<4,p)|0,(le|0)==(Xi[a+136>>2]|0)):0)?(Xi[e+209244>>2]|0)==(Xi[e+27844>>2]|0):0)?(Xi[e+209240>>2]|0)==(Xi[e+26672>>2]|0):0){if((Xi[e+206432>>2]|0)!=(r|0)){le=l;r=a;l=1;break}le=l;r=a;l=(Xi[e+206428>>2]|0)!=(Zi(p,m)|0)}else{le=l;r=a;l=1}}else{r=e+4|0;le=r;r=Xi[r>>2]|0;l=0}}while(0);r=Xi[r+144>>2]|0;if((r|0)!=-1){a=l&1;switch(r|0){case 12:{l=0;break}case 13:{l=4;break}case 14:{l=5;break}default:l=r}r=pC(e,0)|0;switch(r|0){case 12:{r=0;break}case 13:{r=4;break}case 14:{r=5;break}default:{}}if((l|0)!=(r|0))Z=106}else Z=106;if((Z|0)==106)a=1;if(C){l=Xi[le>>2]|0;r=l+228|0;r=qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24;l=l+232|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;n=e+26760|0;n=qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24;t=e+26764|0;t=qi[t>>0]|qi[t+1>>0]<<8|qi[t+2>>0]<<16|qi[t+3>>0]<<24;o=rN(n|0,((n|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0;s=Ie;u=rN(t|0,((t|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;h=Ie;do{if((o|0)==(u|0)&(s|0)==(h|0)){if(!((l|0)==0|(t|0)==0)){r=0;break}if((r|0)==0|(n|0)==0){r=-2147483648;break}r=(n>>31)-(r>>31)|0}else{X=YT(o|0,s|0,u|0,h|0)|0;r=t^l;r=GT(X^r|0,Ie^((r|0)<0)<<31>>31|0,63)|0;r=r|1}}while(0);h=(r|0)==0?a:1}else h=a;do{if(!(Xi[J>>2]|0)){n=aD(w)|0;t=Xi[le>>2]|0;Xi[t+828>>2]=n;Xi[t+832>>2]=Xi[e+26668>>2];Xi[t+368>>2]=Xi[e+26708>>2];n=Xi[e+26716>>2]|0;Xi[e+206432>>2]=n;a=Zi(2-(Xi[e+26724>>2]|0)|0,Xi[e+26720>>2]|0)|0;Xi[e+206428>>2]=a;Xi[e+206440>>2]=Zi(a,n)|0;Xi[e+206436>>2]=n+1;Xi[e+26652>>2]=n<<2;Xi[e+25976>>2]=(Xi[e+26672>>2]|0)<2&1;n=n<<4;s=e+25964|0;Xi[s>>2]=n;a=a<<4;u=e+25968|0;Xi[u>>2]=a;X=(Xi[e+26740>>2]|0)+(Xi[e+26744>>2]|0)|0;r=n-X|0;o=(Xi[e+26752>>2]|0)+(Xi[e+26748>>2]|0)|0;l=a-o|0;if(n>>>0<=X>>>0){Xi[F>>2]=118587;Xi[F+4>>2]=118089;Xi[F+8>>2]=983;nA(0,0,150445,F);$e()}if(a>>>0<=o>>>0){Xi[y>>2]=118645;Xi[y+4>>2]=118089;Xi[y+8>>2]=984;nA(0,0,150445,y);$e()}o=Xi[t+124>>2]|0;if((o+15^r+15)>>>0<16){j=Xi[t+128>>2]|0;X=(j|0)>(l|0)|((o|0)>(r|0)|(j+15^l+15)>>>0>15);l=X?l:j;r=X?r:o}if((r|0)<1|(l|0)<1){Xi[O>>2]=r;Xi[O+4>>2]=l;nA(t,16,118704,O);r=Xi[le>>2]|0;if(Xi[r+688>>2]&8|0){r=-1094995529;break e}nA(r,24,118740,A);r=e+26736|0;Xi[r>>2]=0;Xi[r+4>>2]=0;Xi[r+8>>2]=0;Xi[r+12>>2]=0;Xi[r+16>>2]=0;r=Xi[s>>2]|0;l=Xi[u>>2]|0;t=Xi[le>>2]|0;n=r;a=l}Xi[t+132>>2]=n;Xi[t+136>>2]=a;Xi[t+124>>2]=r;Xi[t+128>>2]=l;if(!(Xi[e+26768>>2]|0))break;Xi[t+400>>2]=(Xi[e+26772>>2]|0)>0?2:1;if(!(Xi[e+26776>>2]|0))break;X=t+396|0;j=Xi[e+26788>>2]|0;f=(Xi[X>>2]|0)==(j|0)?f:1;Xi[t+388>>2]=Xi[e+26780>>2];Xi[t+392>>2]=Xi[e+26784>>2];Xi[X>>2]=j}}while(0);r=Xi[k>>2]|0;do{if(!((r|0)==0|(f|h|0)==0)){Xi[k>>2]=0;if((Xi[ue>>2]|0)!=(i|0)){r=Xi[le>>2]|0;Se=Xi[r+132>>2]|0;_e=Xi[e+25968>>2]|0;i=Xi[r+136>>2]|0;me=(Xi[ke>>2]|0)+1|0;Xi[g>>2]=Xi[e+25964>>2];Xi[g+4>>2]=Se;Xi[g+8>>2]=_e;Xi[g+12>>2]=i;Xi[g+16>>2]=me;nA(r,16,118772,g);r=-1094995529;break e}WN(e);r=pC(e,1)|0;if((r|0)<0)break e;X=Xi[le>>2]|0;Xi[X+144>>2]=r;I=Xi[e+25964>>2]|0;j=Xi[e+25968>>2]|0;r=zM(r)|0;Xi[M>>2]=I;Xi[M+4>>2]=j;Xi[M+8>>2]=r;nA(X,32,118827,M);r=SC(e)|0;if((r|0)<0){nA(Xi[le>>2]|0,16,118865,R);break e}else{r=Xi[k>>2]|0;break}}}while(0);do{if(!r){if((Xi[ue>>2]|0)!=(i|0)){nA(Xi[le>>2]|0,16,118898,T);r=-1163346256;break e}r=pC(e,1)|0;if((r|0)<0)break e;Xi[(Xi[le>>2]|0)+144>>2]=r;r=SC(e)|0;if((r|0)>=0)break;nA(Xi[le>>2]|0,16,118865,D);break e}}while(0);do{if(!(Xi[ke>>2]|0)){r=e+207620|0;if((Xi[r>>2]|0)==(ce|0))break;Xi[r>>2]=ce;EC(e)}}while(0);L=e+26680|0;u=Xi[L>>2]|0;l=Xi[ae>>2]|0;a=Xi[$>>2]|0;n=Xi[re>>2]|0;f=n+(l>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(l&7)>>>(32-u|0);l=l+u|0;l=a>>>0>l>>>0?l:a;Xi[ae>>2]=l;do{if(!C){r=Xi[e+207648>>2]|0;if((r|0)==(f|0))break;me=Xi[le>>2]|0;Xi[P>>2]=r;Xi[P+4>>2]=f;nA(me,16,118956,P);r=-1094995529;break e}}while(0);s=(Xi[J>>2]|0)==0;if(s)Xi[e+207648>>2]=f;Xi[i+21800>>2]=0;I=e+205808|0;t=Xi[I>>2]|0;X=e+205812|0;P=Xi[X>>2]|0;h=e+25992|0;w=Xi[h>>2]|0;j=e+206444|0;o=(Xi[j>>2]|0)==0&1;do{if(!(Xi[e+26724>>2]|0)){if((N|0)==1&(Xi[e+26732>>2]|0)==0){nA(Xi[le>>2]|0,16,118988,H);r=-1;break e}H=qi[n+(l>>>3)>>0]|0;r=((l|0)<(a|0)&1)+l|0;Xi[ae>>2]=r;if(!(H&128>>>(l&7))){f=Xi[e+26728>>2]|0;a=3;break}else{H=qi[n+(r>>>3)>>0]<<(r&7)>>>7&1;Xi[ae>>2]=((r|0)<(a|0)&1)+r;f=0;a=H+1|0;break}}else{f=0;a=3}}while(0);r=Xi[ke>>2]|0;l=(r|0)==0;do{if(!l){if(!((w|0)==(o|0)&(P|0)==(a|0)&(t|0)==(f|0))){r=Xi[le>>2]|0;Xi[B>>2]=P;Xi[B+4>>2]=P;nA(r,16,119058,B);r=-1094995529;break e}if(Xi[e+24620>>2]|0)break;me=Xi[le>>2]|0;Xi[U>>2]=r+1;nA(me,16,119120,U);r=-1094995529;break e}}while(0);if(s){Xi[h>>2]=o;Xi[X>>2]=a;Xi[I>>2]=f;f=a}else f=P;Xi[i+21796>>2]=(a|0)!=3&1;do{if(l){N=e+207648|0;a=Xi[N>>2]|0;D=e+207668|0;n=Xi[D>>2]|0;do{if((a|0)!=(n|0)){r=1<<u;l=Xi[e+26708>>2]|0;if((a-n+((a|0)<(n|0)?r:0)|0)<=(l|0))break;Z=a-l|0;Xi[D>>2]=Z+-1+((Z|0)<1?r:0)}}while(0);C=e+205816|0;do{if(Xi[C>>2]|0){l=e+24620|0;r=Xi[l>>2]|0;if(!r){Xi[x>>2]=119151;Xi[x+4>>2]=118089;Xi[x+8>>2]=1519;nA(0,0,150445,x);$e()}if(!(Xi[(Xi[r>>2]|0)+248>>2]|0)){Xi[z>>2]=119166;Xi[z+4>>2]=118089;Xi[z+8>>2]=1520;nA(0,0,150445,z);$e()}if((Xi[r+8>>2]|0)==(Xi[le>>2]|0)){VO(r+4|0,2147483647,(P|0)==2&1);f=Xi[X>>2]|0}if((f|0)==3|(f|0)==(P|0)){if((P|0)==3)break;VO((Xi[l>>2]|0)+4|0,2147483647,(P|0)==1&1);break}r=Xi[l>>2]|0;if((Xi[r+84>>2]|0)!=(Xi[N>>2]|0)){if((P|0)==3)break;VO(r+4|0,2147483647,(P|0)==1&1);break}do{if(!((P|0)==1&(f|0)==2)){if((P|0)==2&(f|0)==1)break;r=Xi[le>>2]|0;Xi[Y>>2]=P;Xi[Y+4>>2]=f;nA(r,16,119192,Y);Xi[X>>2]=P;Xi[h>>2]=w;r=-1094995529;break e}}while(0);if((w|0)==(Xi[h>>2]|0))break;bM(Xi[le>>2]|0,119230,V);Xi[X>>2]=P;Xi[h>>2]=w;r=-1163346256;break e}}while(0);r=Xi[N>>2]|0;f=Xi[D>>2]|0;i:do{if((r|0)==(f|0))Z=206;else{u=e+208964|0;h=e+26712|0;n=e+24620|0;w=e+208160|0;k=e+208952|0;b=e+207760|0;c=e+208088|0;d=e+208092|0;v=e+208096|0;E=e+208100|0;S=e+208104|0;_=e+208108|0;m=e+208112|0;p=e+208116|0;F=e+208120|0;y=e+208124|0;O=e+208128|0;A=e+208132|0;g=e+208136|0;M=e+208140|0;R=e+208144|0;T=e+208148|0;while(1){if(Xi[C>>2]|0){a=r;Z=208;break i}if((r|0)==((f+1|0)%(1<<Xi[L>>2]|0)|0|0)){Z=206;break i}if(!(Xi[u>>2]|0))s=0;else s=Xi[b>>2]|0;Z=Xi[le>>2]|0;Xi[K>>2]=r;Xi[K+4>>2]=f;nA(Z,48,119296,K);if(!(Xi[h>>2]|0)){Xi[c>>2]=-2147483648;Xi[d>>2]=-2147483648;Xi[v>>2]=-2147483648;Xi[E>>2]=-2147483648;Xi[S>>2]=-2147483648;Xi[_>>2]=-2147483648;Xi[m>>2]=-2147483648;Xi[p>>2]=-2147483648;Xi[F>>2]=-2147483648;Xi[y>>2]=-2147483648;Xi[O>>2]=-2147483648;Xi[A>>2]=-2147483648;Xi[g>>2]=-2147483648;Xi[M>>2]=-2147483648;Xi[R>>2]=-2147483648;Xi[T>>2]=-2147483648}r=FC(e)|0;if((r|0)<0)break;Z=((Xi[D>>2]|0)+1|0)%(1<<Xi[L>>2]|0)|0;Xi[D>>2]=Z;r=Xi[n>>2]|0;Xi[r+84>>2]=Z;Xi[r+644>>2]=(Xi[h>>2]|0)==0&1;VO(r+4|0,2147483647,0);VO((Xi[n>>2]|0)+4|0,2147483647,1);r=oC(e,1)|0;if((r|0)<0?Xi[(Xi[le>>2]|0)+688>>2]&8|0:0)break e;r=uC(e,w,Xi[k>>2]|0)|0;if((r|0)<0?Xi[(Xi[le>>2]|0)+688>>2]&8|0:0)break e;if(!(Xi[u>>2]|0))f=Xi[D>>2]|0;else{r=Xi[b>>2]|0;do{if(s){f=Xi[r>>2]|0;l=Xi[f+68>>2]|0;a=Xi[s>>2]|0;if((l|0)!=(Xi[a+68>>2]|0))break;t=Xi[f+72>>2]|0;if((t|0)!=(Xi[a+72>>2]|0))break;o=Xi[f+80>>2]|0;if((o|0)!=(Xi[a+80>>2]|0))break;$g(f,f+32|0,a,a+32|0,o,l,t);r=Xi[b>>2]|0;Xi[r+80>>2]=(Xi[s+80>>2]|0)+2}}while(0);f=Xi[D>>2]|0;Xi[r+84>>2]=f}r=Xi[N>>2]|0;if((r|0)==(f|0)){r=f;Z=206;break i}}Xi[C>>2]=0;break e}}while(0);do{if((Z|0)==206)if(!(Xi[C>>2]|0)){r=Xi[X>>2]|0;f=(r|0)!=3&1;Xi[C>>2]=f;break}else{n=e+24620|0;a=r;Z=208;break}}while(0);do{if((Z|0)==208){l=Xi[n>>2]|0;if(!l){Xi[W>>2]=119151;Xi[W+4>>2]=118089;Xi[W+8>>2]=1625;nA(0,0,150445,W);$e()}if(!(Xi[(Xi[l>>2]|0)+248>>2]|0)){Xi[G>>2]=119166;Xi[G+4>>2]=118089;Xi[G+8>>2]=1626;nA(0,0,150445,G);$e()}r=Xi[X>>2]|0;f=e+209100|0;if((r|0)==3|(r|0)==(P|0)){Xi[f>>2]=(Xi[f>>2]|0)+1;Xi[n>>2]=0;f=(r|0)!=3&1;Xi[C>>2]=f;break}Xi[f>>2]=0;if((Xi[l+84>>2]|0)==(a|0)){Xi[C>>2]=0;f=0;break}else{VO(l+4|0,2147483647,(r|0)==2&1);Xi[C>>2]=1;Xi[n>>2]=0;r=Xi[X>>2]|0;f=1;break}}}while(0);do{if((r|0)!=3&(f|0)==0)yC(e,0);else{if((FC(e)|0)>=0)break;Xi[C>>2]=0;r=-1094995529;break e}}while(0);r=Xi[X>>2]|0;if((r|0)==3){jT(Xi[e+205804>>2]|0,-1,(Zi(Xi[e+206428>>2]<<1,Xi[e+206436>>2]|0)|0)+-2|0)|0;break}f=(r|0)==2&1;l=e+206428|0;r=Xi[l>>2]|0;if(f>>>0>=r>>>0)break;a=e+205804|0;n=e+206436|0;do{G=Xi[n>>2]|0;W=f;f=f+1|0;jT((Xi[a>>2]|0)+((Zi(G,W)|0)<<1)|0,-1,G-((f|0)==(r|0)&1)<<1|0)|0;r=Xi[l>>2]|0}while(f>>>0<r>>>0)}}while(0);f=(Xi[I>>2]|0)==0;if(f)r=(Xi[X>>2]|0)!=3;else r=1;G=Xi[e+206440>>2]|0;if(!(_e>>>0<G>>>0&_e<<(r&1)>>>0<G>>>0)){nA(Xi[le>>2]|0,16,119437,q);r=-1094995529;break}r=Xi[e+206432>>2]|0;l=(_e>>>0)%(r>>>0)|0;Xi[i+21764>>2]=l;Xi[i+21776>>2]=l;l=Xi[X>>2]|0;r=((_e>>>0)/(r>>>0)|0)<<(((l|0)!=3|f^1)&1);f=i+21768|0;Xi[f>>2]=r;h=i+21780|0;Xi[h>>2]=r;do{if((l|0)==2){r=r+1|0;Xi[f>>2]=r;Xi[h>>2]=r;r=e+207648|0;f=r;r=Xi[r>>2]|0;Z=235}else{f=e+207648|0;r=Xi[f>>2]|0;if((l|0)!=3){Z=235;break}l=Xi[L>>2]|0;y=f}}while(0);if((Z|0)==235){l=(Xi[L>>2]|0)+1|0;r=r<<1|1;y=f}Xi[e+207672>>2]=r;Xi[e+207676>>2]=1<<l;if((Xi[ve>>2]|0)==5)mC(re)|0;o=Xi[e+26684>>2]|0;switch(o|0){case 0:{r=Xi[e+26688>>2]|0;f=Xi[ae>>2]|0;n=Xi[$>>2]|0;t=Xi[re>>2]|0;l=t+(f>>>3)|0;l=qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24;a=f+r|0;a=n>>>0>a>>>0?a:n;Xi[ae>>2]=a;s=(Xi[J>>2]|0)==0;if(s)Xi[e+207628>>2]=(ZT(l|0)|0)<<(f&7)>>>(32-r|0);do{if((Xi[e+31972>>2]|0)==1){if((Xi[X>>2]|0)!=3)break;r=t+(a>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(a&7);if(r>>>0>134217727){r=r>>>23;Z=(qi[98538+r>>0]|0)+a|0;Xi[ae>>2]=n>>>0>Z>>>0?Z:n;r=Wi[99562+r>>0]|0}else{q=r>>>0>65535;Z=q?r>>>16:r;r=q?16:0;q=(Z&65280|0)==0;r=(qi[145894+(q?Z:Z>>>8)>>0]|0)+(q?r:r|8)|0;q=31-r+a|0;q=n>>>0>q>>>0?q:n;Z=t+(q>>>3)|0;Z=(ZT(qi[Z>>0]|qi[Z+1>>0]<<8|qi[Z+2>>0]<<16|qi[Z+3>>0]<<24|0)|0)<<(q&7)>>>r;r=q+(32-r)|0;Xi[ae>>2]=n>>>0>r>>>0?r:n;r=Z&1;r=(Z>>>1^0-r)+r|0}if(!s)break;Xi[e+207636>>2]=r}}while(0);if((o|0)==1)Z=249;else Z=262;break}case 1:{Z=249;break}default:Z=262}do{if((Z|0)==249){if(Xi[e+26692>>2]|0){Z=262;break}r=Xi[ae>>2]|0;f=Xi[$>>2]|0;n=Xi[re>>2]|0;l=n+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);if(l>>>0>134217727){q=l>>>23;r=(qi[98538+q>>0]|0)+r|0;Xi[ae>>2]=f>>>0>r>>>0?r:f;r=Wi[99562+q>>0]|0}else{G=l>>>0>65535;W=G?l>>>16:l;G=G?16:0;q=(W&65280|0)==0;G=(qi[145894+(q?W:W>>>8)>>0]|0)+(q?G:G|8)|0;r=31-G+r|0;r=f>>>0>r>>>0?r:f;q=n+(r>>>3)|0;q=(ZT(qi[q>>0]|qi[q+1>>0]<<8|qi[q+2>>0]<<16|qi[q+3>>0]<<24|0)|0)<<(r&7)>>>G;r=r+(32-G)|0;Xi[ae>>2]=f>>>0>r>>>0?r:f;r=q&1;r=(q>>>1^0-r)+r|0}a=(Xi[J>>2]|0)==0;if(a)Xi[e+207640>>2]=r;if((Xi[e+31972>>2]|0)!=1){Z=262;break}if((Xi[X>>2]|0)!=3){Z=262;break}f=Xi[ae>>2]|0;l=Xi[$>>2]|0;r=n+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;q=(qi[98538+r>>0]|0)+f|0;Xi[ae>>2]=l>>>0>q>>>0?q:l;r=Wi[99562+r>>0]|0}else{G=r>>>0>65535;q=G?r>>>16:r;r=G?16:0;G=(q&65280|0)==0;r=(qi[145894+(G?q:q>>>8)>>0]|0)+(G?r:r|8)|0;G=31-r+f|0;G=l>>>0>G>>>0?G:l;q=n+(G>>>3)|0;q=(ZT(qi[q>>0]|qi[q+1>>0]<<8|qi[q+2>>0]<<16|qi[q+3>>0]<<24|0)|0)<<(G&7)>>>r;r=G+(32-r)|0;Xi[ae>>2]=l>>>0>r>>>0?r:l;r=q&1;r=(q>>>1^0-r)+r|0}if(!a)break;Xi[e+207644>>2]=r;Z=262}}while(0);do{if((Z|0)==262){if(Xi[J>>2]|0)break;Z=Xi[e+24620>>2]|0;lD(e,Z+72|0,Z+80|0)|0}}while(0);if(Xi[e+32024>>2]|0){r=Xi[ae>>2]|0;f=Xi[$>>2]|0;l=(Xi[re>>2]|0)+(r>>>3)|0;l=(ZT(qi[l>>0]|qi[l+1>>0]<<8|qi[l+2>>0]<<16|qi[l+3>>0]<<24|0)|0)<<(r&7);do{if(l>>>0<=134217727){Z=l>>>0>65535;J=Z?l>>>16:l;Z=Z?16:0;a=(J&65280|0)==0;Z=(qi[145894+(a?J:J>>>8)>>0]|0)+(a?Z:Z|8)<<1;a=Z+-31|0;Z=63-Z+r|0;Xi[ae>>2]=f>>>0>Z>>>0?Z:f;if((a|0)<7){nA(0,16,118304,ee);r=-1094995529;break}else{r=(l>>>a)+-1|0;break}}else{ee=l>>>23;r=(qi[98538+ee>>0]|0)+r|0;Xi[ae>>2]=f>>>0>r>>>0?r:f;r=qi[99050+ee>>0]|0}}while(0);Xi[i+21804>>2]=r}r=nD(e,i)|0;if((r|0)<0)break;do{if((Xi[Q>>2]|0)!=1){r=ZD(e,i)|0;if((r|0)>=0)break;Xi[i+23372>>2]=0;Xi[i+23376>>2]=0;break e}}while(0);if((Xi[e+31992>>2]|0)!=0?(Xi[Q>>2]|0)==2:0)Z=279;else Z=277;i:do{if((Z|0)==277){r:do{switch(Xi[e+31996>>2]|0){case 1:{if((Xi[Q>>2]|0)==3){Z=279;break i}break}case 2:{if((Xi[Q>>2]|0)!=3)break r;OC(e,i,-1);break i}default:{}}}while(0);Xi[i+856>>2]=0;ee=i+872|0;Xi[ee>>2]=0;Xi[ee+4>>2]=0;Xi[ee+8>>2]=0;Xi[ee+12>>2]=0}}while(0);if((Z|0)==279)fD(e,i)|0;do{if(Xi[j>>2]|0){if(!(Xi[(Xi[le>>2]|0)+808>>2]&1))r=1;else r=(Xi[ke>>2]|0)==0;if((kC(e,re,r&1)|0)>=0)break;if(Xi[(Xi[le>>2]|0)+688>>2]&8|0){r=-1094995529;break e}}}while(0);do{if(!(Xi[I>>2]|0))Z=292;else{aC(e,i);if((Xi[e+31996>>2]|0)!=2){Z=292;break}if((Xi[Q>>2]|0)!=3)break;OC(e,i,0);OC(e,i,1);Z=292}}while(0);do{if((Z|0)==292){if((Xi[Q>>2]|0)!=3)break;if(Xi[i+21812>>2]|0)break;MD(e,i)}}while(0);TD(e,i);s=Xi[Q>>2]|0;u=(s|0)==1;do{if(!u){if(!(Xi[e+31968>>2]|0))break;Q=Xi[ae>>2]|0;r=Xi[$>>2]|0;ee=(Xi[re>>2]|0)+(Q>>>3)|0;ee=(ZT(qi[ee>>0]|qi[ee+1>>0]<<8|qi[ee+2>>0]<<16|qi[ee+3>>0]<<24|0)|0)<<(Q&7)>>>23;Q=(qi[98538+ee>>0]|0)+Q|0;Xi[ae>>2]=r>>>0>Q>>>0?Q:r;ee=Wi[99050+ee>>0]|0;r=ee&255;if((ee&255)>2){me=Xi[le>>2]|0;Xi[ie>>2]=r;nA(me,16,119465,ie);r=-1094995529;break e}else{Xi[i+49752>>2]=r;break}}}while(0);Xi[i+840>>2]=0;l=Xi[e+32e3>>2]|0;f=Xi[ae>>2]|0;t=Xi[$>>2]|0;n=Xi[re>>2]|0;r=n+(f>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(f&7);if(r>>>0>134217727){r=r>>>23;f=(qi[98538+r>>0]|0)+f|0;f=t>>>0>f>>>0?f:t;Xi[ae>>2]=f;r=Wi[99562+r>>0]|0}else{re=r>>>0>65535;ie=re?r>>>16:r;r=re?16:0;re=(ie&65280|0)==0;r=(qi[145894+(re?ie:ie>>>8)>>0]|0)+(re?r:r|8)|0;f=31-r+f|0;f=t>>>0>f>>>0?f:t;re=n+(f>>>3)|0;re=(ZT(qi[re>>0]|qi[re+1>>0]<<8|qi[re+2>>0]<<16|qi[re+3>>0]<<24|0)|0)<<(f&7)>>>r;f=f+(32-r)|0;f=t>>>0>f>>>0?f:t;Xi[ae>>2]=f;r=re&1;r=(re>>>1^0-r)+r|0}r=r+l|0;o=e+27844|0;if(r>>>0>(((Xi[o>>2]|0)*6|0)+3|0)>>>0){me=Xi[le>>2]|0;Xi[fe>>2]=r;nA(me,16,119493,fe);r=-1094995529;break}F=i+824|0;Xi[F>>2]=r;Xi[i+828>>2]=qi[e+32512+r>>0];Xi[i+832>>2]=qi[e+32600+r>>0];r=Xi[Ee>>2]|0;if((r|0)!=6)if((r+-5|0)>>>0<2){r=f;Z=308}else r=f;else{r=((f|0)<(t|0)&1)+f|0;Xi[ae>>2]=r;Z=308}do{if((Z|0)==308){f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7);if(f>>>0>134217727){r=(qi[98538+(f>>>23)>>0]|0)+r|0;r=t>>>0>r>>>0?r:t;Xi[ae>>2]=r;break}else{fe=f>>>0>65535;ie=fe?f>>>16:f;fe=fe?16:0;re=(ie&65280|0)==0;fe=(qi[145894+(re?ie:ie>>>8)>>0]|0)+(re?fe:fe|8)|0;r=31-fe+r|0;r=(t>>>0>r>>>0?r:t)+(32-fe)|0;r=t>>>0>r>>>0?r:t;Xi[ae>>2]=r;break}}}while(0);_=i+844|0;Xi[_>>2]=1;m=i+848|0;Xi[m>>2]=0;p=i+852|0;Xi[p>>2]=0;do{if(!(Xi[e+32016>>2]|0)){a=1;r=0;f=0}else{f=n+(r>>>3)|0;f=(ZT(qi[f>>0]|qi[f+1>>0]<<8|qi[f+2>>0]<<16|qi[f+3>>0]<<24|0)|0)<<(r&7)>>>23;l=(qi[98538+f>>0]|0)+r|0;l=t>>>0>l>>>0?l:t;Xi[ae>>2]=l;r=Wi[99050+f>>0]|0;f=r&255;if((r&255)>2){r=Xi[le>>2]|0;Xi[ne>>2]=f;nA(r,16,119513,ne);r=-1094995529;break e}ne=(r&255)<2&1;a=ne^f;Xi[_>>2]=a;if((f|0)==(ne|0)){r=0;f=0;break}r=n+(l>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(l&7);if(r>>>0>134217727){r=r>>>23;l=(qi[98538+r>>0]|0)+l|0;l=t>>>0>l>>>0?l:t;Xi[ae>>2]=l;r=Wi[99562+r>>0]|0}else{ne=r>>>0>65535;fe=ne?r>>>16:r;r=ne?16:0;ne=(fe&65280|0)==0;r=(qi[145894+(ne?fe:fe>>>8)>>0]|0)+(ne?r:r|8)|0;l=31-r+l|0;l=t>>>0>l>>>0?l:t;ne=n+(l>>>3)|0;ne=(ZT(qi[ne>>0]|qi[ne+1>>0]<<8|qi[ne+2>>0]<<16|qi[ne+3>>0]<<24|0)|0)<<(l&7)>>>r;l=l+(32-r)|0;l=t>>>0>l>>>0?l:t;Xi[ae>>2]=l;r=ne&1;r=(ne>>>1^0-r)+r|0}f=r<<1;Xi[m>>2]=f;r=n+(l>>>3)|0;r=(ZT(qi[r>>0]|qi[r+1>>0]<<8|qi[r+2>>0]<<16|qi[r+3>>0]<<24|0)|0)<<(l&7);if(r>>>0>134217727){r=r>>>23;ne=(qi[98538+r>>0]|0)+l|0;Xi[ae>>2]=t>>>0>ne>>>0?ne:t;r=Wi[99562+r>>0]|0}else{fe=r>>>0>65535;ne=fe?r>>>16:r;r=fe?16:0;fe=(ne&65280|0)==0;r=(qi[145894+(fe?ne:ne>>>8)>>0]|0)+(fe?r:r|8)|0;fe=31-r+l|0;fe=t>>>0>fe>>>0?fe:t;ne=n+(fe>>>3)|0;ne=(ZT(qi[ne>>0]|qi[ne+1>>0]<<8|qi[ne+2>>0]<<16|qi[ne+3>>0]<<24|0)|0)<<(fe&7)>>>r;r=fe+(32-r)|0;Xi[ae>>2]=t>>>0>r>>>0?r:t;r=ne&1;r=(ne>>>1^0-r)+r|0}r=r<<1;Xi[p>>2]=r;if(!((r+12|0)>>>0>24|(f+12|0)>>>0>24))break;me=Xi[le>>2]|0;Xi[se>>2]=f;Xi[se+4>>2]=r;nA(me,16,119552,se);r=-1094995529;break e}}while(0);n=Xi[le>>2]|0;l=Xi[n+836>>2]|0;i:do{if((l|0)<=47){do{if((l|0)>31)if((Xi[ve>>2]|0)!=5|u^1){Z=332;break i}else Z=331;else{if((l|0)>23)if(u){Z=331;break}else{Z=332;break i}if((l|0)>15)if((s|0)==3){Z=332;break i}else{Z=331;break}else if((l|0)>7){Z=331;break}else break}}while(0);if((Z|0)==331?(Xi[j>>2]|0)==0:0){Z=332;break}if((a|0)!=1)break;l=e+208972|0;if((Xi[l>>2]|0)<=1)break;if(Xi[n+96>>2]&1|0){Xi[_>>2]=2;break}Xi[l>>2]=1;r=e+208980|0;if(!(Xi[r>>2]|0)){nA(n,32,119601,he);Xi[r>>2]=1}if((Xi[ue>>2]|0)==(i|0)){f=Xi[m>>2]|0;r=Xi[p>>2]|0;break}else{nA(Xi[le>>2]|0,16,120036,we);r=1;break e}}else Z=332}while(0);if((Z|0)==332)Xi[_>>2]=0;c=Xi[e+32008>>2]|0;c=(c|0)<0?0:c;l=Xi[e+32012>>2]|0;Xi[i+836>>2]=-33-((f|0)>(r|0)?r:f)+((Xi[o>>2]|0)*6|0)-((c|0)>(l|0)?c:l);f=Xi[ke>>2]|0;l=f+1|0;Xi[ke>>2]=l;c=i+808|0;Xi[c>>2]=l;r=Xi[h>>2]|0;if(l|0)Gi[e+209248+((f&31)<<1)>>1]=r;ke=Gi[e+209248+((l&31)<<1)>>1]|0;if((f|0)>30&((ke|0)<=(r|0)&(ke+3|0)>=(r|0))){ke=Xi[le>>2]|0;Xi[be>>2]=l;Xi[be+4>>2]=32;nA(ke,24,120071,be)}u=i+23380|0;h=e+208964|0;w=e+208960|0;b=0;do{k=Xi[c>>2]&31;n=i+23372+(b<<2)|0;t=b>>>0<(Xi[u>>2]|0)>>>0;s=0;do{o=Se+(s<<2)|0;Xi[o>>2]=60;i:do{if(t){if(s>>>0>=(Xi[n>>2]|0)>>>0)break;r=Xi[(Xi[Xi[i+23384+(b*1920|0)+(s*40|0)+36>>2]>>2]|0)+248>>2]|0;if(!r)break;l=Xi[r>>2]|0;a=Xi[h>>2]|0;r:do{if((a|0)>0){r=0;while(1){if((Xi[Xi[(Xi[Xi[e+207760+(r<<2)>>2]>>2]|0)+248>>2]>>2]|0)==(l|0))break;r=r+1|0;if((r|0)>=(a|0))break r}Xi[o>>2]=r}}while(0);f=Xi[w>>2]|0;if((f|0)>0)r=0;else break;while(1){be=Xi[e+207888+(r<<2)>>2]|0;if(be|0?(Xi[Xi[(Xi[be>>2]|0)+248>>2]>>2]|0)==(l|0):0)break;r=r+1|0;if((r|0)>=(f|0))break i}Xi[o>>2]=a+r}}while(0);s=s+1|0}while((s|0)!=16);Xi[i+27224+(k<<9)+(b<<8)+4>>2]=-1;Xi[i+27224+(k<<9)+(b<<8)>>2]=-1;r=0;do{Xi[i+27224+(k<<9)+(b<<8)+(r+2<<2)>>2]=Xi[i+23384+(b*1920|0)+(r*40|0)+24>>2]&3|Xi[Se+(r<<2)>>2]<<2;r=r+1|0}while((r|0)!=16);Xi[i+27224+(k<<9)+(b<<8)+76>>2]=-1;Xi[i+27224+(k<<9)+(b<<8)+72>>2]=-1;r=16;do{Xi[i+27224+(k<<9)+(b<<8)+(r+4<<2)>>2]=Xi[i+23384+(b*1920|0)+(r*40|0)+24>>2]&3|Xi[Se+((r+-16|0)>>>1<<2)>>2]<<2;r=r+1|0}while((r|0)!=48);b=b+1|0}while((b|0)!=2);Xi[oe>>2]=ce;S=Xi[te>>2]|0;Xi[(Xi[e+206468+(S<<2)>>2]|0)+1200>>2]=0;Xi[e+27860>>2]=0;Xi[e+26656>>2]=S;S=Xi[le>>2]|0;if(!(Xi[S+680>>2]&1)){r=0;break}E=Xi[c>>2]|0;d=Xi[X>>2]|0;v=(ZM(Xi[Ee>>2]|0)|0)<<24>>24;c=Xi[de>>2]|0?120172:237325;b=(Xi[ve>>2]|0)==5?120177:237325;k=Xi[y>>2]|0;u=Xi[e+24620>>2]|0;s=Xi[u+72>>2]|0;u=Xi[u+76>>2]|0;h=Xi[i+23372>>2]|0;w=Xi[i+23376>>2]|0;o=Xi[F>>2]|0;t=Xi[_>>2]|0;n=Xi[m>>2]|0;f=Xi[p>>2]|0;l=Xi[i+856>>2]|0;if((l|0)==1)a=Xi[i+860>>2]|0?120182:237325;else a=237325;if((Xi[Ee>>2]|0)==3)r=Xi[i+21812>>2]|0?120184:120189;else r=237325;Xi[me>>2]=E;Xi[me+4>>2]=(d|0)==3?120170:(d|0)==1?120166:120168;Xi[me+8>>2]=_e;Xi[me+12>>2]=v;Xi[me+16>>2]=c;Xi[me+20>>2]=b;Xi[me+24>>2]=ce;Xi[me+28>>2]=k;Xi[me+32>>2]=s;Xi[me+36>>2]=u;Xi[me+40>>2]=h;Xi[me+44>>2]=w;Xi[me+48>>2]=o;Xi[me+52>>2]=t;Xi[me+56>>2]=n;Xi[me+60>>2]=f;Xi[me+64>>2]=l;Xi[me+68>>2]=a;Xi[me+72>>2]=r;nA(S,48,120194,me);r=0}}while(0);Ue=pe;return r|0}function mC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0;n=Xi[e>>2]|0;t=e+8|0;r=Xi[t>>2]|0;l=Xi[e+16>>2]|0;i=n+(r>>>3)|0;i=(ZT(qi[i>>0]|qi[i+1>>0]<<8|qi[i+2>>0]<<16|qi[i+3>>0]<<24|0)|0)<<(r&7);e=r+16|0;e=l>>>0>e>>>0?e:l;a=n+(e>>>3)|0;e=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(e&7)>>>16|i&-65536;a=e>>>0>65535;e=a?i>>>16:e;a=a?16:0;i=(e&65280|0)==0;e=(i?a:a|8)+(qi[145894+(i?e:e>>>8)>>0]|0)|0;i=31-e|0;a=0-r|0;f=l-r|0;r=((i|0)<(a|0)?a:(f|0)<(i|0)?f:i)+r|0;Xi[t>>2]=r;f=i+1|0;do{if(f){a=n+(r>>>3)|0;a=(ZT(qi[a>>0]|qi[a+1>>0]<<8|qi[a+2>>0]<<16|qi[a+3>>0]<<24|0)|0)<<(r&7);if((f|0)<26){n=r+f|0;Xi[t>>2]=l>>>0>n>>>0?n:l;e=a>>>e;break}else{f=r+16|0;f=l>>>0>f>>>0?f:l;Xi[t>>2]=f;e=i+-15|0;n=n+(f>>>3)|0;n=(ZT(qi[n>>0]|qi[n+1>>0]<<8|qi[n+2>>0]<<16|qi[n+3>>0]<<24|0)|0)<<(f&7)>>>(47-i|0);f=f+e|0;Xi[t>>2]=l>>>0>f>>>0?f:l;e=n|a>>>16<<e;break}}else e=0}while(0);return e+-1|0}function pC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;t=Ue;Ue=Ue+16|0;f=t;a=t+8|0;r=Xi[e+27844>>2]|0;e:do{switch(r|0){case 9:{f=Xi[e+26672>>2]|0;if((f|0)==3){r=a+4|0;if(!(Xi[(Xi[e+4>>2]|0)+396>>2]|0)){Xi[a>>2]=84;n=a;l=45;break e}else{Xi[a>>2]=76;n=a;l=45;break e}}else{r=a+4|0;if((f|0)==2){Xi[a>>2]=80;n=a;l=45;break e}else{Xi[a>>2]=70;n=a;l=45;break e}}}case 10:{f=Xi[e+26672>>2]|0;if((f|0)==3){r=a+4|0;if(!(Xi[(Xi[e+4>>2]|0)+396>>2]|0)){Xi[a>>2]=86;n=a;l=45;break e}else{Xi[a>>2]=78;n=a;l=45;break e}}else{r=a+4|0;if((f|0)==2){Xi[a>>2]=74;n=a;l=45;break e}else{Xi[a>>2]=72;n=a;l=45;break e}}}case 12:{f=Xi[e+26672>>2]|0;if((f|0)==3){r=a+4|0;if(!(Xi[(Xi[e+4>>2]|0)+396>>2]|0)){Xi[a>>2]=312;n=a;l=45;break e}else{Xi[a>>2]=308;n=a;l=45;break e}}else{r=a+4|0;if((f|0)==2){Xi[a>>2]=304;n=a;l=45;break e}else{Xi[a>>2]=300;n=a;l=45;break e}}}case 14:{f=Xi[e+26672>>2]|0;if((f|0)==3){r=a+4|0;if(!(Xi[(Xi[e+4>>2]|0)+396>>2]|0)){Xi[a>>2]=314;n=a;l=45;break e}else{Xi[a>>2]=310;n=a;l=45;break e}}else{r=a+4|0;if((f|0)==2){Xi[a>>2]=306;n=a;l=45;break e}else{Xi[a>>2]=302;n=a;l=45;break e}}}case 8:{r=Xi[e+26672>>2]|0;if((r|0)==3){f=Xi[e+4>>2]|0;if(!(Xi[f+396>>2]|0)){Xi[a>>2]=82;n=a;r=a+4|0;l=45;break e}r=a+4|0;if((Xi[f+400>>2]|0)==2){Xi[a>>2]=14;n=a;l=45;break e}else{Xi[a>>2]=5;n=a;l=45;break e}}f=Xi[e+4>>2]|0;if((r|0)==2){r=a+4|0;if((Xi[f+400>>2]|0)==2){Xi[a>>2]=13;n=a;l=45;break e}else{Xi[a>>2]=4;n=a;l=45;break e}}r=Xi[(Xi[f+12>>2]|0)+24>>2]|0;if(!r){r=a+4|0;if((Xi[f+400>>2]|0)==2){Xi[a>>2]=12;n=a;l=45;break e}else{Xi[a>>2]=0;n=a;l=45;break e}}else{n=r;r=a;l=45}break}default:{i=Xi[e+4>>2]|0;Xi[f>>2]=r;nA(i,16,117976,f);r=-1094995529}}}while(0);e:do{if((l|0)==45){Xi[r>>2]=-1;f=Xi[n>>2]|0;e=Xi[e+4>>2]|0;if((f|0)!=-1){a=(i|0)!=0;r=Xi[e+144>>2]|0;l=0;do{l=l+1|0;if(!(a|(f|0)!=(r|0)))break e;f=Xi[n+(l<<2)>>2]|0}while((f|0)!=-1)}r=UO(e,n)|0}}while(0);Ue=t;return r|0}function FC(e){e=e|0;var i=0,r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;c=Ue;Ue=Ue+64|0;n=c+32|0;a=c+16|0;r=c+8|0;h=c+48|0;k=Xi[e+25960>>2]|0;Xi[h>>2]=1<<(Xi[e+27844>>2]|0)+-1;t=1<<(Xi[e+27848>>2]|0)+-1;Xi[h+4>>2]=t;Xi[h+8>>2]=t;Xi[h+12>>2]=-1;t=e+4|0;e:do{if(!(jO(Xi[t>>2]|0)|0)){nA(Xi[t>>2]|0,16,119317,c);i=-1}else{yC(e,1);b=e+24620|0;Xi[b>>2]=0;i=0;do{if(!(Xi[(Xi[e+716+(i*664|0)>>2]|0)+248>>2]|0))break;i=i+1|0}while((i|0)<36);i=(i|0)==36?-1094995529:i;if((i|0)<0){nA(Xi[t>>2]|0,16,119363,r);break}w=e+716+(i*664|0)|0;r=e+205812|0;if(!(Xi[e+25992>>2]|0))f=Xi[r>>2]|0;else f=0;Xi[e+716+(i*664|0)+636>>2]=f;l=e+25996|0;d=Xi[l>>2]|0;Xi[l>>2]=d+1;l=Xi[w>>2]|0;Xi[l+128>>2]=d;Xi[e+716+(i*664|0)+632>>2]=(Xi[r>>2]|0)!=3&1;Xi[e+716+(i*664|0)+84>>2]=Xi[e+207648>>2];Xi[l+84>>2]=0;Xi[e+716+(i*664|0)+88>>2]=0;Xi[e+716+(i*664|0)+640>>2]=0;Xi[e+716+(i*664|0)+644>>2]=0;Xi[e+716+(i*664|0)+648>>2]=Xi[e+209056>>2];if(Xi[l>>2]|0){Xi[a>>2]=119390;Xi[a+4>>2]=118089;Xi[a+8>>2]=227;nA(0,0,150445,a);$e()}r=e+716+(i*664|0)+4|0;Xi[r>>2]=l;r=xO(Xi[t>>2]|0,r,(f|0)!=0&1)|0;i:do{if((r|0)<0)i=r;else{Xi[e+716+(i*664|0)+652>>2]=Xi[e+26736>>2];Xi[e+716+(i*664|0)+660>>2]=Xi[e+26748>>2];Xi[e+716+(i*664|0)+656>>2]=Xi[e+26740>>2];r=Xi[(Xi[t>>2]|0)+704>>2]|0;if(r|0){f=e+716+(i*664|0)+52|0;if(Xi[f>>2]|0){Xi[n>>2]=119407;Xi[n+4>>2]=118089;Xi[n+8>>2]=241;nA(0,0,150445,n);$e()}r=Xi[r+40>>2]|0;if(r|0){r=HA(r)|0;Xi[e+716+(i*664|0)+48>>2]=r;if(!r){i=-12;break e}Xi[f>>2]=Xi[r+4>>2]}}n=e+209332|0;r=Xi[n>>2]|0;do{if(!r){l=e+206436|0;a=Xi[l>>2]|0;d=Xi[e+206428>>2]|0;v=(Zi(d+1|0,a)|0)+1|0;r=Zi(d<<4,Xi[e+206432>>2]<<2|1)|0;Xi[n>>2]=VA(v+a|0,11)|0;f=e+209336|0;Xi[f>>2]=VA(v+(Xi[l>>2]|0)<<2,11)|0;l=e+209340|0;Xi[l>>2]=VA(r+16|0,11)|0;d=VA(Zi(a<<2,d)|0,11)|0;a=e+209344|0;Xi[a>>2]=d;r=Xi[n>>2]|0;if((r|0?Xi[f>>2]|0:0)?!((d|0)==0|(Xi[l>>2]|0)==0):0)break;YA(n);YA(f);YA(l);YA(a);i=-12;break i}else f=e+209336|0}while(0);v=e+716+(i*664|0)+16|0;Xi[v>>2]=KA(r)|0;r=KA(Xi[f>>2]|0)|0;Xi[e+716+(i*664|0)+40>>2]=r;f=Xi[v>>2]|0;if((r|0)==0|(f|0)==0){VD(e,w);i=-12;break e}a=Xi[e+206436>>2]<<1|1;Xi[e+716+(i*664|0)+44>>2]=(Xi[r+4>>2]|0)+(a<<2);Xi[e+716+(i*664|0)+20>>2]=(Xi[f+4>>2]|0)+a;r=e+209340|0;f=e+209344|0;a=e+716+(i*664|0)+24|0;Xi[a>>2]=KA(Xi[r>>2]|0)|0;l=KA(Xi[f>>2]|0)|0;Xi[e+716+(i*664|0)+56>>2]=l;a=Xi[a>>2]|0;if(!((l|0)==0|(a|0)==0)?(Xi[e+716+(i*664|0)+32>>2]=(Xi[a+4>>2]|0)+16,Xi[e+716+(i*664|0)+64>>2]=Xi[l+4>>2],s=e+716+(i*664|0)+28|0,Xi[s>>2]=KA(Xi[r>>2]|0)|0,o=KA(Xi[f>>2]|0)|0,Xi[e+716+(i*664|0)+60>>2]=o,s=Xi[s>>2]|0,!((o|0)==0|(s|0)==0)):0){Xi[e+716+(i*664|0)+36>>2]=(Xi[s+4>>2]|0)+16;Xi[e+716+(i*664|0)+68>>2]=Xi[o+4>>2];if(((Xi[e+209092>>2]|0)==0?(u=Xi[t>>2]|0,(Xi[u+704>>2]|0)==0):0)?(Xi[(Xi[u+12>>2]|0)+16>>2]&128|0)==0:0)EO(Xi[w>>2]|0,h);Xi[b>>2]=w;i=e+24624|0;VD(e,i);n=e+25952|0;jD((Xi[n>>2]|0)+672|0,0);i=YD(e,i,Xi[b>>2]|0)|0;if((i|0)<0)break e;i=Xi[e+25956>>2]|0;if((i|0)>0){l=Xi[Xi[b>>2]>>2]|0;r=l+32|0;f=Xi[n>>2]|0;l=l+36|0;a=0;do{Xi[f+(a*49776|0)+21748>>2]=Xi[r>>2];Xi[f+(a*49776|0)+21752>>2]=Xi[l>>2];a=a+1|0}while((a|0)<(i|0))}if(!(Xi[e+209328>>2]|0))i=0;else{MN((Xi[n>>2]|0)+24|0);jD((Xi[n>>2]|0)+704|0,0);jD((Xi[n>>2]|0)+736|0,0);i=0}do{v=(qi[120643+i>>0]|0)+-12|0;d=(v<<2&28)<<k;v=v>>3;Xi[e+26260+(i<<2)>>2]=d+(Zi(Xi[(Xi[w>>2]|0)+32>>2]<<2,v)|0);Xi[e+26260+(i+48<<2)>>2]=d+(Zi(Xi[(Xi[w>>2]|0)+32>>2]<<3,v)|0);i=i+1|0}while((i|0)!=16);i=0;do{v=(qi[120643+i>>0]|0)+-12|0;d=(v<<2&28)<<k;v=v>>3;h=d+(Zi(Xi[(Xi[w>>2]|0)+36>>2]<<2,v)|0)|0;Xi[e+26260+(i+32<<2)>>2]=h;Xi[e+26260+(i+16<<2)>>2]=h;v=d+(Zi(Xi[(Xi[w>>2]|0)+36>>2]<<3,v)|0)|0;Xi[e+26260+(i+80<<2)>>2]=v;Xi[e+26260+(i+64<<2)>>2]=v;i=i+1|0}while((i|0)!=16);i=Xi[b>>2]|0;Xi[i+636>>2]=0;Xi[i+76>>2]=2147483647;Xi[i+72>>2]=2147483647;Xi[e+208152>>2]=0;i=0;break e}VD(e,w);i=-12;break e}}while(0);VD(e,w)}}while(0);Ue=c;return i|0}function yC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=(i|0)==0;r=e+24620|0;l=0;do{f=e+716+(l*664|0)|0;do{if(Xi[(Xi[f>>2]|0)+248>>2]|0?(Xi[e+716+(l*664|0)+636>>2]|0)==0:0){if(i?(f|0)==(Xi[r>>2]|0):0)break;VD(e,f)}}while(0);l=l+1|0}while((l|0)!=36);return}function OC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;o=i+872|0;u=(r|0)<0;Xi[o>>2]=0;Xi[o+4>>2]=0;Xi[o+8>>2]=0;Xi[o+12>>2]=0;if(u){a=Xi[e+205812>>2]|0;f=Xi[e+24620>>2]|0;a=Xi[((a|0)==3?f+80|0:f+72+(a+-1<<2)|0)>>2]|0;f=Xi[i+23372>>2]|0;l=Xi[i+23376>>2]|0;if((f|0)==1)if((l|0)==1)if((Xi[e+205808>>2]|0)==0?(t=Xi[i+23412>>2]|0,o=Xi[i+25332>>2]|0,t=WT(o|0,((o|0)<0)<<31>>31|0,t|0,((t|0)<0)<<31>>31|0)|0,o=a<<1,(t|0)==(o|0)&(Ie|0)==(((o|0)<0)<<31>>31|0)):0){Xi[i+856>>2]=0;Xi[i+860>>2]=0}else{w=a;k=1;b=1;c=0;n=8}else{w=a;k=1;b=l;c=0;n=8}else{w=a;k=f;b=l;c=0;n=8}}else{w=Xi[(Xi[e+24620>>2]|0)+72+(r<<2)>>2]|0;k=(Xi[i+23372>>2]<<1)+16|0;b=(Xi[i+23376>>2]<<1)+16|0;c=16;n=8}if((n|0)==8?(Xi[i+856>>2]=2,Xi[i+860>>2]=2,Xi[i+864>>2]=5,Xi[i+868>>2]=5,(c|0)<(k|0)):0){f=(c|0)<(b|0);n=c;do{l=Xi[i+23384+(n*40|0)+28>>2]|0;if(f){a=i+23384+(n*40|0)+36|0;e=w-l|0;e=((e+128|0)>>>0>255?e>>31^127:e)<<24>>24;t=c;do{if(((Xi[(Xi[a>>2]|0)+96>>2]|0)==0?(Xi[(Xi[i+25304+(t*40|0)+36>>2]|0)+96>>2]|0)==0:0)?(h=(Xi[i+25304+(t*40|0)+28>>2]|0)-l|0,h=(h+128|0)>>>0>255?h>>31^127:h,s=h&255,h=h<<24>>24,s<<24>>24!=0):0){o=(Zi((((s<<24>>24>-1?h:0-h|0)>>1)+16384|0)/(h|0)|0,e)|0)+32>>8;o=(o+64|0)>>>0<193?64-o|0:32}else o=32;if(u){Xi[i+3192+(n*384|0)+(t<<3)+4>>2]=o;Xi[i+3192+(n*384|0)+(t<<3)>>2]=o}else Xi[i+3192+(n*384|0)+(t<<3)+(r<<2)>>2]=o;t=t+1|0}while((t|0)!=(b|0))}n=n+1|0}while((n|0)!=(k|0))}return}function AC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;b=Ue;Ue=Ue+16|0;r=b;u=Xi[e+4>>2]|0;if(i|0?(k=i+-1|0,h=e+25952|0,w=Xi[h>>2]|0,f=Xi[e+206428>>2]|0,(Xi[w+(k*49776|0)+21768>>2]|0)<(f|0)):0){r=w+21784|0;Xi[r>>2]=2147483647;do{if((Xi[u+704>>2]|0)==0?(Xi[(Xi[u+12>>2]|0)+16>>2]&128|0)==0:0){l=e+206432|0;s=Xi[l>>2]|0;o=Zi(f,s)|0;if((i|0)==1){Xi[r>>2]=o;r=gC(u,w)|0;Xi[e+206424>>2]=Xi[(Xi[h>>2]|0)+21768>>2];break}t=Xi[h>>2]|0;a=Xi[l>>2]|0;n=0;do{Xi[w+(n*49776|0)+572>>2]=0;f=Zi(s,Xi[w+(n*49776|0)+21768>>2]|0)|0;f=f+(Xi[w+(n*49776|0)+21764>>2]|0)|0;l=0;r=o;do{c=Zi(a,Xi[t+(l*49776|0)+21768>>2]|0)|0;c=c+(Xi[t+(l*49776|0)+21764>>2]|0)|0;r=(n|0)==(l|0)|(c|0)<(f|0)?r:(r|0)>(c|0)?c:r;l=l+1|0}while((l|0)!=(i|0));Xi[w+(n*49776|0)+21784>>2]=r;n=n+1|0}while((n|0)!=(i|0));Vz[Xi[u+816>>2]&1](u,3,Xi[h>>2]|0,0,i,49776)|0;l=Xi[h>>2]|0;Xi[e+206424>>2]=Xi[l+(k*49776|0)+21768>>2];if(i>>>0>1){r=l+572|0;f=1;do{Xi[r>>2]=(Xi[r>>2]|0)+(Xi[l+(f*49776|0)+572>>2]|0);f=f+1|0}while((f|0)!=(i|0));r=0}else r=0}else r=0}while(0);Ue=b;return r|0}Xi[r>>2]=120291;Xi[r+4>>2]=118089;Xi[r+8>>2]=2541;nA(0,0,150445,r);$e();return 0}function gC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0;g=Ue;Ue=Ue+64|0;c=g+56|0;b=g+48|0;_=g+32|0;E=g+24|0;S=g+16|0;s=g;y=Xi[i>>2]|0;A=i+21764|0;o=Xi[A>>2]|0;r=Xi[Xi[y+24620>>2]>>2]|0;a=Xi[r+32>>2]|0;t=i+21748|0;Xi[t>>2]=a;Xi[i+21752>>2]=Xi[r+36>>2];a=((a|0)>-1?a:0-a|0)+63&-32;r=i+43616|0;f=i+43632|0;pM(r,f,a*96|0);l=i+43620|0;pM(l,i+43636|0,a*42|0);a=i+43624|0;p=y+206432|0;FM(a,i+43640|0,(Xi[p>>2]|0)*96|0);n=i+43628|0;FM(n,i+43644|0,(Xi[p>>2]|0)*96|0);e:do{if((((Xi[r>>2]|0)!=0?(Xi[l>>2]|0)!=0:0)?(Xi[a>>2]|0)!=0:0)?(Xi[n>>2]|0)!=0:0){k=i+21788|0;Xi[k>>2]=-1;if((Xi[y+26320>>2]|0)!=(((Xi[t>>2]|0)*12|0)+(12<<Xi[y+25960>>2])|0)){Xi[s>>2]=120360;Xi[s+4>>2]=118089;Xi[s+8>>2]=2343;nA(0,0,150445,s);$e()}m=y+205808|0;if((Xi[m>>2]|0)==0?(Xi[y+205812>>2]|0)==3:0)r=(Xi[e+48>>2]|0)!=28;else r=1;Xi[i+21792>>2]=r&1;F=y+4|0;f=Xi[F>>2]|0;if(((((Xi[f+808>>2]&2|0)==0?(Xi[y+205812>>2]|0)==3:0)?(u=Xi[y+25952>>2]|0,h=Xi[u+580>>2]|0,h|0):0)?(d=(Zi(Xi[p>>2]|0,Xi[i+21780>>2]|0)|0)+(Xi[i+21776>>2]|0)|0,w=(Xi[y+206440>>2]|0)+-1|0,w=(d|0)>(w|0)?w:d,!((d|0)<0|(w|0)==0)):0)?(Wi[h+(Xi[(Xi[u+548>>2]|0)+(w+-1<<2)>>2]|0)>>0]&-2)<<24>>24!=112:0)Xi[u+576>>2]=1;if(!(Xi[y+31968>>2]|0)){h=i+21768|0;_=(Zi(Xi[p>>2]|0,Xi[h>>2]|0)|0)+(Xi[A>>2]|0)|0;e=i+21784|0;r=Xi[e>>2]|0;do{if((_|0)<(r|0)){n=i+16|0;u=i+12|0;f=y+205812|0;a=y+206428|0;while(1){r=yD(y,i)|0;if((r|0)<=-1){O=69;break}ID(y,i);if(Xi[m>>2]|0){Xi[h>>2]=(Xi[h>>2]|0)+1;r=yD(y,i)|0;if((r|0)<=-1){O=67;break}ID(y,i);Xi[h>>2]=(Xi[h>>2]|0)+-1}r=(Xi[A>>2]|0)+1|0;Xi[A>>2]=r;if((r|0)>=(Xi[p>>2]|0)){MC(y,i,o,r);Xi[A>>2]=0;RC(y,i);r=Xi[h>>2]|0;l=r+1|0;Xi[h>>2]=l;if(!(Xi[m>>2]|0)){if((Xi[f>>2]|0)!=3){l=r+2|0;Xi[h>>2]=l}}else{l=r+2|0;Xi[h>>2]=l;if((l|0)<(Xi[a>>2]|0)){TC(y,i);l=Xi[h>>2]|0}}if((l|0)<(Xi[a>>2]|0))o=0;else{O=79;break}}s=Xi[n>>2]|0;t=Xi[u>>2]|0;if((s|0)<=(t|0)?(Xi[k>>2]|0)<1:0){O=89;break}O=(Zi(Xi[p>>2]|0,Xi[h>>2]|0)|0)+(Xi[A>>2]|0)|0;r=Xi[e>>2]|0;if((O|0)>=(r|0)){O=61;break}}if((O|0)==61){f=Xi[F>>2]|0;break}else if((O|0)==67){f=(Xi[h>>2]|0)+-1|0;Xi[h>>2]=f}else if((O|0)==69)f=Xi[h>>2]|0;else if((O|0)==79){f=Xi[n>>2]|0;r=Xi[u>>2]|0;do{if((f|0)!=(r|0)){if((f|0)>(r|0)?(Xi[(Xi[F>>2]|0)+688>>2]&262144|0)==0:0)break;r=Xi[i>>2]|0;if(!(Xi[r+209328>>2]|0)){r=-1094995529;break e}RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,Xi[A>>2]|0,l,112);r=-1094995529;break e}}while(0);r=Xi[i>>2]|0;if(!(Xi[r+209328>>2]|0)){r=0;break e}RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,(Xi[A>>2]|0)+-1|0,l,112);r=0;break e}else if((O|0)==89){f=Xi[i+21776>>2]|0;l=Xi[i+21780>>2]|0;r=Xi[A>>2]|0;a=Xi[i>>2]|0;n=(Xi[a+209328>>2]|0)==0;if((s|0)!=(t|0)){if(n){r=-1094995529;break e}RN((Xi[a+25952>>2]|0)+24|0,f,l,r,Xi[h>>2]|0,14);r=-1094995529;break e}if(!n){RN((Xi[a+25952>>2]|0)+24|0,f,l,r+-1|0,Xi[h>>2]|0,112);r=Xi[A>>2]|0}if((r|0)<=(o|0)){r=0;break e}MC(y,i,o,r);r=0;break e}y=Xi[F>>2]|0;Xi[c>>2]=Xi[A>>2];Xi[c+4>>2]=f;nA(y,16,120591,c);f=Xi[i>>2]|0;if(!(Xi[f+209328>>2]|0))break e;RN((Xi[f+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,Xi[A>>2]|0,Xi[h>>2]|0,14);break e}}while(0);Xi[b>>2]=r;nA(f,16,120487,b);r=Xi[i>>2]|0;if(!(Xi[r+209328>>2]|0)){r=-1094995529;break}RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,Xi[A>>2]|0,Xi[h>>2]|0,14);r=-1094995529;break}f=i+12|0;r=Xi[f>>2]|0;l=0-r&7;if(l){d=Xi[i+20>>2]|0;r=l+r|0;r=d>>>0>r>>>0?r:d;Xi[f>>2]=r}c=i+48680|0;r=AN(c,(Xi[i+4>>2]|0)+((r|0)/8|0)|0,(7-r+(Xi[i+16>>2]|0)|0)/8|0)|0;if((r|0)>=0){tD(y,i);d=i+21768|0;t=i+21784|0;s=i+48684|0;b=i+48696|0;e=i+48700|0;u=y+26012|0;h=y+206428|0;w=y+205812|0;k=i+48692|0;r=Xi[d>>2]|0;f=o;while(1){o=(Zi(Xi[p>>2]|0,r)|0)+(Xi[A>>2]|0)|0;r=Xi[t>>2]|0;if((o|0)>=(r|0)){O=25;break}r=oD(y,i)|0;if((r|0)>-1?(ID(y,i),(Xi[m>>2]|0)!=0):0){Xi[d>>2]=(Xi[d>>2]|0)+1;r=oD(y,i)|0;if((r|0)>-1)ID(y,i);Xi[d>>2]=(Xi[d>>2]|0)+-1}l=Xi[s>>2]|0;a=l+-2|0;Xi[s>>2]=a;n=Xi[c>>2]|0;if((n|0)<(a<<17|0)){l=(l+-258|0)>>>31;Xi[s>>2]=a<<l;l=n<<l;Xi[c>>2]=l;if((l&65535|0)==0?(v=Xi[b>>2]|0,Xi[c>>2]=l+-65535+((qi[v+1>>0]|0)<<1|(qi[v>>0]|0)<<9),v>>>0<(Xi[e>>2]|0)>>>0):0){Xi[b>>2]=v+2;n=0}else n=0}else n=(Xi[b>>2]|0)-(Xi[k>>2]|0)|0;l=Xi[b>>2]|0;a=Xi[e>>2]|0;if((Xi[u>>2]&16384|0)!=0&l>>>0>(a+2|0)>>>0){O=38;break}if(l>>>0>(a+2|0)>>>0){o=Xi[F>>2]|0;Xi[E>>2]=a-l;nA(o,48,120519,E)}if((r|0)<0){O=45;break}r=Xi[b>>2]|0;l=Xi[e>>2]|0;if(r>>>0>(l+4|0)>>>0){f=l;break}r=(Xi[A>>2]|0)+1|0;Xi[A>>2]=r;do{if((r|0)>=(Xi[p>>2]|0)){MC(y,i,f,r);Xi[A>>2]=0;RC(y,i);r=Xi[d>>2]|0;Xi[d>>2]=r+1;if(!(Xi[m>>2]|0)){if((Xi[w>>2]|0)==3){f=0;break}Xi[d>>2]=r+2;f=0;break}else{o=r+2|0;Xi[d>>2]=o;if((o|0)>=(Xi[h>>2]|0)){f=0;break}TC(y,i);f=0;break}}}while(0);if(n|0){O=57;break}r=Xi[d>>2]|0;if((r|0)>=(Xi[h>>2]|0)){O=57;break}}if((O|0)==25){y=Xi[F>>2]|0;Xi[S>>2]=r;nA(y,16,120487,S);r=Xi[i>>2]|0;if(!(Xi[r+209328>>2]|0)){r=-1094995529;break}RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,Xi[A>>2]|0,Xi[d>>2]|0,14);r=-1094995529;break}else if((O|0)==38){r=Xi[i>>2]|0;if(Xi[r+209328>>2]|0)RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,(Xi[A>>2]|0)+-1|0,Xi[d>>2]|0,112);r=Xi[A>>2]|0;if((r|0)<(f|0)){r=0;break}MC(y,i,f,r+1|0);r=0;break}else if((O|0)==45){f=Xi[e>>2]|0;r=Xi[b>>2]|0}else if((O|0)==57){r=Xi[i>>2]|0;if(Xi[r+209328>>2]|0)RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,(Xi[A>>2]|0)+-1|0,Xi[d>>2]|0,112);r=Xi[A>>2]|0;if((r|0)<=(f|0)){r=0;break}MC(y,i,f,r);r=0;break}y=Xi[F>>2]|0;F=Xi[d>>2]|0;Xi[_>>2]=Xi[A>>2];Xi[_+4>>2]=F;Xi[_+8>>2]=f-r;nA(y,16,120544,_);r=Xi[i>>2]|0;if(!(Xi[r+209328>>2]|0))r=-1094995529;else{RN((Xi[r+25952>>2]|0)+24|0,Xi[i+21776>>2]|0,Xi[i+21780>>2]|0,Xi[A>>2]|0,Xi[d>>2]|0,14);r=-1094995529}}}else O=5}while(0);if((O|0)==5){vA(r);vA(l);vA(a);vA(n);Xi[f>>2]=0;Xi[f+4>>2]=0;Xi[f+8>>2]=0;Xi[f+12>>2]=0;r=-12}Ue=g;return r|0}function MC(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0,T=0,N=0,D=0,C=0,P=0,L=0,I=0,H=0,B=0,U=0,x=0,z=0,V=0,Y=0,j=0,K=0,W=0,G=0,X=0,q=0,J=0,Z=0,Q=0,$=0,ee=0,ie=0,re=0,fe=0,le=0,ae=0,ne=0,te=0,oe=0,se=0,ue=0,he=0,we=0,ke=0,be=0,ce=0,de=0,ve=0,Ee=0,Se=0,_e=0,me=0,pe=0,Fe=0,ye=0,Oe=0,Ae=0,ge=0,Me=0,Re=0,Te=0,Ne=0,De=0,Ce=0,Pe=0,Le=0,Ie=0,He=0,Be=0,Ue=0,xe=0,ze=0,Ve=0,Ye=0,je=0,Ke=0,We=0,Ge=0,Xe=0,qe=0,Je=0,Ze=0,Qe=0,$e=0,ei=0,ii=0,ri=0,fi=0,li=0,ai=0,ni=0,ti=0,oi=0,si=0,ui=0,hi=0,wi=0,ki=0,bi=0,ci=0,di=0,vi=0,Ei=0,Si=0,_i=0,mi=0,pi=0,Fi=0,yi=0,Oi=0,Ai=0,gi=0,Mi=0,Ri=0,Ti=0,Ni=0,Di=0,Ci=0,Pi=0,Li=0,Ii=0,Hi=0,Bi=0,Ui=0,xi=0,zi=0,Vi=0,Yi=0,ji=0,Ki=0;Bi=i+21768|0;Li=e+205808|0;l=Xi[Li>>2]|0;Ui=l+(Xi[Bi>>2]|0)|0;xi=i+812|0;zi=Xi[xi>>2]|0;Ii=e+25960|0;Hi=Xi[Ii>>2]|0;Ci=16>>>(Xi[e+25976>>2]|0);Pi=i+844|0;if((Xi[Pi>>2]|0)!=0&(r|0)<(f|0)){fe=e+206436|0;le=i+21772|0;ae=e+205804|0;ne=i+808|0;te=e+24668|0;oe=e+205820|0;se=i+23380|0;ue=i+21764|0;he=e+24624|0;we=i+21748|0;ke=e+26672|0;be=i+21752|0;ce=i+21796|0;de=i+21756|0;ve=i+21760|0;Ee=i+21688|0;Se=i+21696|0;_e=i+21700|0;me=i+836|0;pe=e+24644|0;Fe=i+21708|0;ye=i+21716|0;Oe=i+21720|0;Ae=e+26652|0;ge=i+43824|0;Me=i+44108|0;Re=i+43856|0;Te=i+43888|0;Ne=i+43920|0;De=i+44116|0;Ce=i+44124|0;Pe=i+44132|0;Le=i+43984|0;Ie=i+44148|0;He=i+44016|0;Be=i+44048|0;Ue=i+44080|0;xe=i+44156|0;ze=i+44164|0;Ve=i+44172|0;Ye=e+24692|0;je=i+21800|0;Ke=e+24660|0;We=i+43992|0;Ge=i+44024|0;Xe=i+44056|0;qe=i+44088|0;Je=i+43952|0;Ze=i+44140|0;Qe=i+43980|0;$e=i+44012|0;ei=i+44044|0;ii=i+44076|0;ri=i+44171|0;fi=i+44163|0;li=i+44155|0;ai=i+44147|0;ni=e+26644|0;ti=i+43960|0;oi=i+44141|0;si=i+44143|0;ui=i+44142|0;hi=e+26256|0;wi=i+43660|0;ki=i+43668|0;bi=i+43676|0;ci=i+43684|0;di=e+205824|0;vi=i+21824|0;Ei=e+31968|0;Si=e+32028|0;_i=i+43669|0;mi=i+43661|0;pi=i+43671|0;Fi=i+43670|0;yi=i+43663|0;Oi=i+43662|0;Ai=i+43685|0;gi=i+43677|0;Mi=i+43687|0;Ri=i+43686|0;Ti=i+43679|0;Ni=i+43678|0;Di=i+43683|0;A=i+43675|0;g=i+43667|0;M=i+43659|0;R=i+43653|0;T=i+43652|0;N=i+43655|0;D=i+43654|0;C=e+24688|0;P=e+24656|0;L=i+43832|0;I=i+43864|0;H=i+43896|0;B=i+43928|0;U=i+43792|0;x=i+44100|0;z=i+43820|0;V=i+43852|0;Y=i+43884|0;j=i+43916|0;K=i+44131|0;W=i+44123|0;G=i+44115|0;X=i+44107|0;q=i+43800|0;J=i+44101|0;Z=i+44103|0;Q=i+44102|0;$=i+828|0;ee=i+832|0;ie=i+43624|0;re=Ci+-1|0;do{l=Xi[Li>>2]|0;e:do{if((l|0)>=0){y=r<<Hi;O=Ui-l|0;while(1){p=(Zi(Xi[fe>>2]|0,O)|0)+r|0;Xi[le>>2]=p;Xi[ne>>2]=Ji[(Xi[ae>>2]|0)+(p<<1)>>1];F=Xi[(Xi[te>>2]|0)+(p<<2)>>2]|0;Xi[se>>2]=qi[(Xi[oe>>2]|0)+p>>0];v=(l|0)==0;if(v)l=Xi[ce>>2]|0;else{l=F>>>7&1;Xi[ce>>2]=l;Xi[je>>2]=l}Xi[ue>>2]=r;Xi[Bi>>2]=O;o=Xi[he>>2]|0;u=Xi[o>>2]|0;k=Xi[we>>2]|0;h=(Zi(k,O)|0)+y<<4;w=u+h|0;n=Xi[o+4>>2]|0;d=Xi[ke>>2]|0;E=(d|0)==3;a=Zi(8<<(E&1),y)|0;c=Xi[be>>2]|0;a=a+(Zi(Zi(O,Ci)|0,c)|0)|0;t=n+a|0;o=Xi[o+8>>2]|0;s=o+a|0;if(l){l=k<<1;Xi[de>>2]=l;b=c<<1;Xi[ve>>2]=b;if(!(O&1)){m=t;_=s;k=l}else{_=a-(Zi(c,re)|0)|0;m=n+_|0;_=o+_|0;w=u+(h+(Zi(k,-15)|0))|0;k=l}}else{Xi[de>>2]=k;Xi[ve>>2]=c;m=t;_=s;b=c}u=Xi[Ii>>2]|0;h=(d|0)==2;do{if(!v){l=(Xi[je>>2]|0)!=0;if(!(O&1))if(l){l=0;S=29;break}else break;if(!l){t=Xi[ie>>2]|0;l=k*14|0;o=w+l|0;S=Xi[o+4>>2]|0;v=t+(r*96|0)|0;Xi[v>>2]=Xi[o>>2];Xi[v+4>>2]=S;v=w+(l+8)|0;S=Xi[v+4>>2]|0;o=t+(r*96|0)+8|0;Xi[o>>2]=Xi[v>>2];Xi[o+4>>2]=S;o=(u|0)!=0;if(o){S=w+(l+16)|0;v=Xi[S+4>>2]|0;d=t+(r*96|0)+16|0;Xi[d>>2]=Xi[S>>2];Xi[d+4>>2]=v;d=w+(l+24)|0;v=Xi[d+4>>2]|0;S=t+(r*96|0)+24|0;Xi[S>>2]=Xi[d>>2];Xi[S+4>>2]=v}if(E){l=b*14|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(o){c=t+(r*96|0)+32|0;Xi[c>>2]=a;Xi[c+4>>2]=n;c=l+8|0;o=m+c|0;S=Xi[o+4>>2]|0;d=t+(r*96|0)+40|0;Xi[d>>2]=Xi[o>>2];Xi[d+4>>2]=S;d=l+16|0;S=m+d|0;o=Xi[S+4>>2]|0;v=t+(r*96|0)+48|0;Xi[v>>2]=Xi[S>>2];Xi[v+4>>2]=o;v=l+24|0;o=m+v|0;S=Xi[o+4>>2]|0;s=t+(r*96|0)+56|0;Xi[s>>2]=Xi[o>>2];Xi[s+4>>2]=S;s=_+l|0;l=Xi[s+4>>2]|0;S=t+(r*96|0)+64|0;Xi[S>>2]=Xi[s>>2];Xi[S+4>>2]=l;c=_+c|0;S=Xi[c+4>>2]|0;l=t+(r*96|0)+72|0;Xi[l>>2]=Xi[c>>2];Xi[l+4>>2]=S;d=_+d|0;l=Xi[d+4>>2]|0;S=t+(r*96|0)+80|0;Xi[S>>2]=Xi[d>>2];Xi[S+4>>2]=l;v=_+v|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+88|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}else{v=t+(r*96|0)+16|0;Xi[v>>2]=a;Xi[v+4>>2]=n;v=l+8|0;c=m+v|0;S=Xi[c+4>>2]|0;d=t+(r*96|0)+24|0;Xi[d>>2]=Xi[c>>2];Xi[d+4>>2]=S;d=_+l|0;l=Xi[d+4>>2]|0;S=t+(r*96|0)+32|0;Xi[S>>2]=Xi[d>>2];Xi[S+4>>2]=l;v=_+v|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+40|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}}if(h){l=b*14|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(o){v=t+(r*96|0)+32|0;Xi[v>>2]=a;Xi[v+4>>2]=n;v=l+8|0;c=m+v|0;S=Xi[c+4>>2]|0;d=t+(r*96|0)+40|0;Xi[d>>2]=Xi[c>>2];Xi[d+4>>2]=S;d=_+l|0;l=Xi[d+4>>2]|0;S=t+(r*96|0)+48|0;Xi[S>>2]=Xi[d>>2];Xi[S+4>>2]=l;v=_+v|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+56|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}else{v=t+(r*96|0)+16|0;Xi[v>>2]=a;Xi[v+4>>2]=n;v=_+l|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+24|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}}else{l=b*6|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(o){v=t+(r*96|0)+32|0;Xi[v>>2]=a;Xi[v+4>>2]=n;v=l+8|0;c=m+v|0;S=Xi[c+4>>2]|0;d=t+(r*96|0)+40|0;Xi[d>>2]=Xi[c>>2];Xi[d+4>>2]=S;d=_+l|0;l=Xi[d+4>>2]|0;S=t+(r*96|0)+48|0;Xi[S>>2]=Xi[d>>2];Xi[S+4>>2]=l;v=_+v|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+56|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}else{v=t+(r*96|0)+16|0;Xi[v>>2]=a;Xi[v+4>>2]=n;v=_+l|0;S=Xi[v+4>>2]|0;l=t+(r*96|0)+24|0;Xi[l>>2]=Xi[v>>2];Xi[l+4>>2]=S;l=1;S=29;break}}}else{l=1;S=29}}else{l=1;S=29}}while(0);do{if((S|0)==29){S=0;s=Xi[ue>>2]|0;o=Xi[i+43624+(l<<2)>>2]|0;l=k*15|0;t=w+l|0;v=Xi[t+4>>2]|0;d=o+(s*96|0)|0;Xi[d>>2]=Xi[t>>2];Xi[d+4>>2]=v;d=w+(l+8)|0;v=Xi[d+4>>2]|0;t=o+(s*96|0)+8|0;Xi[t>>2]=Xi[d>>2];Xi[t+4>>2]=v;t=(u|0)!=0;if(t){v=w+(l+16)|0;d=Xi[v+4>>2]|0;c=o+(s*96|0)+16|0;Xi[c>>2]=Xi[v>>2];Xi[c+4>>2]=d;c=w+(l+24)|0;d=Xi[c+4>>2]|0;v=o+(s*96|0)+24|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=d}if(E){l=(k<<4)-b|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(t){h=o+(s*96|0)+32|0;Xi[h>>2]=a;Xi[h+4>>2]=n;h=l+8|0;v=m+h|0;E=Xi[v+4>>2]|0;c=o+(s*96|0)+40|0;Xi[c>>2]=Xi[v>>2];Xi[c+4>>2]=E;c=l+16|0;E=m+c|0;v=Xi[E+4>>2]|0;d=o+(s*96|0)+48|0;Xi[d>>2]=Xi[E>>2];Xi[d+4>>2]=v;d=l+24|0;v=m+d|0;E=Xi[v+4>>2]|0;u=o+(s*96|0)+56|0;Xi[u>>2]=Xi[v>>2];Xi[u+4>>2]=E;u=_+l|0;E=Xi[u+4>>2]|0;v=o+(s*96|0)+64|0;Xi[v>>2]=Xi[u>>2];Xi[v+4>>2]=E;h=_+h|0;v=Xi[h+4>>2]|0;E=o+(s*96|0)+72|0;Xi[E>>2]=Xi[h>>2];Xi[E+4>>2]=v;c=_+c|0;E=Xi[c+4>>2]|0;v=o+(s*96|0)+80|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=E;d=_+d|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+88|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}else{d=o+(s*96|0)+16|0;Xi[d>>2]=a;Xi[d+4>>2]=n;d=l+8|0;v=m+d|0;E=Xi[v+4>>2]|0;c=o+(s*96|0)+24|0;Xi[c>>2]=Xi[v>>2];Xi[c+4>>2]=E;c=_+l|0;E=Xi[c+4>>2]|0;v=o+(s*96|0)+32|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=E;d=_+d|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+40|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}}if(h){l=b*15|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(t){d=o+(s*96|0)+32|0;Xi[d>>2]=a;Xi[d+4>>2]=n;d=l+8|0;v=m+d|0;E=Xi[v+4>>2]|0;c=o+(s*96|0)+40|0;Xi[c>>2]=Xi[v>>2];Xi[c+4>>2]=E;c=_+l|0;E=Xi[c+4>>2]|0;v=o+(s*96|0)+48|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=E;d=_+d|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+56|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}else{d=o+(s*96|0)+16|0;Xi[d>>2]=a;Xi[d+4>>2]=n;d=_+l|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+24|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}}else{l=b*7|0;n=m+l|0;a=Xi[n>>2]|0;n=Xi[n+4>>2]|0;if(t){d=o+(s*96|0)+32|0;Xi[d>>2]=a;Xi[d+4>>2]=n;d=l+8|0;v=m+d|0;E=Xi[v+4>>2]|0;c=o+(s*96|0)+40|0;Xi[c>>2]=Xi[v>>2];Xi[c+4>>2]=E;c=_+l|0;E=Xi[c+4>>2]|0;v=o+(s*96|0)+48|0;Xi[v>>2]=Xi[c>>2];Xi[v+4>>2]=E;d=_+d|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+56|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}else{d=o+(s*96|0)+16|0;Xi[d>>2]=a;Xi[d+4>>2]=n;d=_+l|0;v=Xi[d+4>>2]|0;E=o+(s*96|0)+24|0;Xi[E>>2]=Xi[d>>2];Xi[E+4>>2]=v;break}}}}while(0);d=Xi[le>>2]|0;a=Xi[fe>>2]|0;n=d-(a<<Xi[ce>>2])|0;t=d+-1|0;do{if(!(Xi[Li>>2]|0)){v=t;c=t;h=n}else{l=Xi[te>>2]|0;o=Xi[l+(t<<2)>>2]&128;s=F&128;if(Xi[Bi>>2]&1|0){v=t-((o|0)==(s|0)?0:a)|0;c=t;h=n;break}if(!s)l=n;else l=(((Xi[l+(n<<2)>>2]|0)>>>7&1)+-1&a)+n|0;v=t;c=((o|0)==(s|0)?0:a)+t|0;h=l}}while(0);Xi[Ee>>2]=h;Xi[Se>>2]=v;Xi[_e>>2]=c;l=Xi[me>>2]|0;a=Xi[pe>>2]|0;n=Wi[a+d>>0]|0;do{if((n|0)<=(l|0)){t=(v|0)<0;if(!t?(n+1+(Wi[a+v>>0]|0)>>1|0)>(l|0):0){S=58;break}if((h|0)>=0?(n+1+(Wi[a+h>>0]|0)>>1|0)>(l|0):0){S=58;break}if(Xi[Li>>2]|0){if(!t?(n+1+(Wi[a+c>>0]|0)>>1|0)>(l|0):0){S=58;break}E=Xi[fe>>2]|0;if((h|0)>=(E|0)?(n+1+(Wi[a+(h-E)>>0]|0)>>1|0)>(l|0):0)S=58}}else S=58}while(0);do{if((S|0)==58){S=0;n=Xi[te>>2]|0;t=Xi[n+(h<<2)>>2]|0;l=Xi[n+(v<<2)>>2]|0;n=Xi[n+(c<<2)>>2]|0;a=Xi[ae>>2]|0;s=Gi[a+(h<<1)>>1]|0;a=Gi[a+(c<<1)>>1]|0;if((Xi[Pi>>2]|0)==2){E=Xi[ne>>2]|0;o=(a&65535|0)==(E|0);u=o?l:0;o=o?n:0;n=(s&65535|0)==(E|0)?t:0}else{o=a<<16>>16==-1;u=o?0:l;o=o?0:n;n=s<<16>>16==-1?0:t}Xi[Fe>>2]=n;Xi[ye>>2]=u;Xi[Oe>>2]=o;do{if(!(F&7)){l=Xi[Ae>>2]|0;a=(F&376|0)==0;do{if(!a){if(!(n&12288)){Xi[U>>2]=0;Xi[U+4>>2]=0;Xi[U+8>>2]=0;Xi[U+12>>2]=0;Xi[x>>2]=-1}else{ji=(Xi[(Xi[ni>>2]|0)+(h<<2)>>2]|0)+(l*3|0)|0;t=h<<2;s=s&31;E=Xi[je>>2]|0?20:2;Ki=(Xi[P>>2]|0)+(ji<<2)|0;Vi=Xi[Ki+4>>2]|0;Yi=U;Xi[Yi>>2]=Xi[Ki>>2];Xi[Yi+4>>2]=Vi;ji=(Xi[P>>2]|0)+(ji<<2)+8|0;Yi=Xi[ji+4>>2]|0;Vi=q;Xi[Vi>>2]=Xi[ji>>2];Xi[Vi+4>>2]=Yi;Vi=Xi[i+27224+(s<<9)+((Wi[(Xi[C>>2]|0)+(t|2)>>0]|0)+E<<2)>>2]&255;Wi[J>>0]=Vi;Wi[x>>0]=Vi;E=Xi[i+27224+(s<<9)+((Wi[(Xi[C>>2]|0)+(t|3)>>0]|0)+E<<2)>>2]&255;Wi[Z>>0]=E;Wi[Q>>0]=E}if(!((u^F)&128))if(!(u&12288)){Xi[z>>2]=0;Xi[V>>2]=0;Xi[Y>>2]=0;Xi[j>>2]=0;Wi[K>>0]=-1;Wi[W>>0]=-1;Wi[G>>0]=-1;Wi[X>>0]=-1;break}else{Vi=(Xi[(Xi[ni>>2]|0)+(v<<2)>>2]|0)+3|0;ji=v<<2;Yi=Ji[(Xi[ae>>2]|0)+(v<<1)>>1]&31;Ki=Xi[je>>2]|0?20:2;Xi[z>>2]=Xi[(Xi[P>>2]|0)+(Vi<<2)>>2];Xi[V>>2]=Xi[(Xi[P>>2]|0)+(Vi+l<<2)>>2];Xi[Y>>2]=Xi[(Xi[P>>2]|0)+(Vi+(l<<1)<<2)>>2];Xi[j>>2]=Xi[(Xi[P>>2]|0)+(Vi+(l*3|0)<<2)>>2];Vi=Xi[i+27224+(Yi<<9)+((Wi[(Xi[C>>2]|0)+(ji|1)>>0]|0)+Ki<<2)>>2]&255;Wi[G>>0]=Vi;Wi[X>>0]=Vi;Ki=Xi[i+27224+(Yi<<9)+((Wi[(Xi[C>>2]|0)+(ji|3)>>0]|0)+Ki<<2)>>2]&255;Wi[K>>0]=Ki;Wi[W>>0]=Ki;break}}}while(0);if(!(F&12288)){Xi[ge>>2]=0;Xi[ge+4>>2]=0;Xi[ge+8>>2]=0;Xi[ge+12>>2]=0;Xi[Re>>2]=0;Xi[Re+4>>2]=0;Xi[Re+8>>2]=0;Xi[Re+12>>2]=0;Xi[Te>>2]=0;Xi[Te+4>>2]=0;Xi[Te+8>>2]=0;Xi[Te+12>>2]=0;Xi[Ne>>2]=0;Xi[Ne+4>>2]=0;Xi[Ne+8>>2]=0;Xi[Ne+12>>2]=0;Xi[Me>>2]=-1;Xi[De>>2]=-1;Xi[Ce>>2]=-1;Xi[Pe>>2]=-1}else{E=d<<2;Vi=Xi[C>>2]|0;Ki=Xi[ne>>2]&31;Yi=Xi[je>>2]|0?20:2;ji=(Xi[i+27224+(Ki<<9)+((Wi[Vi+(E|1)>>0]|0)+Yi<<2)>>2]<<16&16711680|Xi[i+27224+(Ki<<9)+(Yi+(Wi[Vi+E>>0]|0)<<2)>>2]&255)*257|0;Yi=(Xi[i+27224+(Ki<<9)+((Wi[Vi+(E|3)>>0]|0)+Yi<<2)>>2]<<16&16711680|Xi[i+27224+(Ki<<9)+((Wi[Vi+(E|2)>>0]|0)+Yi<<2)>>2]&255)*257|0;Xi[Me>>2]=ji;Xi[De>>2]=ji;Xi[Ce>>2]=Yi;Xi[Pe>>2]=Yi;Yi=(Zi(l<<2,Xi[Bi>>2]|0)|0)+(Xi[ue>>2]<<2)|0;ji=Xi[P>>2]|0;E=ji+(Yi<<2)|0;Vi=Xi[E+4>>2]|0;Ki=ge;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=Vi;Ki=ji+((Yi|2)<<2)|0;Vi=Xi[Ki+4>>2]|0;E=L;Xi[E>>2]=Xi[Ki>>2];Xi[E+4>>2]=Vi;E=Yi+l|0;Vi=ji+(E<<2)|0;Ki=Xi[Vi+4>>2]|0;s=Re;Xi[s>>2]=Xi[Vi>>2];Xi[s+4>>2]=Ki;E=ji+(E+2<<2)|0;s=Xi[E+4>>2]|0;Ki=I;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=s;Ki=Yi+(l<<1)|0;s=ji+(Ki<<2)|0;E=Xi[s+4>>2]|0;Vi=Te;Xi[Vi>>2]=Xi[s>>2];Xi[Vi+4>>2]=E;Ki=ji+(Ki+2<<2)|0;Vi=Xi[Ki+4>>2]|0;E=H;Xi[E>>2]=Xi[Ki>>2];Xi[E+4>>2]=Vi;Yi=Yi+(l*3|0)|0;E=ji+(Yi<<2)|0;Vi=Xi[E+4>>2]|0;Ki=Ne;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=Vi;Yi=ji+(Yi+2<<2)|0;ji=Xi[Yi+4>>2]|0;Ki=B;Xi[Ki>>2]=Xi[Yi>>2];Xi[Ki+4>>2]=ji}do{if((Xi[se>>2]|0)==2){l=Xi[Ae>>2]|0;do{if(!a){if(!(n&49152)){Xi[Je>>2]=0;Xi[Je+4>>2]=0;Xi[Je+8>>2]=0;Xi[Je+12>>2]=0;Xi[Ze>>2]=-1}else{s=(Xi[(Xi[ni>>2]|0)+(h<<2)>>2]|0)+(l*3|0)|0;ji=h<<2;Yi=Ji[(Xi[ae>>2]|0)+(h<<1)>>1]&31;Ki=Xi[je>>2]|0?20:2;t=(Xi[Ke>>2]|0)+(s<<2)|0;Vi=Xi[t+4>>2]|0;E=Je;Xi[E>>2]=Xi[t>>2];Xi[E+4>>2]=Vi;s=(Xi[Ke>>2]|0)+(s<<2)+8|0;E=Xi[s+4>>2]|0;Vi=ti;Xi[Vi>>2]=Xi[s>>2];Xi[Vi+4>>2]=E;Vi=Xi[i+27224+(Yi<<9)+256+((Wi[(Xi[Ye>>2]|0)+(ji|2)>>0]|0)+Ki<<2)>>2]&255;Wi[oi>>0]=Vi;Wi[Ze>>0]=Vi;Ki=Xi[i+27224+(Yi<<9)+256+((Wi[(Xi[Ye>>2]|0)+(ji|3)>>0]|0)+Ki<<2)>>2]&255;Wi[si>>0]=Ki;Wi[ui>>0]=Ki}if((u^F)&128|0)break;if(!(u&49152)){Xi[Qe>>2]=0;Xi[$e>>2]=0;Xi[ei>>2]=0;Xi[ii>>2]=0;Wi[ri>>0]=-1;Wi[fi>>0]=-1;Wi[li>>0]=-1;Wi[ai>>0]=-1;break}else{Vi=(Xi[(Xi[ni>>2]|0)+(v<<2)>>2]|0)+3|0;ji=v<<2;Yi=Ji[(Xi[ae>>2]|0)+(v<<1)>>1]&31;Ki=Xi[je>>2]|0?20:2;Xi[Qe>>2]=Xi[(Xi[Ke>>2]|0)+(Vi<<2)>>2];Xi[$e>>2]=Xi[(Xi[Ke>>2]|0)+(Vi+l<<2)>>2];Xi[ei>>2]=Xi[(Xi[Ke>>2]|0)+(Vi+(l<<1)<<2)>>2];Xi[ii>>2]=Xi[(Xi[Ke>>2]|0)+(Vi+(l*3|0)<<2)>>2];Vi=Xi[i+27224+(Yi<<9)+256+((Wi[(Xi[Ye>>2]|0)+(ji|1)>>0]|0)+Ki<<2)>>2]&255;Wi[li>>0]=Vi;Wi[ai>>0]=Vi;Ki=Xi[i+27224+(Yi<<9)+256+((Wi[(Xi[Ye>>2]|0)+(ji|3)>>0]|0)+Ki<<2)>>2]&255;Wi[ri>>0]=Ki;Wi[fi>>0]=Ki;break}}}while(0);if(!(F&49152)){Xi[Le>>2]=0;Xi[Le+4>>2]=0;Xi[Le+8>>2]=0;Xi[Le+12>>2]=0;Xi[He>>2]=0;Xi[He+4>>2]=0;Xi[He+8>>2]=0;Xi[He+12>>2]=0;Xi[Be>>2]=0;Xi[Be+4>>2]=0;Xi[Be+8>>2]=0;Xi[Be+12>>2]=0;Xi[Ue>>2]=0;Xi[Ue+4>>2]=0;Xi[Ue+8>>2]=0;Xi[Ue+12>>2]=0;Xi[Ie>>2]=-1;Xi[xe>>2]=-1;Xi[ze>>2]=-1;Xi[Ve>>2]=-1;break}else{E=d<<2;Vi=Xi[Ye>>2]|0;Ki=Xi[ne>>2]&31;Yi=Xi[je>>2]|0?20:2;ji=(Xi[i+27224+(Ki<<9)+256+((Wi[Vi+(E|1)>>0]|0)+Yi<<2)>>2]<<16&16711680|Xi[i+27224+(Ki<<9)+256+(Yi+(Wi[Vi+E>>0]|0)<<2)>>2]&255)*257|0;Yi=(Xi[i+27224+(Ki<<9)+256+((Wi[Vi+(E|3)>>0]|0)+Yi<<2)>>2]<<16&16711680|Xi[i+27224+(Ki<<9)+256+((Wi[Vi+(E|2)>>0]|0)+Yi<<2)>>2]&255)*257|0;Xi[Ie>>2]=ji;Xi[xe>>2]=ji;Xi[ze>>2]=Yi;Xi[Ve>>2]=Yi;Yi=(Zi(l<<2,Xi[Bi>>2]|0)|0)+(Xi[ue>>2]<<2)|0;ji=Xi[Ke>>2]|0;E=ji+(Yi<<2)|0;Vi=Xi[E+4>>2]|0;Ki=Le;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=Vi;Ki=ji+((Yi|2)<<2)|0;Vi=Xi[Ki+4>>2]|0;E=We;Xi[E>>2]=Xi[Ki>>2];Xi[E+4>>2]=Vi;E=Yi+l|0;Vi=ji+(E<<2)|0;Ki=Xi[Vi+4>>2]|0;s=He;Xi[s>>2]=Xi[Vi>>2];Xi[s+4>>2]=Ki;E=ji+(E+2<<2)|0;s=Xi[E+4>>2]|0;Ki=Ge;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=s;Ki=Yi+(l<<1)|0;s=ji+(Ki<<2)|0;E=Xi[s+4>>2]|0;Vi=Be;Xi[Vi>>2]=Xi[s>>2];Xi[Vi+4>>2]=E;Ki=ji+(Ki+2<<2)|0;Vi=Xi[Ki+4>>2]|0;E=Xe;Xi[E>>2]=Xi[Ki>>2];Xi[E+4>>2]=Vi;Yi=Yi+(l*3|0)|0;E=ji+(Yi<<2)|0;Vi=Xi[E+4>>2]|0;Ki=Ue;Xi[Ki>>2]=Xi[E>>2];Xi[Ki+4>>2]=Vi;Yi=ji+(Yi+2<<2)|0;ji=Xi[Yi+4>>2]|0;Ki=qe;Xi[Ki>>2]=Xi[Yi>>2];Xi[Ki+4>>2]=ji;break}}}while(0);l=Xi[hi>>2]|0;Xi[wi>>2]=Xi[l+(d*48|0)>>2];Xi[ki>>2]=Xi[l+(d*48|0)+4>>2];Xi[bi>>2]=Xi[l+(d*48|0)+8>>2];Xi[ci>>2]=Xi[l+(d*48|0)+12>>2];l=Ji[(Xi[di>>2]|0)+(d<<1)>>1]|0;Xi[vi>>2]=l;if(n|0)Xi[T>>2]=Xi[(Xi[hi>>2]|0)+(h*48|0)+12>>2];if(u|0){Ki=Xi[hi>>2]|0;Wi[M>>0]=Wi[Ki+(v*48|0)+3>>0]|0;Wi[g>>0]=Wi[Ki+(v*48|0)+7>>0]|0;Wi[A>>0]=Wi[Ki+(v*48|0)+11>>0]|0;Wi[Di>>0]=Wi[Ki+(v*48|0)+15>>0]|0}if(Xi[Ei>>2]|0)break;if(!(Xi[Si>>2]|0))break;if(n&16777216|0){Ki=(Ji[(Xi[di>>2]|0)+(h<<1)>>1]|0)>>>12&4;Wi[R>>0]=Ki;Wi[T>>0]=Ki;Ki=(Ji[(Xi[di>>2]|0)+(h<<1)>>1]|0)>>>12&8;Wi[N>>0]=Ki;Wi[D>>0]=Ki}if(u&16777216|0){Ki=(Ji[(Xi[di>>2]|0)+(v<<1)>>1]|0)>>>12&2;Wi[g>>0]=Ki;Wi[M>>0]=Ki}if(o&16777216|0){Ki=(Ji[(Xi[di>>2]|0)+(c<<1)>>1]|0)>>>12&8;Wi[Di>>0]=Ki;Wi[A>>0]=Ki}if(!(F&16777216))break;Ki=l>>>12;ji=Ki&1;Wi[_i>>0]=ji;Wi[ki>>0]=ji;Wi[mi>>0]=ji;Wi[wi>>0]=ji;ji=Ki&2;Wi[pi>>0]=ji;Wi[Fi>>0]=ji;Wi[yi>>0]=ji;Wi[Oi>>0]=ji;ji=Ki&4;Wi[Ai>>0]=ji;Wi[ci>>0]=ji;Wi[gi>>0]=ji;Wi[bi>>0]=ji;Ki=Ki&8;Wi[Mi>>0]=Ki;Wi[Ri>>0]=Ki;Wi[Ti>>0]=Ki;Wi[Ni>>0]=Ki}}while(0);Ki=(Xi[pe>>2]|0)+p|0;Xi[$>>2]=qi[(Wi[Ki>>0]|0)+(e+32512)>>0];Xi[ee>>2]=qi[(Wi[Ki>>0]|0)+(e+32600)>>0];if(!(Xi[Li>>2]|0)){CD(e,i,r,O,w,m,_,k,b);break}else{PD(e,i,r,O,w,m,_,k,b);break}}}while(0);if((O|0)>=(Ui|0))break e;O=O+1|0;l=Xi[Li>>2]|0}}}while(0);r=r+1|0}while((r|0)!=(f|0));l=Xi[Li>>2]|0}Xi[xi>>2]=zi;Xi[i+21764>>2]=f;Xi[Bi>>2]=Ui-l;Ki=Xi[i+824>>2]|0;Xi[i+828>>2]=qi[e+32512+Ki>>0];Xi[i+832>>2]=qi[e+32600+Ki>>0];return}function RC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;n=e+205812|0;a=(Xi[n>>2]|0)!=3&1;r=Xi[i+21768>>2]>>a<<4;a=Xi[e+206428>>2]<<4>>a;l=Xi[e+205808>>2]|0;f=16<<l;l=20<<l;if(Xi[i+844>>2]|0){f=((r+f|0)<(a|0)?0:l)+f|0;r=r-l|0}if((!((a|0)<=(r|0)|(r+f|0)<0)?(t=a-r|0,o=(r|0)<0,t=((f|0)>(t|0)?t:f)+(o?r:0)|0,o=o?0:r,ZN(e,i,o,t),(Xi[e+25992>>2]|0)==0):0)?(Xi[(Xi[(Xi[i>>2]|0)+25952>>2]|0)+576>>2]|0)==0:0)VO((Xi[e+24620>>2]|0)+4|0,o+-1+t|0,(Xi[n>>2]|0)==2&1);return}function TC(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;r=Xi[e+206436>>2]|0;f=(Zi(r,Xi[i+21768>>2]|0)|0)+(Xi[i+21764>>2]|0)|0;l=f+-1|0;a=Xi[e+205804>>2]|0;n=Xi[i+808>>2]|0;if((Ji[a+(l<<1)>>1]|0|0)!=(n|0)){r=f-r|0;if((Ji[a+(r<<1)>>1]|0|0)==(n|0))r=Xi[(Xi[e+24668>>2]|0)+(r<<2)>>2]|0;else r=0}else r=Xi[(Xi[e+24668>>2]|0)+(l<<2)>>2]|0;e=r>>>7&1;Xi[i+21796>>2]=e;Xi[i+21800>>2]=e;return}function NC(e,i){e=e|0;i=i|0;i=(i+-9|0)>>>0<8;Xi[e>>2]=i?2:1;Xi[e+4>>2]=i?4:3;Xi[e+8>>2]=i?6:5;Xi[e+12>>2]=i?8:7;Xi[e+16>>2]=i?10:9;Xi[e+20>>2]=i?12:11;Xi[e+24>>2]=i?14:13;Xi[e+28>>2]=i?16:15;return}function DC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;b=8-l|0;k=8-a|0;d=Zi(k,b)|0;k=Zi(k,l)|0;b=Zi(b,a)|0;w=Zi(a,l)|0;c=r>>1;e:do{if(!w){w=k+b|0;if(!w){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Zi(Ji[i>>1]|0,d)|0)+32|0)>>>6;Gi[e+2>>1]=((Zi(Ji[i+2>>1]|0,d)|0)+32|0)>>>6;Gi[e+4>>1]=((Zi(Ji[i+4>>1]|0,d)|0)+32|0)>>>6;Gi[e+6>>1]=((Zi(Ji[i+6>>1]|0,d)|0)+32|0)>>>6;Gi[e+8>>1]=((Zi(Ji[i+8>>1]|0,d)|0)+32|0)>>>6;Gi[e+10>>1]=((Zi(Ji[i+10>>1]|0,d)|0)+32|0)>>>6;Gi[e+12>>1]=((Zi(Ji[i+12>>1]|0,d)|0)+32|0)>>>6;Gi[e+14>>1]=((Zi(Ji[i+14>>1]|0,d)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(c<<1)|0;i=i+(c<<1)|0}}}a=b|0?c:1;if((f|0)>0){r=a+1|0;n=a+2|0;t=a+3|0;o=a+4|0;s=a+5|0;u=a+6|0;h=a+7|0;l=0;while(1){b=Zi(Ji[i>>1]|0,d)|0;Gi[e>>1]=(b+32+(Zi(Ji[i+(a<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+2>>1]|0,d)|0;Gi[e+2>>1]=(b+32+(Zi(Ji[i+(r<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+4>>1]|0,d)|0;Gi[e+4>>1]=(b+32+(Zi(Ji[i+(n<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+6>>1]|0,d)|0;Gi[e+6>>1]=(b+32+(Zi(Ji[i+(t<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+8>>1]|0,d)|0;Gi[e+8>>1]=(b+32+(Zi(Ji[i+(o<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+10>>1]|0,d)|0;Gi[e+10>>1]=(b+32+(Zi(Ji[i+(s<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+12>>1]|0,d)|0;Gi[e+12>>1]=(b+32+(Zi(Ji[i+(u<<1)>>1]|0,w)|0)|0)>>>6;b=Zi(Ji[i+14>>1]|0,d)|0;Gi[e+14>>1]=(b+32+(Zi(Ji[i+(h<<1)>>1]|0,w)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(c<<1)|0;i=i+(c<<1)|0}}}}else if((f|0)>0){h=c+1|0;a=c+2|0;r=c+3|0;n=c+4|0;t=c+5|0;o=c+6|0;s=c+7|0;u=c+8|0;l=0;while(1){S=Zi(Ji[i>>1]|0,d)|0;E=i+2|0;m=Zi(Ji[E>>1]|0,k)|0;v=i;i=i+(c<<1)|0;p=Zi(Ji[i>>1]|0,b)|0;_=v+(h<<1)|0;Gi[e>>1]=(S+32+m+p+(Zi(Ji[_>>1]|0,w)|0)|0)>>>6;E=Zi(Ji[E>>1]|0,d)|0;p=v+4|0;m=Zi(Ji[p>>1]|0,k)|0;_=Zi(Ji[_>>1]|0,b)|0;S=v+(a<<1)|0;Gi[e+2>>1]=(E+32+m+_+(Zi(Ji[S>>1]|0,w)|0)|0)>>>6;p=Zi(Ji[p>>1]|0,d)|0;_=v+6|0;m=Zi(Ji[_>>1]|0,k)|0;S=Zi(Ji[S>>1]|0,b)|0;E=v+(r<<1)|0;Gi[e+4>>1]=(p+32+m+S+(Zi(Ji[E>>1]|0,w)|0)|0)>>>6;_=Zi(Ji[_>>1]|0,d)|0;S=v+8|0;m=Zi(Ji[S>>1]|0,k)|0;E=Zi(Ji[E>>1]|0,b)|0;p=v+(n<<1)|0;Gi[e+6>>1]=(_+32+m+E+(Zi(Ji[p>>1]|0,w)|0)|0)>>>6;S=Zi(Ji[S>>1]|0,d)|0;E=v+10|0;m=Zi(Ji[E>>1]|0,k)|0;p=Zi(Ji[p>>1]|0,b)|0;_=v+(t<<1)|0;Gi[e+8>>1]=(S+32+m+p+(Zi(Ji[_>>1]|0,w)|0)|0)>>>6;E=Zi(Ji[E>>1]|0,d)|0;p=v+12|0;m=Zi(Ji[p>>1]|0,k)|0;_=Zi(Ji[_>>1]|0,b)|0;S=v+(o<<1)|0;Gi[e+10>>1]=(E+32+m+_+(Zi(Ji[S>>1]|0,w)|0)|0)>>>6;p=Zi(Ji[p>>1]|0,d)|0;_=v+14|0;m=Zi(Ji[_>>1]|0,k)|0;S=Zi(Ji[S>>1]|0,b)|0;E=v+(s<<1)|0;Gi[e+12>>1]=(p+32+m+S+(Zi(Ji[E>>1]|0,w)|0)|0)>>>6;_=Zi(Ji[_>>1]|0,d)|0;S=Zi(Ji[v+16>>1]|0,k)|0;E=Zi(Ji[E>>1]|0,b)|0;Gi[e+14>>1]=(_+32+S+E+(Zi(Ji[v+(u<<1)>>1]|0,w)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+(c<<1)|0}}}while(0);return}function CC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;c=8-l|0;b=8-a|0;d=Zi(b,c)|0;b=Zi(b,l)|0;c=Zi(c,a)|0;h=Zi(a,l)|0;e:do{if(!h){k=b+c|0;if(!k){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((Zi(qi[i>>0]|0,d)|0)+32|0)>>>6;Wi[e+1>>0]=((Zi(qi[i+1>>0]|0,d)|0)+32|0)>>>6;Wi[e+2>>0]=((Zi(qi[i+2>>0]|0,d)|0)+32|0)>>>6;Wi[e+3>>0]=((Zi(qi[i+3>>0]|0,d)|0)+32|0)>>>6;Wi[e+4>>0]=((Zi(qi[i+4>>0]|0,d)|0)+32|0)>>>6;Wi[e+5>>0]=((Zi(qi[i+5>>0]|0,d)|0)+32|0)>>>6;Wi[e+6>>0]=((Zi(qi[i+6>>0]|0,d)|0)+32|0)>>>6;Wi[e+7>>0]=((Zi(qi[i+7>>0]|0,d)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=c|0?r:1;if((f|0)>0){n=a+1|0;t=a+2|0;o=a+3|0;s=a+4|0;u=a+5|0;h=a+6|0;w=a+7|0;l=0;while(1){c=Zi(qi[i>>0]|0,d)|0;Wi[e>>0]=(c+32+(Zi(qi[i+a>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+1>>0]|0,d)|0;Wi[e+1>>0]=(c+32+(Zi(qi[i+n>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+2>>0]|0,d)|0;Wi[e+2>>0]=(c+32+(Zi(qi[i+t>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+3>>0]|0,d)|0;Wi[e+3>>0]=(c+32+(Zi(qi[i+o>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+4>>0]|0,d)|0;Wi[e+4>>0]=(c+32+(Zi(qi[i+s>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+5>>0]|0,d)|0;Wi[e+5>>0]=(c+32+(Zi(qi[i+u>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+6>>0]|0,d)|0;Wi[e+6>>0]=(c+32+(Zi(qi[i+h>>0]|0,k)|0)|0)>>>6;c=Zi(qi[i+7>>0]|0,d)|0;Wi[e+7>>0]=(c+32+(Zi(qi[i+w>>0]|0,k)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){w=r+1|0;k=r+2|0;a=r+3|0;n=r+4|0;t=r+5|0;o=r+6|0;s=r+7|0;u=r+8|0;l=0;while(1){S=Zi(qi[i>>0]|0,d)|0;E=i+1|0;m=Zi(qi[E>>0]|0,b)|0;v=i;i=i+r|0;p=Zi(qi[i>>0]|0,c)|0;_=v+w|0;Wi[e>>0]=(S+32+m+p+(Zi(qi[_>>0]|0,h)|0)|0)>>>6;E=Zi(qi[E>>0]|0,d)|0;p=v+2|0;m=Zi(qi[p>>0]|0,b)|0;_=Zi(qi[_>>0]|0,c)|0;S=v+k|0;Wi[e+1>>0]=(E+32+m+_+(Zi(qi[S>>0]|0,h)|0)|0)>>>6;p=Zi(qi[p>>0]|0,d)|0;_=v+3|0;m=Zi(qi[_>>0]|0,b)|0;S=Zi(qi[S>>0]|0,c)|0;E=v+a|0;Wi[e+2>>0]=(p+32+m+S+(Zi(qi[E>>0]|0,h)|0)|0)>>>6;_=Zi(qi[_>>0]|0,d)|0;S=v+4|0;m=Zi(qi[S>>0]|0,b)|0;E=Zi(qi[E>>0]|0,c)|0;p=v+n|0;Wi[e+3>>0]=(_+32+m+E+(Zi(qi[p>>0]|0,h)|0)|0)>>>6;S=Zi(qi[S>>0]|0,d)|0;E=v+5|0;m=Zi(qi[E>>0]|0,b)|0;p=Zi(qi[p>>0]|0,c)|0;_=v+t|0;Wi[e+4>>0]=(S+32+m+p+(Zi(qi[_>>0]|0,h)|0)|0)>>>6;E=Zi(qi[E>>0]|0,d)|0;p=v+6|0;m=Zi(qi[p>>0]|0,b)|0;_=Zi(qi[_>>0]|0,c)|0;S=v+o|0;Wi[e+5>>0]=(E+32+m+_+(Zi(qi[S>>0]|0,h)|0)|0)>>>6;p=Zi(qi[p>>0]|0,d)|0;_=v+7|0;m=Zi(qi[_>>0]|0,b)|0;S=Zi(qi[S>>0]|0,c)|0;E=v+s|0;Wi[e+6>>0]=(p+32+m+S+(Zi(qi[E>>0]|0,h)|0)|0)>>>6;_=Zi(qi[_>>0]|0,d)|0;S=Zi(qi[v+8>>0]|0,b)|0;E=Zi(qi[E>>0]|0,c)|0;Wi[e+7>>0]=(_+32+S+E+(Zi(qi[v+u>>0]|0,h)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function PC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;u=8-l|0;s=8-a|0;w=Zi(s,u)|0;s=Zi(s,l)|0;u=Zi(u,a)|0;o=Zi(a,l)|0;h=r>>1;e:do{if(!o){o=s+u|0;if(!o){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Zi(Ji[i>>1]|0,w)|0)+32|0)>>>6;Gi[e+2>>1]=((Zi(Ji[i+2>>1]|0,w)|0)+32|0)>>>6;Gi[e+4>>1]=((Zi(Ji[i+4>>1]|0,w)|0)+32|0)>>>6;Gi[e+6>>1]=((Zi(Ji[i+6>>1]|0,w)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(h<<1)|0;i=i+(h<<1)|0}}}a=u|0?h:1;if((f|0)>0){r=a+1|0;n=a+2|0;t=a+3|0;l=0;while(1){u=Zi(Ji[i>>1]|0,w)|0;Gi[e>>1]=(u+32+(Zi(Ji[i+(a<<1)>>1]|0,o)|0)|0)>>>6;u=Zi(Ji[i+2>>1]|0,w)|0;Gi[e+2>>1]=(u+32+(Zi(Ji[i+(r<<1)>>1]|0,o)|0)|0)>>>6;u=Zi(Ji[i+4>>1]|0,w)|0;Gi[e+4>>1]=(u+32+(Zi(Ji[i+(n<<1)>>1]|0,o)|0)|0)>>>6;u=Zi(Ji[i+6>>1]|0,w)|0;Gi[e+6>>1]=(u+32+(Zi(Ji[i+(t<<1)>>1]|0,o)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(h<<1)|0;i=i+(h<<1)|0}}}}else if((f|0)>0){t=h+1|0;a=h+2|0;r=h+3|0;n=h+4|0;l=0;while(1){c=Zi(Ji[i>>1]|0,w)|0;b=i+2|0;v=Zi(Ji[b>>1]|0,s)|0;k=i;i=i+(h<<1)|0;E=Zi(Ji[i>>1]|0,u)|0;d=k+(t<<1)|0;Gi[e>>1]=(c+32+v+E+(Zi(Ji[d>>1]|0,o)|0)|0)>>>6;b=Zi(Ji[b>>1]|0,w)|0;E=k+4|0;v=Zi(Ji[E>>1]|0,s)|0;d=Zi(Ji[d>>1]|0,u)|0;c=k+(a<<1)|0;Gi[e+2>>1]=(b+32+v+d+(Zi(Ji[c>>1]|0,o)|0)|0)>>>6;E=Zi(Ji[E>>1]|0,w)|0;d=k+6|0;v=Zi(Ji[d>>1]|0,s)|0;c=Zi(Ji[c>>1]|0,u)|0;b=k+(r<<1)|0;Gi[e+4>>1]=(E+32+v+c+(Zi(Ji[b>>1]|0,o)|0)|0)>>>6;d=Zi(Ji[d>>1]|0,w)|0;c=Zi(Ji[k+8>>1]|0,s)|0;b=Zi(Ji[b>>1]|0,u)|0;Gi[e+6>>1]=(d+32+c+b+(Zi(Ji[k+(n<<1)>>1]|0,o)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+(h<<1)|0}}}while(0);return}function LC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;h=8-l|0;u=8-a|0;w=Zi(u,h)|0;u=Zi(u,l)|0;h=Zi(h,a)|0;t=Zi(a,l)|0;e:do{if(!t){s=u+h|0;if(!s){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((Zi(qi[i>>0]|0,w)|0)+32|0)>>>6;Wi[e+1>>0]=((Zi(qi[i+1>>0]|0,w)|0)+32|0)>>>6;Wi[e+2>>0]=((Zi(qi[i+2>>0]|0,w)|0)+32|0)>>>6;Wi[e+3>>0]=((Zi(qi[i+3>>0]|0,w)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=h|0?r:1;if((f|0)>0){n=a+1|0;t=a+2|0;o=a+3|0;l=0;while(1){h=Zi(qi[i>>0]|0,w)|0;Wi[e>>0]=(h+32+(Zi(qi[i+a>>0]|0,s)|0)|0)>>>6;h=Zi(qi[i+1>>0]|0,w)|0;Wi[e+1>>0]=(h+32+(Zi(qi[i+n>>0]|0,s)|0)|0)>>>6;h=Zi(qi[i+2>>0]|0,w)|0;Wi[e+2>>0]=(h+32+(Zi(qi[i+t>>0]|0,s)|0)|0)>>>6;h=Zi(qi[i+3>>0]|0,w)|0;Wi[e+3>>0]=(h+32+(Zi(qi[i+o>>0]|0,s)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){o=r+1|0;s=r+2|0;a=r+3|0;n=r+4|0;l=0;while(1){c=Zi(qi[i>>0]|0,w)|0;b=i+1|0;v=Zi(qi[b>>0]|0,u)|0;k=i;i=i+r|0;E=Zi(qi[i>>0]|0,h)|0;d=k+o|0;Wi[e>>0]=(c+32+v+E+(Zi(qi[d>>0]|0,t)|0)|0)>>>6;b=Zi(qi[b>>0]|0,w)|0;E=k+2|0;v=Zi(qi[E>>0]|0,u)|0;d=Zi(qi[d>>0]|0,h)|0;c=k+s|0;Wi[e+1>>0]=(b+32+v+d+(Zi(qi[c>>0]|0,t)|0)|0)>>>6;E=Zi(qi[E>>0]|0,w)|0;d=k+3|0;v=Zi(qi[d>>0]|0,u)|0;c=Zi(qi[c>>0]|0,h)|0;b=k+a|0;Wi[e+2>>0]=(E+32+v+c+(Zi(qi[b>>0]|0,t)|0)|0)>>>6;d=Zi(qi[d>>0]|0,w)|0;c=Zi(qi[k+4>>0]|0,u)|0;b=Zi(qi[b>>0]|0,h)|0;Wi[e+3>>0]=(d+32+c+b+(Zi(qi[k+n>>0]|0,t)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function IC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;o=8-l|0;t=8-a|0;u=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;n=Zi(a,l)|0;s=r>>1;e:do{if(!n){n=t+o|0;if(!n){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Zi(Ji[i>>1]|0,u)|0)+32|0)>>>6;Gi[e+2>>1]=((Zi(Ji[i+2>>1]|0,u)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}a=o|0?s:1;if((f|0)>0){r=a+1|0;l=0;while(1){o=Zi(Ji[i>>1]|0,u)|0;Gi[e>>1]=(o+32+(Zi(Ji[i+(a<<1)>>1]|0,n)|0)|0)>>>6;o=Zi(Ji[i+2>>1]|0,u)|0;Gi[e+2>>1]=(o+32+(Zi(Ji[i+(r<<1)>>1]|0,n)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}}else if((f|0)>0){r=s+1|0;a=s+2|0;l=0;while(1){d=Zi(Ji[i>>1]|0,u)|0;b=i+2|0;c=Zi(Ji[b>>1]|0,t)|0;h=i;i=i+(s<<1)|0;k=Zi(Ji[i>>1]|0,o)|0;w=h+(r<<1)|0;Gi[e>>1]=(d+32+c+k+(Zi(Ji[w>>1]|0,n)|0)|0)>>>6;b=Zi(Ji[b>>1]|0,u)|0;k=Zi(Ji[h+4>>1]|0,t)|0;w=Zi(Ji[w>>1]|0,o)|0;Gi[e+2>>1]=(b+32+k+w+(Zi(Ji[h+(a<<1)>>1]|0,n)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+(s<<1)|0}}}while(0);return}function HC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;s=8-l|0;o=8-a|0;u=Zi(o,s)|0;o=Zi(o,l)|0;s=Zi(s,a)|0;a=Zi(a,l)|0;e:do{if(!a){t=o+s|0;if(!t){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((Zi(qi[i>>0]|0,u)|0)+32|0)>>>6;Wi[e+1>>0]=((Zi(qi[i+1>>0]|0,u)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=s|0?r:1;if((f|0)>0){n=a+1|0;l=0;while(1){s=Zi(qi[i>>0]|0,u)|0;Wi[e>>0]=(s+32+(Zi(qi[i+a>>0]|0,t)|0)|0)>>>6;s=Zi(qi[i+1>>0]|0,u)|0;Wi[e+1>>0]=(s+32+(Zi(qi[i+n>>0]|0,t)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){n=r+1|0;t=r+2|0;l=0;while(1){d=Zi(qi[i>>0]|0,u)|0;b=i+1|0;c=Zi(qi[b>>0]|0,o)|0;h=i;i=i+r|0;k=Zi(qi[i>>0]|0,s)|0;w=h+n|0;Wi[e>>0]=(d+32+c+k+(Zi(qi[w>>0]|0,a)|0)|0)>>>6;b=Zi(qi[b>>0]|0,u)|0;k=Zi(qi[h+2>>0]|0,o)|0;w=Zi(qi[w>>0]|0,s)|0;Wi[e+1>>0]=(b+32+k+w+(Zi(qi[h+t>>0]|0,a)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function BC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;o=8-l|0;t=8-a|0;u=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;n=Zi(a,l)|0;s=r>>1;do{if(!n){r=t+o|0;if(!r){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Zi(Ji[i>>1]|0,u)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}else{a=o|0?s:1;if((f|0)>0)l=0;else break;while(1){o=Zi(Ji[i>>1]|0,u)|0;Gi[e>>1]=(o+32+(Zi(Ji[i+(a<<1)>>1]|0,r)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}}else if((f|0)>0){a=s+1|0;l=0;while(1){k=Zi(Ji[i>>1]|0,u)|0;w=Zi(Ji[i+2>>1]|0,t)|0;r=i;i=i+(s<<1)|0;h=Zi(Ji[i>>1]|0,o)|0;Gi[e>>1]=(k+32+w+h+(Zi(Ji[r+(a<<1)>>1]|0,n)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+(s<<1)|0}}}while(0);return}function UC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;o=8-l|0;t=8-a|0;s=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;a=Zi(a,l)|0;do{if(!a){n=t+o|0;if(!n){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((Zi(qi[i>>0]|0,s)|0)+32|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}else{a=o|0?r:1;if((f|0)>0)l=0;else break;while(1){o=Zi(qi[i>>0]|0,s)|0;Wi[e>>0]=(o+32+(Zi(qi[i+a>>0]|0,n)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){n=r+1|0;l=0;while(1){k=Zi(qi[i>>0]|0,s)|0;w=Zi(qi[i+1>>0]|0,t)|0;u=i;i=i+r|0;h=Zi(qi[i>>0]|0,o)|0;Wi[e>>0]=(k+32+w+h+(Zi(qi[u+n>>0]|0,a)|0)|0)>>>6;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function xC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;b=8-l|0;k=8-a|0;d=Zi(k,b)|0;k=Zi(k,l)|0;b=Zi(b,a)|0;w=Zi(a,l)|0;c=r>>1;e:do{if(!w){w=k+b|0;if(!w){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Ji[e>>1]|0)+1+(((Zi(Ji[i>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+2|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+2>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+4|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+4>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+6|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+6>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+8|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+8>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+10|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+10>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+12|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+12>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;b=e+14|0;Gi[b>>1]=((Ji[b>>1]|0)+1+(((Zi(Ji[i+14>>1]|0,d)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(c<<1)|0;i=i+(c<<1)|0}}}a=b|0?c:1;if((f|0)>0){r=a+1|0;n=a+2|0;t=a+3|0;o=a+4|0;s=a+5|0;u=a+6|0;h=a+7|0;l=0;while(1){b=Zi(Ji[i>>1]|0,d)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((b+32+(Zi(Ji[i+(a<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+2|0;k=Zi(Ji[i+2>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(r<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+4|0;k=Zi(Ji[i+4>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(n<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+6|0;k=Zi(Ji[i+6>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(t<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+8|0;k=Zi(Ji[i+8>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(o<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+10|0;k=Zi(Ji[i+10>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(s<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+12|0;k=Zi(Ji[i+12>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(u<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;b=e+14|0;k=Zi(Ji[i+14>>1]|0,d)|0;Gi[b>>1]=((Ji[b>>1]|0)+1+((k+32+(Zi(Ji[i+(h<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(c<<1)|0;i=i+(c<<1)|0}}}}else if((f|0)>0){h=c+1|0;a=c+2|0;r=c+3|0;n=c+4|0;t=c+5|0;o=c+6|0;s=c+7|0;u=c+8|0;l=0;while(1){p=Zi(Ji[i>>1]|0,d)|0;S=i+2|0;F=Zi(Ji[S>>1]|0,k)|0;E=i;i=i+(c<<1)|0;v=Zi(Ji[i>>1]|0,b)|0;m=E+(h<<1)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((p+32+F+v+(Zi(Ji[m>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+2|0;S=Zi(Ji[S>>1]|0,d)|0;F=E+4|0;p=Zi(Ji[F>>1]|0,k)|0;m=Zi(Ji[m>>1]|0,b)|0;_=E+(a<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((S+32+p+m+(Zi(Ji[_>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+4|0;F=Zi(Ji[F>>1]|0,d)|0;m=E+6|0;p=Zi(Ji[m>>1]|0,k)|0;_=Zi(Ji[_>>1]|0,b)|0;S=E+(r<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((F+32+p+_+(Zi(Ji[S>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+6|0;m=Zi(Ji[m>>1]|0,d)|0;_=E+8|0;p=Zi(Ji[_>>1]|0,k)|0;S=Zi(Ji[S>>1]|0,b)|0;F=E+(n<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((m+32+p+S+(Zi(Ji[F>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+8|0;_=Zi(Ji[_>>1]|0,d)|0;S=E+10|0;p=Zi(Ji[S>>1]|0,k)|0;F=Zi(Ji[F>>1]|0,b)|0;m=E+(t<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((_+32+p+F+(Zi(Ji[m>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+10|0;S=Zi(Ji[S>>1]|0,d)|0;F=E+12|0;p=Zi(Ji[F>>1]|0,k)|0;m=Zi(Ji[m>>1]|0,b)|0;_=E+(o<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((S+32+p+m+(Zi(Ji[_>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+12|0;F=Zi(Ji[F>>1]|0,d)|0;m=E+14|0;p=Zi(Ji[m>>1]|0,k)|0;_=Zi(Ji[_>>1]|0,b)|0;S=E+(s<<1)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((F+32+p+_+(Zi(Ji[S>>1]|0,w)|0)|0)>>>6)|0)>>>1;v=e+14|0;m=Zi(Ji[m>>1]|0,d)|0;_=Zi(Ji[E+16>>1]|0,k)|0;S=Zi(Ji[S>>1]|0,b)|0;Gi[v>>1]=((Ji[v>>1]|0)+1+((m+32+_+S+(Zi(Ji[E+(u<<1)>>1]|0,w)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+(c<<1)|0}}}while(0);return}function zC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;c=8-l|0;b=8-a|0;d=Zi(b,c)|0;b=Zi(b,l)|0;c=Zi(c,a)|0;h=Zi(a,l)|0;e:do{if(!h){k=b+c|0;if(!k){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((qi[e>>0]|0)+1+(((Zi(qi[i>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+1|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+1>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+2|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+2>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+3|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+3>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+4|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+4>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+5|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+5>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+6|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+6>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;c=e+7|0;Wi[c>>0]=((qi[c>>0]|0)+1+(((Zi(qi[i+7>>0]|0,d)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=c|0?r:1;if((f|0)>0){n=a+1|0;t=a+2|0;o=a+3|0;s=a+4|0;u=a+5|0;h=a+6|0;w=a+7|0;l=0;while(1){c=Zi(qi[i>>0]|0,d)|0;Wi[e>>0]=((qi[e>>0]|0)+1+((c+32+(Zi(qi[i+a>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+1|0;b=Zi(qi[i+1>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+n>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+2|0;b=Zi(qi[i+2>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+t>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+3|0;b=Zi(qi[i+3>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+o>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+4|0;b=Zi(qi[i+4>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+s>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+5|0;b=Zi(qi[i+5>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+u>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+6|0;b=Zi(qi[i+6>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+h>>0]|0,k)|0)|0)>>>6)|0)>>>1;c=e+7|0;b=Zi(qi[i+7>>0]|0,d)|0;Wi[c>>0]=((qi[c>>0]|0)+1+((b+32+(Zi(qi[i+w>>0]|0,k)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){w=r+1|0;k=r+2|0;a=r+3|0;n=r+4|0;t=r+5|0;o=r+6|0;s=r+7|0;u=r+8|0;l=0;while(1){p=Zi(qi[i>>0]|0,d)|0;S=i+1|0;F=Zi(qi[S>>0]|0,b)|0;E=i;i=i+r|0;v=Zi(qi[i>>0]|0,c)|0;m=E+w|0;Wi[e>>0]=((qi[e>>0]|0)+1+((p+32+F+v+(Zi(qi[m>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+1|0;S=Zi(qi[S>>0]|0,d)|0;F=E+2|0;p=Zi(qi[F>>0]|0,b)|0;m=Zi(qi[m>>0]|0,c)|0;_=E+k|0;Wi[v>>0]=((qi[v>>0]|0)+1+((S+32+p+m+(Zi(qi[_>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+2|0;F=Zi(qi[F>>0]|0,d)|0;m=E+3|0;p=Zi(qi[m>>0]|0,b)|0;_=Zi(qi[_>>0]|0,c)|0;S=E+a|0;Wi[v>>0]=((qi[v>>0]|0)+1+((F+32+p+_+(Zi(qi[S>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+3|0;m=Zi(qi[m>>0]|0,d)|0;_=E+4|0;p=Zi(qi[_>>0]|0,b)|0;S=Zi(qi[S>>0]|0,c)|0;F=E+n|0;Wi[v>>0]=((qi[v>>0]|0)+1+((m+32+p+S+(Zi(qi[F>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+4|0;_=Zi(qi[_>>0]|0,d)|0;S=E+5|0;p=Zi(qi[S>>0]|0,b)|0;F=Zi(qi[F>>0]|0,c)|0;m=E+t|0;Wi[v>>0]=((qi[v>>0]|0)+1+((_+32+p+F+(Zi(qi[m>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+5|0;S=Zi(qi[S>>0]|0,d)|0;F=E+6|0;p=Zi(qi[F>>0]|0,b)|0;m=Zi(qi[m>>0]|0,c)|0;_=E+o|0;Wi[v>>0]=((qi[v>>0]|0)+1+((S+32+p+m+(Zi(qi[_>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+6|0;F=Zi(qi[F>>0]|0,d)|0;m=E+7|0;p=Zi(qi[m>>0]|0,b)|0;_=Zi(qi[_>>0]|0,c)|0;S=E+s|0;Wi[v>>0]=((qi[v>>0]|0)+1+((F+32+p+_+(Zi(qi[S>>0]|0,h)|0)|0)>>>6)|0)>>>1;v=e+7|0;m=Zi(qi[m>>0]|0,d)|0;_=Zi(qi[E+8>>0]|0,b)|0;S=Zi(qi[S>>0]|0,c)|0;Wi[v>>0]=((qi[v>>0]|0)+1+((m+32+_+S+(Zi(qi[E+u>>0]|0,h)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function VC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;u=8-l|0;s=8-a|0;w=Zi(s,u)|0;s=Zi(s,l)|0;u=Zi(u,a)|0;o=Zi(a,l)|0;h=r>>1;e:do{if(!o){o=s+u|0;if(!o){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Ji[e>>1]|0)+1+(((Zi(Ji[i>>1]|0,w)|0)+32|0)>>>6)|0)>>>1;u=e+2|0;Gi[u>>1]=((Ji[u>>1]|0)+1+(((Zi(Ji[i+2>>1]|0,w)|0)+32|0)>>>6)|0)>>>1;u=e+4|0;Gi[u>>1]=((Ji[u>>1]|0)+1+(((Zi(Ji[i+4>>1]|0,w)|0)+32|0)>>>6)|0)>>>1;u=e+6|0;Gi[u>>1]=((Ji[u>>1]|0)+1+(((Zi(Ji[i+6>>1]|0,w)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(h<<1)|0;i=i+(h<<1)|0}}}a=u|0?h:1;if((f|0)>0){r=a+1|0;n=a+2|0;t=a+3|0;l=0;while(1){u=Zi(Ji[i>>1]|0,w)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((u+32+(Zi(Ji[i+(a<<1)>>1]|0,o)|0)|0)>>>6)|0)>>>1;u=e+2|0;s=Zi(Ji[i+2>>1]|0,w)|0;Gi[u>>1]=((Ji[u>>1]|0)+1+((s+32+(Zi(Ji[i+(r<<1)>>1]|0,o)|0)|0)>>>6)|0)>>>1;u=e+4|0;s=Zi(Ji[i+4>>1]|0,w)|0;Gi[u>>1]=((Ji[u>>1]|0)+1+((s+32+(Zi(Ji[i+(n<<1)>>1]|0,o)|0)|0)>>>6)|0)>>>1;u=e+6|0;s=Zi(Ji[i+6>>1]|0,w)|0;Gi[u>>1]=((Ji[u>>1]|0)+1+((s+32+(Zi(Ji[i+(t<<1)>>1]|0,o)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(h<<1)|0;i=i+(h<<1)|0}}}}else if((f|0)>0){t=h+1|0;a=h+2|0;r=h+3|0;n=h+4|0;l=0;while(1){E=Zi(Ji[i>>1]|0,w)|0;c=i+2|0;S=Zi(Ji[c>>1]|0,s)|0;b=i;i=i+(h<<1)|0;k=Zi(Ji[i>>1]|0,u)|0;v=b+(t<<1)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((E+32+S+k+(Zi(Ji[v>>1]|0,o)|0)|0)>>>6)|0)>>>1;k=e+2|0;c=Zi(Ji[c>>1]|0,w)|0;S=b+4|0;E=Zi(Ji[S>>1]|0,s)|0;v=Zi(Ji[v>>1]|0,u)|0;d=b+(a<<1)|0;Gi[k>>1]=((Ji[k>>1]|0)+1+((c+32+E+v+(Zi(Ji[d>>1]|0,o)|0)|0)>>>6)|0)>>>1;k=e+4|0;S=Zi(Ji[S>>1]|0,w)|0;v=b+6|0;E=Zi(Ji[v>>1]|0,s)|0;d=Zi(Ji[d>>1]|0,u)|0;c=b+(r<<1)|0;Gi[k>>1]=((Ji[k>>1]|0)+1+((S+32+E+d+(Zi(Ji[c>>1]|0,o)|0)|0)>>>6)|0)>>>1;k=e+6|0;v=Zi(Ji[v>>1]|0,w)|0;d=Zi(Ji[b+8>>1]|0,s)|0;c=Zi(Ji[c>>1]|0,u)|0;Gi[k>>1]=((Ji[k>>1]|0)+1+((v+32+d+c+(Zi(Ji[b+(n<<1)>>1]|0,o)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+(h<<1)|0}}}while(0);return}function YC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0;h=8-l|0;u=8-a|0;w=Zi(u,h)|0;u=Zi(u,l)|0;h=Zi(h,a)|0;t=Zi(a,l)|0;e:do{if(!t){s=u+h|0;if(!s){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((qi[e>>0]|0)+1+(((Zi(qi[i>>0]|0,w)|0)+32|0)>>>6)|0)>>>1;h=e+1|0;Wi[h>>0]=((qi[h>>0]|0)+1+(((Zi(qi[i+1>>0]|0,w)|0)+32|0)>>>6)|0)>>>1;h=e+2|0;Wi[h>>0]=((qi[h>>0]|0)+1+(((Zi(qi[i+2>>0]|0,w)|0)+32|0)>>>6)|0)>>>1;h=e+3|0;Wi[h>>0]=((qi[h>>0]|0)+1+(((Zi(qi[i+3>>0]|0,w)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=h|0?r:1;if((f|0)>0){n=a+1|0;t=a+2|0;o=a+3|0;l=0;while(1){h=Zi(qi[i>>0]|0,w)|0;Wi[e>>0]=((qi[e>>0]|0)+1+((h+32+(Zi(qi[i+a>>0]|0,s)|0)|0)>>>6)|0)>>>1;h=e+1|0;u=Zi(qi[i+1>>0]|0,w)|0;Wi[h>>0]=((qi[h>>0]|0)+1+((u+32+(Zi(qi[i+n>>0]|0,s)|0)|0)>>>6)|0)>>>1;h=e+2|0;u=Zi(qi[i+2>>0]|0,w)|0;Wi[h>>0]=((qi[h>>0]|0)+1+((u+32+(Zi(qi[i+t>>0]|0,s)|0)|0)>>>6)|0)>>>1;h=e+3|0;u=Zi(qi[i+3>>0]|0,w)|0;Wi[h>>0]=((qi[h>>0]|0)+1+((u+32+(Zi(qi[i+o>>0]|0,s)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){o=r+1|0;s=r+2|0;a=r+3|0;n=r+4|0;l=0;while(1){E=Zi(qi[i>>0]|0,w)|0;c=i+1|0;S=Zi(qi[c>>0]|0,u)|0;b=i;i=i+r|0;k=Zi(qi[i>>0]|0,h)|0;v=b+o|0;Wi[e>>0]=((qi[e>>0]|0)+1+((E+32+S+k+(Zi(qi[v>>0]|0,t)|0)|0)>>>6)|0)>>>1;k=e+1|0;c=Zi(qi[c>>0]|0,w)|0;S=b+2|0;E=Zi(qi[S>>0]|0,u)|0;v=Zi(qi[v>>0]|0,h)|0;d=b+s|0;Wi[k>>0]=((qi[k>>0]|0)+1+((c+32+E+v+(Zi(qi[d>>0]|0,t)|0)|0)>>>6)|0)>>>1;k=e+2|0;S=Zi(qi[S>>0]|0,w)|0;v=b+3|0;E=Zi(qi[v>>0]|0,u)|0;d=Zi(qi[d>>0]|0,h)|0;c=b+a|0;Wi[k>>0]=((qi[k>>0]|0)+1+((S+32+E+d+(Zi(qi[c>>0]|0,t)|0)|0)>>>6)|0)>>>1;k=e+3|0;v=Zi(qi[v>>0]|0,w)|0;d=Zi(qi[b+4>>0]|0,u)|0;c=Zi(qi[c>>0]|0,h)|0;Wi[k>>0]=((qi[k>>0]|0)+1+((v+32+d+c+(Zi(qi[b+n>>0]|0,t)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function jC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;o=8-l|0;t=8-a|0;u=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;n=Zi(a,l)|0;s=r>>1;e:do{if(!n){n=t+o|0;if(!n){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Ji[e>>1]|0)+1+(((Zi(Ji[i>>1]|0,u)|0)+32|0)>>>6)|0)>>>1;o=e+2|0;Gi[o>>1]=((Ji[o>>1]|0)+1+(((Zi(Ji[i+2>>1]|0,u)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}a=o|0?s:1;if((f|0)>0){r=a+1|0;l=0;while(1){o=Zi(Ji[i>>1]|0,u)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((o+32+(Zi(Ji[i+(a<<1)>>1]|0,n)|0)|0)>>>6)|0)>>>1;o=e+2|0;t=Zi(Ji[i+2>>1]|0,u)|0;Gi[o>>1]=((Ji[o>>1]|0)+1+((t+32+(Zi(Ji[i+(r<<1)>>1]|0,n)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}}else if((f|0)>0){r=s+1|0;a=s+2|0;l=0;while(1){d=Zi(Ji[i>>1]|0,u)|0;c=i+2|0;b=Zi(Ji[c>>1]|0,t)|0;w=i;i=i+(s<<1)|0;h=Zi(Ji[i>>1]|0,o)|0;k=w+(r<<1)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((d+32+b+h+(Zi(Ji[k>>1]|0,n)|0)|0)>>>6)|0)>>>1;h=e+2|0;c=Zi(Ji[c>>1]|0,u)|0;b=Zi(Ji[w+4>>1]|0,t)|0;k=Zi(Ji[k>>1]|0,o)|0;Gi[h>>1]=((Ji[h>>1]|0)+1+((c+32+b+k+(Zi(Ji[w+(a<<1)>>1]|0,n)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+(s<<1)|0}}}while(0);return}function KC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;s=8-l|0;o=8-a|0;u=Zi(o,s)|0;o=Zi(o,l)|0;s=Zi(s,a)|0;a=Zi(a,l)|0;e:do{if(!a){t=o+s|0;if(!t){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((qi[e>>0]|0)+1+(((Zi(qi[i>>0]|0,u)|0)+32|0)>>>6)|0)>>>1;s=e+1|0;Wi[s>>0]=((qi[s>>0]|0)+1+(((Zi(qi[i+1>>0]|0,u)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break e;else{e=e+r|0;i=i+r|0}}}a=s|0?r:1;if((f|0)>0){n=a+1|0;l=0;while(1){s=Zi(qi[i>>0]|0,u)|0;Wi[e>>0]=((qi[e>>0]|0)+1+((s+32+(Zi(qi[i+a>>0]|0,t)|0)|0)>>>6)|0)>>>1;s=e+1|0;o=Zi(qi[i+1>>0]|0,u)|0;Wi[s>>0]=((qi[s>>0]|0)+1+((o+32+(Zi(qi[i+n>>0]|0,t)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){n=r+1|0;t=r+2|0;l=0;while(1){d=Zi(qi[i>>0]|0,u)|0;c=i+1|0;b=Zi(qi[c>>0]|0,o)|0;w=i;i=i+r|0;h=Zi(qi[i>>0]|0,s)|0;k=w+n|0;Wi[e>>0]=((qi[e>>0]|0)+1+((d+32+b+h+(Zi(qi[k>>0]|0,a)|0)|0)>>>6)|0)>>>1;h=e+1|0;c=Zi(qi[c>>0]|0,u)|0;b=Zi(qi[w+2>>0]|0,o)|0;k=Zi(qi[k>>0]|0,s)|0;Wi[h>>0]=((qi[h>>0]|0)+1+((c+32+b+k+(Zi(qi[w+t>>0]|0,a)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function WC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;o=8-l|0;t=8-a|0;u=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;n=Zi(a,l)|0;s=r>>1;do{if(!n){r=t+o|0;if(!r){if((f|0)>0)l=0;else break;while(1){Gi[e>>1]=((Ji[e>>1]|0)+1+(((Zi(Ji[i>>1]|0,u)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}else{a=o|0?s:1;if((f|0)>0)l=0;else break;while(1){o=Zi(Ji[i>>1]|0,u)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((o+32+(Zi(Ji[i+(a<<1)>>1]|0,r)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(s<<1)|0;i=i+(s<<1)|0}}}}else if((f|0)>0){a=s+1|0;l=0;while(1){k=Zi(Ji[i>>1]|0,u)|0;w=Zi(Ji[i+2>>1]|0,t)|0;r=i;i=i+(s<<1)|0;h=Zi(Ji[i>>1]|0,o)|0;Gi[e>>1]=((Ji[e>>1]|0)+1+((k+32+w+h+(Zi(Ji[r+(a<<1)>>1]|0,n)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+(s<<1)|0}}}while(0);return}function GC(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;o=8-l|0;t=8-a|0;s=Zi(t,o)|0;t=Zi(t,l)|0;o=Zi(o,a)|0;a=Zi(a,l)|0;do{if(!a){n=t+o|0;if(!n){if((f|0)>0)l=0;else break;while(1){Wi[e>>0]=((qi[e>>0]|0)+1+(((Zi(qi[i>>0]|0,s)|0)+32|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}else{a=o|0?r:1;if((f|0)>0)l=0;else break;while(1){o=Zi(qi[i>>0]|0,s)|0;Wi[e>>0]=((qi[e>>0]|0)+1+((o+32+(Zi(qi[i+a>>0]|0,n)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;i=i+r|0}}}}else if((f|0)>0){n=r+1|0;l=0;while(1){k=Zi(qi[i>>0]|0,s)|0;w=Zi(qi[i+1>>0]|0,t)|0;u=i;i=i+r|0;h=Zi(qi[i>>0]|0,o)|0;Wi[e>>0]=((qi[e>>0]|0)+1+((k+32+w+h+(Zi(qi[u+n>>0]|0,a)|0)|0)>>>6)|0)>>>1;l=l+1|0;if((l|0)==(f|0))break;else e=e+r|0}}}while(0);return}function XC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=Ue;Ue=Ue+16|0;f=l;a=(i+-9|0)>>>0<8;Xi[e+128>>2]=a?4:3;Xi[e+124>>2]=a?6:5;e:do{switch(i|0){case 9:{Xi[e+84>>2]=7;Xi[e+88>>2]=8;Xi[e+92>>2]=9;Xi[e+96>>2]=10;Xi[e+100>>2]=1;Xi[e+104>>2]=2;a=(r|0)<2;Xi[e+108>>2]=a?4:3;Xi[e+112>>2]=5;Xi[e+116>>2]=11;Xi[e+120>>2]=a?2:1;Xi[e>>2]=17;Xi[e+4>>2]=18;Xi[e+8>>2]=19;Xi[e+12>>2]=20;Xi[e+16>>2]=1;Xi[e+20>>2]=2;Xi[e+24>>2]=3;Xi[e+28>>2]=4;Xi[e+32>>2]=6;Xi[e+36>>2]=7;Xi[e+40>>2]=8;Xi[e+44>>2]=2;Xi[e+48>>2]=3;Xi[e+52>>2]=4;Xi[e+56>>2]=9;Xi[e+60>>2]=a?11:10;Xi[e+64>>2]=a?13:12;Xi[e+68>>2]=5;Xi[e+72>>2]=a?7:6;Xi[e+76>>2]=a?9:8;Xi[e+80>>2]=0;break}case 10:{Xi[e+84>>2]=12;Xi[e+88>>2]=13;Xi[e+92>>2]=14;Xi[e+96>>2]=15;Xi[e+100>>2]=14;Xi[e+104>>2]=15;a=(r|0)<2;Xi[e+108>>2]=a?17:16;Xi[e+112>>2]=18;Xi[e+116>>2]=16;Xi[e+120>>2]=a?4:3;Xi[e>>2]=21;Xi[e+4>>2]=22;Xi[e+8>>2]=23;Xi[e+12>>2]=24;Xi[e+16>>2]=5;Xi[e+20>>2]=6;Xi[e+24>>2]=7;Xi[e+28>>2]=8;Xi[e+32>>2]=19;Xi[e+36>>2]=20;Xi[e+40>>2]=21;Xi[e+44>>2]=10;Xi[e+48>>2]=11;Xi[e+52>>2]=12;Xi[e+56>>2]=22;Xi[e+60>>2]=a?24:23;Xi[e+64>>2]=a?26:25;Xi[e+68>>2]=13;Xi[e+72>>2]=a?15:14;Xi[e+76>>2]=a?17:16;Xi[e+80>>2]=0;break}case 12:{Xi[e+84>>2]=17;Xi[e+88>>2]=18;Xi[e+92>>2]=19;Xi[e+96>>2]=20;Xi[e+100>>2]=27;Xi[e+104>>2]=28;a=(r|0)<2;Xi[e+108>>2]=a?30:29;Xi[e+112>>2]=31;Xi[e+116>>2]=21;Xi[e+120>>2]=a?6:5;Xi[e>>2]=25;Xi[e+4>>2]=26;Xi[e+8>>2]=27;Xi[e+12>>2]=28;Xi[e+16>>2]=9;Xi[e+20>>2]=10;Xi[e+24>>2]=11;Xi[e+28>>2]=12;Xi[e+32>>2]=32;Xi[e+36>>2]=33;Xi[e+40>>2]=34;Xi[e+44>>2]=18;Xi[e+48>>2]=19;Xi[e+52>>2]=20;Xi[e+56>>2]=35;Xi[e+60>>2]=a?37:36;Xi[e+64>>2]=a?39:38;Xi[e+68>>2]=21;Xi[e+72>>2]=a?23:22;Xi[e+76>>2]=a?25:24;Xi[e+80>>2]=0;break}case 14:{Xi[e+84>>2]=22;Xi[e+88>>2]=23;Xi[e+92>>2]=24;Xi[e+96>>2]=25;Xi[e+100>>2]=40;Xi[e+104>>2]=41;a=(r|0)<2;Xi[e+108>>2]=a?43:42;Xi[e+112>>2]=44;Xi[e+116>>2]=26;Xi[e+120>>2]=a?8:7;Xi[e>>2]=29;Xi[e+4>>2]=30;Xi[e+8>>2]=31;Xi[e+12>>2]=32;Xi[e+16>>2]=13;Xi[e+20>>2]=14;Xi[e+24>>2]=15;Xi[e+28>>2]=16;Xi[e+32>>2]=45;Xi[e+36>>2]=46;Xi[e+40>>2]=47;Xi[e+44>>2]=26;Xi[e+48>>2]=27;Xi[e+52>>2]=28;Xi[e+56>>2]=48;Xi[e+60>>2]=a?50:49;Xi[e+64>>2]=a?52:51;Xi[e+68>>2]=29;Xi[e+72>>2]=a?31:30;Xi[e+76>>2]=a?33:32;Xi[e+80>>2]=0;break}default:if((i|0)<9){Xi[e+84>>2]=27;Xi[e+88>>2]=28;Xi[e+92>>2]=29;Xi[e+96>>2]=30;Xi[e+100>>2]=53;Xi[e+104>>2]=54;a=(r|0)<2;Xi[e+108>>2]=a?56:55;Xi[e+112>>2]=57;Xi[e+116>>2]=31;Xi[e+120>>2]=a?10:9;Xi[e>>2]=33;Xi[e+4>>2]=34;Xi[e+8>>2]=35;Xi[e+12>>2]=36;Xi[e+16>>2]=17;Xi[e+20>>2]=18;Xi[e+24>>2]=19;Xi[e+28>>2]=20;Xi[e+32>>2]=58;Xi[e+36>>2]=59;Xi[e+40>>2]=60;Xi[e+44>>2]=34;Xi[e+48>>2]=35;Xi[e+52>>2]=36;Xi[e+56>>2]=61;Xi[e+60>>2]=a?63:62;Xi[e+64>>2]=a?65:64;Xi[e+68>>2]=37;Xi[e+72>>2]=a?39:38;Xi[e+76>>2]=a?41:40;Xi[e+80>>2]=0;break e}else{Xi[f>>2]=120700;Xi[f+4>>2]=120622;Xi[f+8>>2]=150;nA(0,0,150445,f);$e()}}}while(0);Xi[e+132>>2]=4;Ue=l;return}function qC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=r>>>1;r=0;f=i;while(1){Gi[e>>1]=(Ji[e>>1]|0)+(Xi[f>>2]|0);a=e+2|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+4>>2]|0);a=e+4|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+8>>2]|0);a=e+6|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+12>>2]|0);r=r+1|0;if((r|0)==4)break;else{e=e+(l<<1)|0;f=f+16|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function JC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=0;l=i;while(1){Wi[e>>0]=(qi[e>>0]|0)+(Ji[l>>1]|0);a=e+1|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+2>>1]|0);a=e+2|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+4>>1]|0);a=e+3|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+6>>1]|0);f=f+1|0;if((f|0)==4)break;else{e=e+r|0;l=l+8|0}}e=i+32|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function ZC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;l=r>>>1;r=0;f=i;while(1){Gi[e>>1]=(Ji[e>>1]|0)+(Xi[f>>2]|0);a=e+2|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+4>>2]|0);a=e+4|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+8>>2]|0);a=e+6|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+12>>2]|0);a=e+8|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+16>>2]|0);a=e+10|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+20>>2]|0);a=e+12|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+24>>2]|0);a=e+14|0;Gi[a>>1]=(Ji[a>>1]|0)+(Xi[f+28>>2]|0);r=r+1|0;if((r|0)==8)break;else{e=e+(l<<1)|0;f=f+32|0}}jT(i|0,0,256)|0;return}function QC(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=0;l=i;while(1){Wi[e>>0]=(qi[e>>0]|0)+(Ji[l>>1]|0);a=e+1|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+2>>1]|0);a=e+2|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+4>>1]|0);a=e+3|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+6>>1]|0);a=e+4|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+8>>1]|0);a=e+5|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+10>>1]|0);a=e+6|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+12>>1]|0);a=e+7|0;Wi[a>>0]=(qi[a>>0]|0)+(Ji[l+14>>1]|0);f=f+1|0;if((f|0)==8)break;else{e=e+r|0;l=l+16|0}}e=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(e|0));return}function $C(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+1;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+16|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+18|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+20|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+22|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+24|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+26|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+28|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+30|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function eP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+1;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function iP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+1;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function rP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+1;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=512)a=0-a>>31&511;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function fP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<1|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+16>>1]|0,n)|0;t=e+16|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+18>>1]|0,n)|0;t=e+18|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+20>>1]|0,n)|0;t=e+20|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+22>>1]|0,n)|0;t=e+22|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+24>>1]|0,n)|0;t=e+24|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+26>>1]|0,n)|0;t=e+26|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+28>>1]|0,n)|0;t=e+28|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+30>>1]|0,n)|0;t=e+30|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function lP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<1|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function aP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<1|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function nP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<1|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=512)r=0-r>>31&511;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function tP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;O=i>>1;y=r<<1;E=f<<1;S=0-O|0;_=Zi(O,-2)|0;m=Zi(O,-3)|0;p=O<<1;F=0;while(1){i=Wi[l+F>>0]|0;v=i<<24>>24<<1;if(i<<24>>24>=0){w=i<<24>>24==0;k=v|1;b=0-v|0;c=0;d=e;while(1){u=d+(S<<1)|0;s=Ji[u>>1]|0;r=d+(_<<1)|0;t=Ji[r>>1]|0;f=Ji[d+(m<<1)>>1]|0;h=Ji[d>>1]|0;a=d+(O<<1)|0;o=Ji[a>>1]|0;n=Ji[d+(p<<1)>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(y|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(w|i)i=i?v:k;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(b|0)?b:(i|0)>(v|0)?v:i)+t;i=k}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!w){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(b|0)?b:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=512)i=0-i>>31&511;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=512)i=0-i>>31&511;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+2|0}}F=F+1|0;if((F|0)==4)break;else e=e+8|0}return}function oP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<1;E=f<<1;S=p<<2;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<1;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=512)i=0-i>>31&511;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=512)i=0-i>>31&511;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function sP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<1;E=f<<1;S=p<<1;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<1;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=512)i=0-i>>31&511;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=512)i=0-i>>31&511;Gi[d>>1]=i}c=c+1|0;if((c|0)==2)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function uP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;F=i>>1;p=r<<1;b=f<<1;c=Zi(F,-3)|0;d=Zi(F,-2)|0;v=0-F|0;E=F<<1;S=(p>>2)+2|0;_=Zi(F,-4)|0;k=F*3|0;m=0;while(1){i=e+(c<<1)|0;r=Ji[i>>1]|0;f=e+(d<<1)|0;l=Ji[f>>1]|0;a=e+(v<<1)|0;n=Ji[a>>1]|0;t=Ji[e>>1]|0;o=e+(F<<1)|0;s=Ji[o>>1]|0;u=e+(E<<1)|0;h=Ji[u>>1]|0;w=n-t|0;w=(w|0)>-1?w:0-w|0;do{if(((w|0)<(p|0)?(y=l-n|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0)?(y=s-t|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0){if((w|0)>=(S|0)){Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}y=r-n|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(_<<1)>>1]|0;Gi[a>>1]=(r+4+s+(n+l+t<<1)|0)>>>3;Gi[f>>1]=(r+2+l+n+t|0)>>>2;Gi[i>>1]=((r*3|0)+4+l+n+t+(y<<1)|0)>>>3}else Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;y=h-t|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(k<<1)>>1]|0;Gi[e>>1]=(l+4+h+(t+n+s<<1)|0)>>>3;Gi[o>>1]=(n+2+t+s+h|0)>>>2;Gi[u>>1]=(n+4+t+s+(h*3|0)+(y<<1)|0)>>>3;break}else{Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}}}while(0);m=m+1|0;if((m|0)==16)break;else e=e+2|0}return}function hP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<1;k=f<<1;b=(d>>2)+2|0;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==16)break;else e=e+(v<<1)|0}return}function wP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<1;k=f<<1;b=(d>>2)+2|0;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==8)break;else e=e+(v<<1)|0}return}function kP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r<<1;c=f<<1;h=i>>1;w=0-h|0;k=Zi(h,-2)|0;b=0;while(1){r=Wi[l+b>>0]<<1;u=r+-1|0;if((r|0)>=2){t=1-r|0;o=0;s=e;while(1){a=s+(w<<1)|0;i=Ji[a>>1]|0;r=Ji[s+(k<<1)>>1]|0;n=Ji[s>>1]|0;f=Ji[s+(h<<1)>>1]|0;v=i-n|0;if(((((v|0)>-1?v:0-v|0)|0)<(d|0)?(v=r-i|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0)?(v=f-n|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=512)r=0-r>>31&511;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+2|0}}b=b+1|0;if((b|0)==4)break;else e=e+4|0}return}function bP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<1;b=f<<1;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<1;u=r+-1|0;if((r|0)>=2){t=1-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=512)r=0-r>>31&511;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function cP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<1;b=f<<1;h=i>>1;w=h<<2;k=0;while(1){r=Wi[l+k>>0]<<1;u=r+-1|0;if((r|0)>=2){t=1-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=512)r=0-r>>31&511;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[s>>1]=r}o=o+1|0;if((o|0)==4)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function dP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;t=r<<1;n=f<<1;i=i>>1;a=0;while(1){r=Wi[l+a>>0]<<1;f=r+-1|0;if((((r|0)>=2?(k=1-r|0,o=e+-2|0,s=Ji[o>>1]|0,u=Ji[e+-4>>1]|0,h=Ji[e>>1]|0,w=Ji[e+2>>1]|0,r=s-h|0,(((r|0)>-1?r:0-r|0)|0)<(t|0)):0)?(r=u-s|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0)?(r=w-h|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0){r=u+4-w+(h-s<<2)>>3;f=(r|0)<(k|0)?k:(r|0)>(f|0)?f:r;r=f+s|0;if(r>>>0>=512)r=0-r>>31&511;Gi[o>>1]=r;r=h-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[e>>1]=r}a=a+1|0;if((a|0)==4)break;else e=e+(i<<1)|0}return}function vP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<1;b=f<<1;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<1;u=r+-1|0;if((r|0)>=2){t=1-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=512)r=0-r>>31&511;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=512)r=0-r>>31&511;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function EP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=i>>1;u=r<<1;n=f<<1;t=0-h|0;o=Zi(h,-2)|0;s=0;while(1){l=e+(t<<1)|0;a=Ji[l>>1]|0;i=Ji[e+(o<<1)>>1]|0;r=Ji[e>>1]|0;f=Ji[e+(h<<1)>>1]|0;w=a-r|0;if(((((w|0)>-1?w:0-w|0)|0)<(u|0)?(w=i-a|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0)?(w=f-r|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0){Gi[l>>1]=(a+2+(i<<1)+f|0)>>>2;Gi[e>>1]=(i+2+r+(f<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+2|0}return}function SP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<1;n=f<<1;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function _P(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<1;n=f<<1;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==16)break;else e=e+(s<<1)|0}return}function mP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<1;n=f<<1;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==4)break;else e=e+(s<<1)|0}return}function pP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<1;n=f<<1;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function FP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+2;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+16|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+18|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+20|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+22|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+24|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+26|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+28|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+30|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function yP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+2;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function OP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+2;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function AP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+2;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=1024)a=0-a>>31&1023;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function gP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<2|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+16>>1]|0,n)|0;t=e+16|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+18>>1]|0,n)|0;t=e+18|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+20>>1]|0,n)|0;t=e+20|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+22>>1]|0,n)|0;t=e+22|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+24>>1]|0,n)|0;t=e+24|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+26>>1]|0,n)|0;t=e+26|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+28>>1]|0,n)|0;t=e+28|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+30>>1]|0,n)|0;t=e+30|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function MP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<2|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function RP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<2|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function TP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<2|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=1024)r=0-r>>31&1023;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function NP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;O=i>>1;y=r<<2;E=f<<2;S=0-O|0;_=Zi(O,-2)|0;m=Zi(O,-3)|0;p=O<<1;F=0;while(1){i=Wi[l+F>>0]|0;v=i<<24>>24<<2;if(i<<24>>24>=0){w=i<<24>>24==0;k=v|1;b=0-v|0;c=0;d=e;while(1){u=d+(S<<1)|0;s=Ji[u>>1]|0;r=d+(_<<1)|0;t=Ji[r>>1]|0;f=Ji[d+(m<<1)>>1]|0;h=Ji[d>>1]|0;a=d+(O<<1)|0;o=Ji[a>>1]|0;n=Ji[d+(p<<1)>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(y|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(w|i)i=i?v:k;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(b|0)?b:(i|0)>(v|0)?v:i)+t;i=k}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!w){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(b|0)?b:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+2|0}}F=F+1|0;if((F|0)==4)break;else e=e+8|0}return}function DP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<2;E=f<<2;S=p<<2;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<2;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function CP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<2;E=f<<2;S=p<<1;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<2;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[d>>1]=i}c=c+1|0;if((c|0)==2)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function PP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;F=i>>1;p=r<<2;b=f<<2;c=Zi(F,-3)|0;d=Zi(F,-2)|0;v=0-F|0;E=F<<1;S=(p>>2)+2|0;_=Zi(F,-4)|0;k=F*3|0;m=0;while(1){i=e+(c<<1)|0;r=Ji[i>>1]|0;f=e+(d<<1)|0;l=Ji[f>>1]|0;a=e+(v<<1)|0;n=Ji[a>>1]|0;t=Ji[e>>1]|0;o=e+(F<<1)|0;s=Ji[o>>1]|0;u=e+(E<<1)|0;h=Ji[u>>1]|0;w=n-t|0;w=(w|0)>-1?w:0-w|0;do{if(((w|0)<(p|0)?(y=l-n|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0)?(y=s-t|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0){if((w|0)>=(S|0)){Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}y=r-n|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(_<<1)>>1]|0;Gi[a>>1]=(r+4+s+(n+l+t<<1)|0)>>>3;Gi[f>>1]=(r+2+l+n+t|0)>>>2;Gi[i>>1]=((r*3|0)+4+l+n+t+(y<<1)|0)>>>3}else Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;y=h-t|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(k<<1)>>1]|0;Gi[e>>1]=(l+4+h+(t+n+s<<1)|0)>>>3;Gi[o>>1]=(n+2+t+s+h|0)>>>2;Gi[u>>1]=(n+4+t+s+(h*3|0)+(y<<1)|0)>>>3;break}else{Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}}}while(0);m=m+1|0;if((m|0)==16)break;else e=e+2|0}return}function LP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<2;k=f<<2;b=(d>>2)+2|0;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==16)break;else e=e+(v<<1)|0}return}function IP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<2;k=f<<2;b=(d>>2)+2|0;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==8)break;else e=e+(v<<1)|0}return}function HP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r<<2;c=f<<2;h=i>>1;w=0-h|0;k=Zi(h,-2)|0;b=0;while(1){r=Wi[l+b>>0]<<2;u=r+-3|0;if((u|0)>=1){t=3-r|0;o=0;s=e;while(1){a=s+(w<<1)|0;i=Ji[a>>1]|0;r=Ji[s+(k<<1)>>1]|0;n=Ji[s>>1]|0;f=Ji[s+(h<<1)>>1]|0;v=i-n|0;if(((((v|0)>-1?v:0-v|0)|0)<(d|0)?(v=r-i|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0)?(v=f-n|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+2|0}}b=b+1|0;if((b|0)==4)break;else e=e+4|0}return}function BP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<2;b=f<<2;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<2;u=r+-3|0;if((u|0)>=1){t=3-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function UP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<2;b=f<<2;h=i>>1;w=h<<2;k=0;while(1){r=Wi[l+k>>0]<<2;u=r+-3|0;if((u|0)>=1){t=3-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[s>>1]=r}o=o+1|0;if((o|0)==4)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function xP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;t=r<<2;n=f<<2;i=i>>1;a=0;while(1){r=Wi[l+a>>0]<<2;f=r+-3|0;if((((f|0)>=1?(k=3-r|0,o=e+-2|0,s=Ji[o>>1]|0,u=Ji[e+-4>>1]|0,h=Ji[e>>1]|0,w=Ji[e+2>>1]|0,r=s-h|0,(((r|0)>-1?r:0-r|0)|0)<(t|0)):0)?(r=u-s|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0)?(r=w-h|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0){r=u+4-w+(h-s<<2)>>3;f=(r|0)<(k|0)?k:(r|0)>(f|0)?f:r;r=f+s|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[o>>1]=r;r=h-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[e>>1]=r}a=a+1|0;if((a|0)==4)break;else e=e+(i<<1)|0}return}function zP(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<2;b=f<<2;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<2;u=r+-3|0;if((u|0)>=1){t=3-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function VP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=i>>1;u=r<<2;n=f<<2;t=0-h|0;o=Zi(h,-2)|0;s=0;while(1){l=e+(t<<1)|0;a=Ji[l>>1]|0;i=Ji[e+(o<<1)>>1]|0;r=Ji[e>>1]|0;f=Ji[e+(h<<1)>>1]|0;w=a-r|0;if(((((w|0)>-1?w:0-w|0)|0)<(u|0)?(w=i-a|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0)?(w=f-r|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0){Gi[l>>1]=(a+2+(i<<1)+f|0)>>>2;Gi[e>>1]=(i+2+r+(f<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+2|0}return}function YP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<2;n=f<<2;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function jP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<2;n=f<<2;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==16)break;else e=e+(s<<1)|0}return}function KP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<2;n=f<<2;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==4)break;else e=e+(s<<1)|0}return}function WP(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<2;n=f<<2;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function GP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+4;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+16|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+18|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+20|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+22|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+24|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+26|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+28|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+30|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function XP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+4;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function qP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+4;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function JP(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+4;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=4096)a=0-a>>31&4095;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function ZP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<4|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+16>>1]|0,n)|0;t=e+16|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+18>>1]|0,n)|0;t=e+18|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+20>>1]|0,n)|0;t=e+20|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+22>>1]|0,n)|0;t=e+22|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+24>>1]|0,n)|0;t=e+24|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+26>>1]|0,n)|0;t=e+26|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+28>>1]|0,n)|0;t=e+28|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+30>>1]|0,n)|0;t=e+30|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function QP(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<4|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function $P(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<4|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function eL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<4|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=4096)r=0-r>>31&4095;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function iL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;O=i>>1;y=r<<4;E=f<<4;S=0-O|0;_=Zi(O,-2)|0;m=Zi(O,-3)|0;p=O<<1;F=0;while(1){i=Wi[l+F>>0]|0;v=i<<24>>24<<4;if(i<<24>>24>=0){w=i<<24>>24==0;k=v|1;b=0-v|0;c=0;d=e;while(1){u=d+(S<<1)|0;s=Ji[u>>1]|0;r=d+(_<<1)|0;t=Ji[r>>1]|0;f=Ji[d+(m<<1)>>1]|0;h=Ji[d>>1]|0;a=d+(O<<1)|0;o=Ji[a>>1]|0;n=Ji[d+(p<<1)>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(y|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(w|i)i=i?v:k;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(b|0)?b:(i|0)>(v|0)?v:i)+t;i=k}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!w){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(b|0)?b:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+2|0}}F=F+1|0;if((F|0)==4)break;else e=e+8|0}return}function rL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<4;E=f<<4;S=p<<2;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<4;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function fL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<4;E=f<<4;S=p<<1;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<4;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[d>>1]=i}c=c+1|0;if((c|0)==2)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function lL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;F=i>>1;p=r<<4;b=f<<4;c=Zi(F,-3)|0;d=Zi(F,-2)|0;v=0-F|0;E=F<<1;S=p>>2|2;_=Zi(F,-4)|0;k=F*3|0;m=0;while(1){i=e+(c<<1)|0;r=Ji[i>>1]|0;f=e+(d<<1)|0;l=Ji[f>>1]|0;a=e+(v<<1)|0;n=Ji[a>>1]|0;t=Ji[e>>1]|0;o=e+(F<<1)|0;s=Ji[o>>1]|0;u=e+(E<<1)|0;h=Ji[u>>1]|0;w=n-t|0;w=(w|0)>-1?w:0-w|0;do{if(((w|0)<(p|0)?(y=l-n|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0)?(y=s-t|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0){if((w|0)>=(S|0)){Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}y=r-n|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(_<<1)>>1]|0;Gi[a>>1]=(r+4+s+(n+l+t<<1)|0)>>>3;Gi[f>>1]=(r+2+l+n+t|0)>>>2;Gi[i>>1]=((r*3|0)+4+l+n+t+(y<<1)|0)>>>3}else Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;y=h-t|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(k<<1)>>1]|0;Gi[e>>1]=(l+4+h+(t+n+s<<1)|0)>>>3;Gi[o>>1]=(n+2+t+s+h|0)>>>2;Gi[u>>1]=(n+4+t+s+(h*3|0)+(y<<1)|0)>>>3;break}else{Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}}}while(0);m=m+1|0;if((m|0)==16)break;else e=e+2|0}return}function aL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<4;k=f<<4;b=d>>2|2;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==16)break;else e=e+(v<<1)|0}return}function nL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<4;k=f<<4;b=d>>2|2;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==8)break;else e=e+(v<<1)|0}return}function tL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r<<4;c=f<<4;h=i>>1;w=0-h|0;k=Zi(h,-2)|0;b=0;while(1){r=Wi[l+b>>0]<<4;u=r+-15|0;if((u|0)>=1){t=15-r|0;o=0;s=e;while(1){a=s+(w<<1)|0;i=Ji[a>>1]|0;r=Ji[s+(k<<1)>>1]|0;n=Ji[s>>1]|0;f=Ji[s+(h<<1)>>1]|0;v=i-n|0;if(((((v|0)>-1?v:0-v|0)|0)<(d|0)?(v=r-i|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0)?(v=f-n|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+2|0}}b=b+1|0;if((b|0)==4)break;else e=e+4|0}return}function oL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<4;b=f<<4;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<4;u=r+-15|0;if((u|0)>=1){t=15-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function sL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<4;b=f<<4;h=i>>1;w=h<<2;k=0;while(1){r=Wi[l+k>>0]<<4;u=r+-15|0;if((u|0)>=1){t=15-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[s>>1]=r}o=o+1|0;if((o|0)==4)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function uL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;t=r<<4;n=f<<4;i=i>>1;a=0;while(1){r=Wi[l+a>>0]<<4;f=r+-15|0;if((((f|0)>=1?(k=15-r|0,o=e+-2|0,s=Ji[o>>1]|0,u=Ji[e+-4>>1]|0,h=Ji[e>>1]|0,w=Ji[e+2>>1]|0,r=s-h|0,(((r|0)>-1?r:0-r|0)|0)<(t|0)):0)?(r=u-s|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0)?(r=w-h|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0){r=u+4-w+(h-s<<2)>>3;f=(r|0)<(k|0)?k:(r|0)>(f|0)?f:r;r=f+s|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[o>>1]=r;r=h-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[e>>1]=r}a=a+1|0;if((a|0)==4)break;else e=e+(i<<1)|0}return}function hL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<4;b=f<<4;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<4;u=r+-15|0;if((u|0)>=1){t=15-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function wL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=i>>1;u=r<<4;n=f<<4;t=0-h|0;o=Zi(h,-2)|0;s=0;while(1){l=e+(t<<1)|0;a=Ji[l>>1]|0;i=Ji[e+(o<<1)>>1]|0;r=Ji[e>>1]|0;f=Ji[e+(h<<1)>>1]|0;w=a-r|0;if(((((w|0)>-1?w:0-w|0)|0)<(u|0)?(w=i-a|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0)?(w=f-r|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0){Gi[l>>1]=(a+2+(i<<1)+f|0)>>>2;Gi[e>>1]=(i+2+r+(f<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+2|0}return}function kL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<4;n=f<<4;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function bL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<4;n=f<<4;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==16)break;else e=e+(s<<1)|0}return}function cL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<4;n=f<<4;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==4)break;else e=e+(s<<1)|0}return}function dL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<4;n=f<<4;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function vL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+6;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+16|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+18|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+20|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+22|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+24|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+26|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+28|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+30|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function EL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+6;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+8|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+10|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+12|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+14|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function SL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+6;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+4|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;n=e+6|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function _L(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;o=i>>1;i=a<<f+6;if(f)i=i+(1<<f+-1)|0;if((r|0)>0){t=0;while(1){a=(Zi(Ji[e>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[e>>1]=a;n=e+2|0;a=(Zi(Ji[n>>1]|0,l)|0)+i>>f;if(a>>>0>=16384)a=0-a>>31&16383;Gi[n>>1]=a;t=t+1|0;if((t|0)==(r|0))break;else e=e+(o<<1)|0}}return}function mL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<6|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+16>>1]|0,n)|0;t=e+16|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+18>>1]|0,n)|0;t=e+18|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+20>>1]|0,n)|0;t=e+20|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+22>>1]|0,n)|0;t=e+22|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+24>>1]|0,n)|0;t=e+24|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+26>>1]|0,n)|0;t=e+26|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+28>>1]|0,n)|0;t=e+28|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+30>>1]|0,n)|0;t=e+30|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function pL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<6|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+8>>1]|0,n)|0;t=e+8|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+10>>1]|0,n)|0;t=e+10|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+12>>1]|0,n)|0;t=e+12|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+14>>1]|0,n)|0;t=e+14|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function FL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<6|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+4>>1]|0,n)|0;t=e+4|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;r=Zi(Ji[i+6>>1]|0,n)|0;t=e+6|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function yL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;u=r>>1;s=(t<<6|1)<<l;if((f|0)>0){o=l+1|0;l=0;while(1){r=Zi(Ji[i>>1]|0,n)|0;r=r+s+(Zi(Ji[e>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r;r=Zi(Ji[i+2>>1]|0,n)|0;t=e+2|0;r=r+s+(Zi(Ji[t>>1]|0,a)|0)>>o;if(r>>>0>=16384)r=0-r>>31&16383;Gi[t>>1]=r;l=l+1|0;if((l|0)==(f|0))break;else{e=e+(u<<1)|0;i=i+(u<<1)|0}}}return}function OL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;O=i>>1;y=r<<6;E=f<<6;S=0-O|0;_=Zi(O,-2)|0;m=Zi(O,-3)|0;p=O<<1;F=0;while(1){i=Wi[l+F>>0]|0;v=i<<24>>24<<6;if(i<<24>>24>=0){w=i<<24>>24==0;k=v|1;b=0-v|0;c=0;d=e;while(1){u=d+(S<<1)|0;s=Ji[u>>1]|0;r=d+(_<<1)|0;t=Ji[r>>1]|0;f=Ji[d+(m<<1)>>1]|0;h=Ji[d>>1]|0;a=d+(O<<1)|0;o=Ji[a>>1]|0;n=Ji[d+(p<<1)>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(y|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(w|i)i=i?v:k;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(b|0)?b:(i|0)>(v|0)?v:i)+t;i=k}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!w){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(b|0)?b:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+2|0}}F=F+1|0;if((F|0)==4)break;else e=e+8|0}return}function AL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<6;E=f<<6;S=p<<2;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<6;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[d>>1]=i}c=c+1|0;if((c|0)==4)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function gL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;p=i>>1;m=r<<6;E=f<<6;S=p<<1;_=0;while(1){i=Wi[l+_>>0]|0;v=i<<24>>24<<6;if(i<<24>>24>=0){b=i<<24>>24==0;w=v|1;k=0-v|0;c=0;d=e;while(1){u=d+-2|0;s=Ji[u>>1]|0;r=d+-4|0;t=Ji[r>>1]|0;f=Ji[d+-6>>1]|0;h=Ji[d>>1]|0;a=d+2|0;o=Ji[a>>1]|0;n=Ji[d+4>>1]|0;i=s-h|0;if(((((i|0)>-1?i:0-i|0)|0)<(m|0)?(i=t-s|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0)?(i=o-h|0,(((i|0)>-1?i:0-i|0)|0)<(E|0)):0){i=f-s|0;i=(((i|0)>-1?i:0-i|0)|0)>=(E|0);if(b|i)i=i?v:w;else{i=((((s+1+h|0)>>>1)+f|0)>>>1)-t|0;Gi[r>>1]=((i|0)<(k|0)?k:(i|0)>(v|0)?v:i)+t;i=w}f=n-h|0;if((((f|0)>-1?f:0-f|0)|0)<(E|0)){if(!b){n=((((s+1+h|0)>>>1)+n|0)>>>1)-o|0;Gi[a>>1]=((n|0)<(k|0)?k:(n|0)>(v|0)?v:n)+o}i=i+1|0}r=t+4-o+(h-s<<2)>>3;o=0-i|0;r=(r|0)<(o|0)?o:(r|0)>(i|0)?i:r;i=r+s|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[u>>1]=i;i=h-r|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[d>>1]=i}c=c+1|0;if((c|0)==2)break;else d=d+(p<<1)|0}}_=_+1|0;if((_|0)==4)break;else e=e+(S<<1)|0}return}function ML(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;F=i>>1;p=r<<6;b=f<<6;c=Zi(F,-3)|0;d=Zi(F,-2)|0;v=0-F|0;E=F<<1;S=p>>2|2;_=Zi(F,-4)|0;k=F*3|0;m=0;while(1){i=e+(c<<1)|0;r=Ji[i>>1]|0;f=e+(d<<1)|0;l=Ji[f>>1]|0;a=e+(v<<1)|0;n=Ji[a>>1]|0;t=Ji[e>>1]|0;o=e+(F<<1)|0;s=Ji[o>>1]|0;u=e+(E<<1)|0;h=Ji[u>>1]|0;w=n-t|0;w=(w|0)>-1?w:0-w|0;do{if(((w|0)<(p|0)?(y=l-n|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0)?(y=s-t|0,(((y|0)>-1?y:0-y|0)|0)<(b|0)):0){if((w|0)>=(S|0)){Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}y=r-n|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(_<<1)>>1]|0;Gi[a>>1]=(r+4+s+(n+l+t<<1)|0)>>>3;Gi[f>>1]=(r+2+l+n+t|0)>>>2;Gi[i>>1]=((r*3|0)+4+l+n+t+(y<<1)|0)>>>3}else Gi[a>>1]=(n+2+(l<<1)+s|0)>>>2;y=h-t|0;if((((y|0)>-1?y:0-y|0)|0)<(b|0)){y=Ji[e+(k<<1)>>1]|0;Gi[e>>1]=(l+4+h+(t+n+s<<1)|0)>>>3;Gi[o>>1]=(n+2+t+s+h|0)>>>2;Gi[u>>1]=(n+4+t+s+(h*3|0)+(y<<1)|0)>>>3;break}else{Gi[e>>1]=(l+2+t+(s<<1)|0)>>>2;break}}}while(0);m=m+1|0;if((m|0)==16)break;else e=e+2|0}return}function RL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<6;k=f<<6;b=d>>2|2;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==16)break;else e=e+(v<<1)|0}return}function TL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;v=i>>1;d=r<<6;k=f<<6;b=d>>2|2;c=0;while(1){u=e+-6|0;h=Ji[u>>1]|0;w=e+-4|0;i=Ji[w>>1]|0;r=e+-2|0;f=Ji[r>>1]|0;l=Ji[e>>1]|0;a=e+2|0;n=Ji[a>>1]|0;t=e+4|0;o=Ji[t>>1]|0;s=f-l|0;s=(s|0)>-1?s:0-s|0;do{if(((s|0)<(d|0)?(E=i-f|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0)?(E=n-l|0,(((E|0)>-1?E:0-E|0)|0)<(k|0)):0){if((s|0)>=(b|0)){Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}E=h-f|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+-8>>1]|0;Gi[r>>1]=(h+4+n+(f+i+l<<1)|0)>>>3;Gi[w>>1]=(h+2+i+f+l|0)>>>2;Gi[u>>1]=((h*3|0)+4+i+f+l+(E<<1)|0)>>>3}else Gi[r>>1]=(f+2+(i<<1)+n|0)>>>2;E=o-l|0;if((((E|0)>-1?E:0-E|0)|0)<(k|0)){E=Ji[e+6>>1]|0;Gi[e>>1]=(i+4+o+(l+f+n<<1)|0)>>>3;Gi[a>>1]=(f+2+l+n+o|0)>>>2;Gi[t>>1]=(f+4+l+n+(o*3|0)+(E<<1)|0)>>>3;break}else{Gi[e>>1]=(i+2+l+(n<<1)|0)>>>2;break}}}while(0);c=c+1|0;if((c|0)==8)break;else e=e+(v<<1)|0}return}function NL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;d=r<<6;c=f<<6;h=i>>1;w=0-h|0;k=Zi(h,-2)|0;b=0;while(1){r=Wi[l+b>>0]<<6;u=r+-63|0;if((u|0)>=1){t=63-r|0;o=0;s=e;while(1){a=s+(w<<1)|0;i=Ji[a>>1]|0;r=Ji[s+(k<<1)>>1]|0;n=Ji[s>>1]|0;f=Ji[s+(h<<1)>>1]|0;v=i-n|0;if(((((v|0)>-1?v:0-v|0)|0)<(d|0)?(v=r-i|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0)?(v=f-n|0,(((v|0)>-1?v:0-v|0)|0)<(c|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+2|0}}b=b+1|0;if((b|0)==4)break;else e=e+4|0}return}function DL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<6;b=f<<6;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<6;u=r+-63|0;if((u|0)>=1){t=63-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function CL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<6;b=f<<6;h=i>>1;w=h<<2;k=0;while(1){r=Wi[l+k>>0]<<6;u=r+-63|0;if((u|0)>=1){t=63-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[s>>1]=r}o=o+1|0;if((o|0)==4)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function PL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;t=r<<6;n=f<<6;i=i>>1;a=0;while(1){r=Wi[l+a>>0]<<6;f=r+-63|0;if((((f|0)>=1?(k=63-r|0,o=e+-2|0,s=Ji[o>>1]|0,u=Ji[e+-4>>1]|0,h=Ji[e>>1]|0,w=Ji[e+2>>1]|0,r=s-h|0,(((r|0)>-1?r:0-r|0)|0)<(t|0)):0)?(r=u-s|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0)?(r=w-h|0,(((r|0)>-1?r:0-r|0)|0)<(n|0)):0){r=u+4-w+(h-s<<2)>>3;f=(r|0)<(k|0)?k:(r|0)>(f|0)?f:r;r=f+s|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[o>>1]=r;r=h-f|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[e>>1]=r}a=a+1|0;if((a|0)==4)break;else e=e+(i<<1)|0}return}function LL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;c=r<<6;b=f<<6;h=i>>1;w=h<<1;k=0;while(1){r=Wi[l+k>>0]<<6;u=r+-63|0;if((u|0)>=1){t=63-r|0;o=0;s=e;while(1){a=s+-2|0;i=Ji[a>>1]|0;r=Ji[s+-4>>1]|0;n=Ji[s>>1]|0;f=Ji[s+2>>1]|0;d=i-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(c|0)?(d=r-i|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0)?(d=f-n|0,(((d|0)>-1?d:0-d|0)|0)<(b|0)):0){f=r+4-f+(n-i<<2)>>3;f=(f|0)<(t|0)?t:(f|0)>(u|0)?u:f;r=f+i|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[a>>1]=r;r=n-f|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[s>>1]=r}o=o+1|0;if((o|0)==2)break;else s=s+(h<<1)|0}}k=k+1|0;if((k|0)==4)break;else e=e+(w<<1)|0}return}function IL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;h=i>>1;u=r<<6;n=f<<6;t=0-h|0;o=Zi(h,-2)|0;s=0;while(1){l=e+(t<<1)|0;a=Ji[l>>1]|0;i=Ji[e+(o<<1)>>1]|0;r=Ji[e>>1]|0;f=Ji[e+(h<<1)>>1]|0;w=a-r|0;if(((((w|0)>-1?w:0-w|0)|0)<(u|0)?(w=i-a|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0)?(w=f-r|0,(((w|0)>-1?w:0-w|0)|0)<(n|0)):0){Gi[l>>1]=(a+2+(i<<1)+f|0)>>>2;Gi[e>>1]=(i+2+r+(f<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+2|0}return}function HL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<6;n=f<<6;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function BL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<6;n=f<<6;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==16)break;else e=e+(s<<1)|0}return}function UL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<6;n=f<<6;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==4)break;else e=e+(s<<1)|0}return}function xL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=i>>1;o=r<<6;n=f<<6;t=0;while(1){f=e+-2|0;l=Ji[f>>1]|0;a=Ji[e+-4>>1]|0;i=Ji[e>>1]|0;r=Ji[e+2>>1]|0;u=l-i|0;if(((((u|0)>-1?u:0-u|0)|0)<(o|0)?(u=a-l|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0)?(u=r-i|0,(((u|0)>-1?u:0-u|0)|0)<(n|0)):0){Gi[f>>1]=(l+2+(a<<1)+r|0)>>>2;Gi[e>>1]=(a+2+i+(r<<1)|0)>>>2}t=t+1|0;if((t|0)==8)break;else e=e+(s<<1)|0}return}function zL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;a=a<<f;if(f)a=a+(1<<f+-1)|0;if((r|0)>0){n=0;while(1){t=(Zi(qi[e>>0]|0,l)|0)+a>>f;Wi[e>>0]=t>>>0>255?0-t>>31:t;t=e+1|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+2|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+3|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+4|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+5|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+6|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+7|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+8|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+9|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+10|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+11|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+12|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+13|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+14|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+15|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;n=n+1|0;if((n|0)==(r|0))break;else e=e+i|0}}return}function VL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;a=a<<f;if(f)a=a+(1<<f+-1)|0;if((r|0)>0){n=0;while(1){t=(Zi(qi[e>>0]|0,l)|0)+a>>f;Wi[e>>0]=t>>>0>255?0-t>>31:t;t=e+1|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+2|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+3|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+4|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+5|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+6|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+7|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;n=n+1|0;if((n|0)==(r|0))break;else e=e+i|0}}return}function YL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;a=a<<f;if(f)a=a+(1<<f+-1)|0;if((r|0)>0){n=0;while(1){t=(Zi(qi[e>>0]|0,l)|0)+a>>f;Wi[e>>0]=t>>>0>255?0-t>>31:t;t=e+1|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+2|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;t=e+3|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;n=n+1|0;if((n|0)==(r|0))break;else e=e+i|0}}return}function jL(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;var n=0,t=0,o=0;a=a<<f;if(f)a=a+(1<<f+-1)|0;if((r|0)>0){n=0;while(1){t=(Zi(qi[e>>0]|0,l)|0)+a>>f;Wi[e>>0]=t>>>0>255?0-t>>31:t;t=e+1|0;o=(Zi(qi[t>>0]|0,l)|0)+a>>f;Wi[t>>0]=o>>>0>255?0-o>>31:o;n=n+1|0;if((n|0)==(r|0))break;else e=e+i|0}}return}function KL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;s=(t+1|1)<<l;if((f|0)>0){o=l+1|0;t=i;l=0;while(1){u=Zi(qi[t>>0]|0,n)|0;u=u+s+(Zi(qi[e>>0]|0,a)|0)>>o;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi(qi[t+1>>0]|0,n)|0;i=e+1|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+2>>0]|0,n)|0;u=e+2|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+3>>0]|0,n)|0;i=e+3|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+4>>0]|0,n)|0;u=e+4|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+5>>0]|0,n)|0;i=e+5|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+6>>0]|0,n)|0;u=e+6|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+7>>0]|0,n)|0;i=e+7|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+8>>0]|0,n)|0;u=e+8|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+9>>0]|0,n)|0;i=e+9|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+10>>0]|0,n)|0;u=e+10|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+11>>0]|0,n)|0;i=e+11|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+12>>0]|0,n)|0;u=e+12|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+13>>0]|0,n)|0;i=e+13|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+14>>0]|0,n)|0;u=e+14|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+15>>0]|0,n)|0;i=e+15|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;t=t+r|0}}}return}function WL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;s=(t+1|1)<<l;if((f|0)>0){o=l+1|0;t=i;l=0;while(1){u=Zi(qi[t>>0]|0,n)|0;u=u+s+(Zi(qi[e>>0]|0,a)|0)>>o;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi(qi[t+1>>0]|0,n)|0;i=e+1|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+2>>0]|0,n)|0;u=e+2|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+3>>0]|0,n)|0;i=e+3|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+4>>0]|0,n)|0;u=e+4|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+5>>0]|0,n)|0;i=e+5|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+6>>0]|0,n)|0;u=e+6|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+7>>0]|0,n)|0;i=e+7|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;t=t+r|0}}}return}function GL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;s=(t+1|1)<<l;if((f|0)>0){o=l+1|0;t=i;l=0;while(1){u=Zi(qi[t>>0]|0,n)|0;u=u+s+(Zi(qi[e>>0]|0,a)|0)>>o;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi(qi[t+1>>0]|0,n)|0;i=e+1|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;i=Zi(qi[t+2>>0]|0,n)|0;u=e+2|0;i=i+s+(Zi(qi[u>>0]|0,a)|0)>>o;Wi[u>>0]=i>>>0>255?0-i>>31:i;u=Zi(qi[t+3>>0]|0,n)|0;i=e+3|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;t=t+r|0}}}return}function XL(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;var o=0,s=0,u=0;s=(t+1|1)<<l;if((f|0)>0){o=l+1|0;t=i;l=0;while(1){u=Zi(qi[t>>0]|0,n)|0;u=u+s+(Zi(qi[e>>0]|0,a)|0)>>o;Wi[e>>0]=u>>>0>255?0-u>>31:u;u=Zi(qi[t+1>>0]|0,n)|0;i=e+1|0;u=u+s+(Zi(qi[i>>0]|0,a)|0)>>o;Wi[i>>0]=u>>>0>255?0-u>>31:u;l=l+1|0;if((l|0)==(f|0))break;else{e=e+r|0;t=t+r|0}}}return}function qL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0;m=0-i|0;p=Zi(i,-2)|0;F=Zi(i,-3)|0;y=i<<1;O=0;while(1){a=Wi[l+O>>0]|0;_=a<<24>>24;if(a<<24>>24>=0){d=a<<24>>24==0;v=_+1|0;u=0-_|0;E=0;S=e;while(1){h=S+m|0;w=qi[h>>0]|0;n=S+p|0;k=qi[n>>0]|0;t=qi[S+F>>0]|0;b=qi[S>>0]|0;o=S+i|0;c=qi[o>>0]|0;s=qi[S+y>>0]|0;a=w-b|0;if(((((a|0)>-1?a:0-a|0)|0)<(r|0)?(a=k-w|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0)?(a=c-b|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0){a=t-w|0;a=(((a|0)>-1?a:0-a|0)|0)>=(f|0);if(d|a)a=a?_:v;else{a=((((w+1+b|0)>>>1)+t|0)>>>1)-k|0;Wi[n>>0]=((a|0)<(u|0)?u:(a|0)>(_|0)?_:a)+k;a=v}t=s-b|0;if((((t|0)>-1?t:0-t|0)|0)<(f|0)){if(!d){s=((((w+1+b|0)>>>1)+s|0)>>>1)-c|0;Wi[o>>0]=((s|0)<(u|0)?u:(s|0)>(_|0)?_:s)+c}a=a+1|0}c=k+4-c+(b-w<<2)>>3;k=0-a|0;c=(c|0)<(k|0)?k:(c|0)>(a|0)?a:c;k=c+w|0;Wi[h>>0]=k>>>0>255?0-k>>31:k;c=b-c|0;Wi[S>>0]=c>>>0>255?0-c>>31:c}E=E+1|0;if((E|0)==4)break;else S=S+1|0}}O=O+1|0;if((O|0)==4)break;else e=e+4|0}return}function JL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;m=i<<2;p=0;while(1){a=Wi[l+p>>0]|0;_=a<<24>>24;if(a<<24>>24>=0){b=a<<24>>24==0;c=_+1|0;d=0-_|0;E=0;S=e;while(1){v=S+-1|0;u=qi[v>>0]|0;n=S+-2|0;h=qi[n>>0]|0;t=qi[S+-3>>0]|0;w=qi[S>>0]|0;o=S+1|0;k=qi[o>>0]|0;s=qi[S+2>>0]|0;a=u-w|0;if(((((a|0)>-1?a:0-a|0)|0)<(r|0)?(a=h-u|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0)?(a=k-w|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0){a=t-u|0;a=(((a|0)>-1?a:0-a|0)|0)>=(f|0);if(b|a)a=a?_:c;else{a=((((u+1+w|0)>>>1)+t|0)>>>1)-h|0;Wi[n>>0]=((a|0)<(d|0)?d:(a|0)>(_|0)?_:a)+h;a=c}t=s-w|0;if((((t|0)>-1?t:0-t|0)|0)<(f|0)){if(!b){s=((((u+1+w|0)>>>1)+s|0)>>>1)-k|0;Wi[o>>0]=((s|0)<(d|0)?d:(s|0)>(_|0)?_:s)+k}a=a+1|0}k=h+4-k+(w-u<<2)>>3;h=0-a|0;k=(k|0)<(h|0)?h:(k|0)>(a|0)?a:k;h=k+u|0;Wi[v>>0]=h>>>0>255?0-h>>31:h;v=w-k|0;Wi[S>>0]=v>>>0>255?0-v>>31:v}E=E+1|0;if((E|0)==4)break;else S=S+i|0}}p=p+1|0;if((p|0)==4)break;else e=e+m|0}return}function ZL(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0;m=i<<1;p=0;while(1){a=Wi[l+p>>0]|0;_=a<<24>>24;if(a<<24>>24>=0){b=a<<24>>24==0;c=_+1|0;d=0-_|0;E=0;S=e;while(1){v=S+-1|0;u=qi[v>>0]|0;n=S+-2|0;h=qi[n>>0]|0;t=qi[S+-3>>0]|0;w=qi[S>>0]|0;o=S+1|0;k=qi[o>>0]|0;s=qi[S+2>>0]|0;a=u-w|0;if(((((a|0)>-1?a:0-a|0)|0)<(r|0)?(a=h-u|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0)?(a=k-w|0,(((a|0)>-1?a:0-a|0)|0)<(f|0)):0){a=t-u|0;a=(((a|0)>-1?a:0-a|0)|0)>=(f|0);if(b|a)a=a?_:c;else{a=((((u+1+w|0)>>>1)+t|0)>>>1)-h|0;Wi[n>>0]=((a|0)<(d|0)?d:(a|0)>(_|0)?_:a)+h;a=c}t=s-w|0;if((((t|0)>-1?t:0-t|0)|0)<(f|0)){if(!b){s=((((u+1+w|0)>>>1)+s|0)>>>1)-k|0;Wi[o>>0]=((s|0)<(d|0)?d:(s|0)>(_|0)?_:s)+k}a=a+1|0}k=h+4-k+(w-u<<2)>>3;h=0-a|0;k=(k|0)<(h|0)?h:(k|0)>(a|0)?a:k;h=k+u|0;Wi[v>>0]=h>>>0>255?0-h>>31:h;v=w-k|0;Wi[S>>0]=v>>>0>255?0-v>>31:v}E=E+1|0;if((E|0)==2)break;else S=S+i|0}}p=p+1|0;if((p|0)==4)break;else e=e+m|0}return}function QL(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;d=Zi(i,-3)|0;v=Zi(i,-2)|0;E=0-i|0;S=i<<1;_=(r>>2)+2|0;m=Zi(i,-4)|0;p=i*3|0;F=0;while(1){c=e+d|0;l=qi[c>>0]|0;a=e+v|0;n=qi[a>>0]|0;t=e+E|0;o=qi[t>>0]|0;s=qi[e>>0]|0;u=e+i|0;h=qi[u>>0]|0;w=e+S|0;k=qi[w>>0]|0;b=o-s|0;b=(b|0)>-1?b:0-b|0;do{if(((b|0)<(r|0)?(y=n-o|0,(((y|0)>-1?y:0-y|0)|0)<(f|0)):0)?(y=h-s|0,(((y|0)>-1?y:0-y|0)|0)<(f|0)):0){if((b|0)>=(_|0)){Wi[t>>0]=(o+2+(n<<1)+h|0)>>>2;Wi[e>>0]=(n+2+s+(h<<1)|0)>>>2;break}y=l-o|0;if((((y|0)>-1?y:0-y|0)|0)<(f|0)){y=qi[e+m>>0]|0;Wi[t>>0]=(l+4+h+(o+n+s<<1)|0)>>>3;Wi[a>>0]=(l+2+n+o+s|0)>>>2;Wi[c>>0]=((l*3|0)+4+n+o+s+(y<<1)|0)>>>3}else Wi[t>>0]=(o+2+(n<<1)+h|0)>>>2;y=k-s|0;if((((y|0)>-1?y:0-y|0)|0)<(f|0)){y=qi[e+p>>0]|0;Wi[e>>0]=(n+4+k+(s+o+h<<1)|0)>>>3;Wi[u>>0]=(o+2+s+h+k|0)>>>2;Wi[w>>0]=(o+4+s+h+(k*3|0)+(y<<1)|0)>>>3;break}else{Wi[e>>0]=(n+2+s+(h<<1)|0)>>>2;break}}}while(0);F=F+1|0;if((F|0)==16)break;else e=e+1|0}return}function $L(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=(r>>2)+2|0;v=0;while(1){u=e+-3|0;w=qi[u>>0]|0;k=e+-2|0;b=qi[k>>0]|0;c=e+-1|0;l=qi[c>>0]|0;a=qi[e>>0]|0;n=e+1|0;t=qi[n>>0]|0;o=e+2|0;s=qi[o>>0]|0;h=l-a|0;h=(h|0)>-1?h:0-h|0;do{if(((h|0)<(r|0)?(E=b-l|0,(((E|0)>-1?E:0-E|0)|0)<(f|0)):0)?(E=t-a|0,(((E|0)>-1?E:0-E|0)|0)<(f|0)):0){if((h|0)>=(d|0)){Wi[c>>0]=(l+2+(b<<1)+t|0)>>>2;Wi[e>>0]=(b+2+a+(t<<1)|0)>>>2;break}E=w-l|0;if((((E|0)>-1?E:0-E|0)|0)<(f|0)){E=qi[e+-4>>0]|0;Wi[c>>0]=(w+4+t+(l+b+a<<1)|0)>>>3;Wi[k>>0]=(w+2+b+l+a|0)>>>2;Wi[u>>0]=((w*3|0)+4+b+l+a+(E<<1)|0)>>>3}else Wi[c>>0]=(l+2+(b<<1)+t|0)>>>2;E=s-a|0;if((((E|0)>-1?E:0-E|0)|0)<(f|0)){E=qi[e+3>>0]|0;Wi[e>>0]=(b+4+s+(a+l+t<<1)|0)>>>3;Wi[n>>0]=(l+2+a+t+s|0)>>>2;Wi[o>>0]=(l+4+a+t+(s*3|0)+(E<<1)|0)>>>3;break}else{Wi[e>>0]=(b+2+a+(t<<1)|0)>>>2;break}}}while(0);v=v+1|0;if((v|0)==16)break;else e=e+i|0}return}function eI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=(r>>2)+2|0;v=0;while(1){u=e+-3|0;w=qi[u>>0]|0;k=e+-2|0;b=qi[k>>0]|0;c=e+-1|0;l=qi[c>>0]|0;a=qi[e>>0]|0;n=e+1|0;t=qi[n>>0]|0;o=e+2|0;s=qi[o>>0]|0;h=l-a|0;h=(h|0)>-1?h:0-h|0;do{if(((h|0)<(r|0)?(E=b-l|0,(((E|0)>-1?E:0-E|0)|0)<(f|0)):0)?(E=t-a|0,(((E|0)>-1?E:0-E|0)|0)<(f|0)):0){if((h|0)>=(d|0)){Wi[c>>0]=(l+2+(b<<1)+t|0)>>>2;Wi[e>>0]=(b+2+a+(t<<1)|0)>>>2;break}E=w-l|0;if((((E|0)>-1?E:0-E|0)|0)<(f|0)){E=qi[e+-4>>0]|0;Wi[c>>0]=(w+4+t+(l+b+a<<1)|0)>>>3;Wi[k>>0]=(w+2+b+l+a|0)>>>2;Wi[u>>0]=((w*3|0)+4+b+l+a+(E<<1)|0)>>>3}else Wi[c>>0]=(l+2+(b<<1)+t|0)>>>2;E=s-a|0;if((((E|0)>-1?E:0-E|0)|0)<(f|0)){E=qi[e+3>>0]|0;Wi[e>>0]=(b+4+s+(a+l+t<<1)|0)>>>3;Wi[n>>0]=(l+2+a+t+s|0)>>>2;Wi[o>>0]=(l+4+a+t+(s*3|0)+(E<<1)|0)>>>3;break}else{Wi[e>>0]=(b+2+a+(t<<1)|0)>>>2;break}}}while(0);v=v+1|0;if((v|0)==8)break;else e=e+i|0}return}function iI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;b=0-i|0;c=Zi(i,-2)|0;d=0;while(1){k=Wi[l+d>>0]|0;o=k<<24>>24;if(k<<24>>24>=1){s=0-o|0;w=0;k=e;while(1){u=k+b|0;h=qi[u>>0]|0;a=qi[k+c>>0]|0;n=qi[k>>0]|0;t=qi[k+i>>0]|0;v=h-n|0;if(((((v|0)>-1?v:0-v|0)|0)<(r|0)?(v=a-h|0,(((v|0)>-1?v:0-v|0)|0)<(f|0)):0)?(v=t-n|0,(((v|0)>-1?v:0-v|0)|0)<(f|0)):0){v=a+4-t+(n-h<<2)>>3;v=(v|0)<(s|0)?s:(v|0)>(o|0)?o:v;h=v+h|0;Wi[u>>0]=h>>>0>255?0-h>>31:h;v=n-v|0;Wi[k>>0]=v>>>0>255?0-v>>31:v}w=w+1|0;if((w|0)==2)break;else k=k+1|0}}d=d+1|0;if((d|0)==4)break;else e=e+2|0}return}function rI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;b=i<<1;c=0;while(1){k=Wi[l+c>>0]|0;o=k<<24>>24;if(k<<24>>24>=1){s=0-o|0;w=0;k=e;while(1){u=k+-1|0;h=qi[u>>0]|0;a=qi[k+-2>>0]|0;n=qi[k>>0]|0;t=qi[k+1>>0]|0;d=h-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(r|0)?(d=a-h|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0)?(d=t-n|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0){d=a+4-t+(n-h<<2)>>3;d=(d|0)<(s|0)?s:(d|0)>(o|0)?o:d;h=d+h|0;Wi[u>>0]=h>>>0>255?0-h>>31:h;d=n-d|0;Wi[k>>0]=d>>>0>255?0-d>>31:d}w=w+1|0;if((w|0)==2)break;else k=k+i|0}}c=c+1|0;if((c|0)==4)break;else e=e+b|0}return}function fI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;b=i<<2;c=0;while(1){k=Wi[l+c>>0]|0;o=k<<24>>24;if(k<<24>>24>=1){s=0-o|0;w=0;k=e;while(1){u=k+-1|0;h=qi[u>>0]|0;a=qi[k+-2>>0]|0;n=qi[k>>0]|0;t=qi[k+1>>0]|0;d=h-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(r|0)?(d=a-h|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0)?(d=t-n|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0){d=a+4-t+(n-h<<2)>>3;d=(d|0)<(s|0)?s:(d|0)>(o|0)?o:d;h=d+h|0;Wi[u>>0]=h>>>0>255?0-h>>31:h;d=n-d|0;Wi[k>>0]=d>>>0>255?0-d>>31:d}w=w+1|0;if((w|0)==4)break;else k=k+i|0}}c=c+1|0;if((c|0)==4)break;else e=e+b|0}return}function lI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;w=0;while(1){k=Wi[l+w>>0]|0;a=k<<24>>24;if(((k<<24>>24>=1?(s=0-a|0,u=e+-1|0,h=qi[u>>0]|0,n=qi[e+-2>>0]|0,t=qi[e>>0]|0,o=qi[e+1>>0]|0,k=h-t|0,(((k|0)>-1?k:0-k|0)|0)<(r|0)):0)?(k=n-h|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0)?(k=o-t|0,(((k|0)>-1?k:0-k|0)|0)<(f|0)):0){k=n+4-o+(t-h<<2)>>3;k=(k|0)<(s|0)?s:(k|0)>(a|0)?a:k;a=k+h|0;Wi[u>>0]=a>>>0>255?0-a>>31:a;k=t-k|0;Wi[e>>0]=k>>>0>255?0-k>>31:k}w=w+1|0;if((w|0)==4)break;else e=e+i|0}return}function aI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;b=i<<1;c=0;while(1){k=Wi[l+c>>0]|0;o=k<<24>>24;if(k<<24>>24>=1){s=0-o|0;w=0;k=e;while(1){u=k+-1|0;h=qi[u>>0]|0;a=qi[k+-2>>0]|0;n=qi[k>>0]|0;t=qi[k+1>>0]|0;d=h-n|0;if(((((d|0)>-1?d:0-d|0)|0)<(r|0)?(d=a-h|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0)?(d=t-n|0,(((d|0)>-1?d:0-d|0)|0)<(f|0)):0){d=a+4-t+(n-h<<2)>>3;d=(d|0)<(s|0)?s:(d|0)>(o|0)?o:d;h=d+h|0;Wi[u>>0]=h>>>0>255?0-h>>31:h;d=n-d|0;Wi[k>>0]=d>>>0>255?0-d>>31:d}w=w+1|0;if((w|0)==2)break;else k=k+i|0}}c=c+1|0;if((c|0)==4)break;else e=e+b|0}return}function nI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;s=0-i|0;u=Zi(i,-2)|0;h=0;while(1){a=e+s|0;n=qi[a>>0]|0;t=qi[e+u>>0]|0;o=qi[e>>0]|0;l=qi[e+i>>0]|0;w=n-o|0;if(((((w|0)>-1?w:0-w|0)|0)<(r|0)?(w=t-n|0,(((w|0)>-1?w:0-w|0)|0)<(f|0)):0)?(w=l-o|0,(((w|0)>-1?w:0-w|0)|0)<(f|0)):0){Wi[a>>0]=(n+2+(t<<1)+l|0)>>>2;Wi[e>>0]=(t+2+o+(l<<1)|0)>>>2}h=h+1|0;if((h|0)==8)break;else e=e+1|0}return}function tI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=0;while(1){l=e+-1|0;n=qi[l>>0]|0;t=qi[e+-2>>0]|0;o=qi[e>>0]|0;a=qi[e+1>>0]|0;u=n-o|0;if(((((u|0)>-1?u:0-u|0)|0)<(r|0)?(u=t-n|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0)?(u=a-o|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0){Wi[l>>0]=(n+2+(t<<1)+a|0)>>>2;Wi[e>>0]=(t+2+o+(a<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+i|0}return}function oI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=0;while(1){l=e+-1|0;n=qi[l>>0]|0;t=qi[e+-2>>0]|0;o=qi[e>>0]|0;a=qi[e+1>>0]|0;u=n-o|0;if(((((u|0)>-1?u:0-u|0)|0)<(r|0)?(u=t-n|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0)?(u=a-o|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0){Wi[l>>0]=(n+2+(t<<1)+a|0)>>>2;Wi[e>>0]=(t+2+o+(a<<1)|0)>>>2}s=s+1|0;if((s|0)==16)break;else e=e+i|0}return}function sI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=0;while(1){l=e+-1|0;n=qi[l>>0]|0;t=qi[e+-2>>0]|0;o=qi[e>>0]|0;a=qi[e+1>>0]|0;u=n-o|0;if(((((u|0)>-1?u:0-u|0)|0)<(r|0)?(u=t-n|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0)?(u=a-o|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0){Wi[l>>0]=(n+2+(t<<1)+a|0)>>>2;Wi[e>>0]=(t+2+o+(a<<1)|0)>>>2}s=s+1|0;if((s|0)==4)break;else e=e+i|0}return}function uI(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0;s=0;while(1){l=e+-1|0;n=qi[l>>0]|0;t=qi[e+-2>>0]|0;o=qi[e>>0]|0;a=qi[e+1>>0]|0;u=n-o|0;if(((((u|0)>-1?u:0-u|0)|0)<(r|0)?(u=t-n|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0)?(u=a-o|0,(((u|0)>-1?u:0-u|0)|0)<(f|0)):0){Wi[l>>0]=(n+2+(t<<1)+a|0)>>>2;Wi[e>>0]=(t+2+o+(a<<1)|0)>>>2}s=s+1|0;if((s|0)==8)break;else e=e+i|0}return}function hI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=(Ji[i>>1]|0)+32&65535;Gi[i>>1]=l;f=0;while(1){u=l<<16>>16;t=i+(f+8<<1)|0;s=Gi[t>>1]|0;n=s+u|0;s=u-s|0;u=i+(f+4<<1)|0;l=Gi[u>>1]|0;a=i+(f+12<<1)|0;h=Gi[a>>1]|0;o=(l>>1)-h|0;l=(h>>1)+l|0;Gi[i+(f<<1)>>1]=l+n;Gi[u>>1]=o+s;Gi[t>>1]=s-o;Gi[a>>1]=n-l;f=f+1|0;if((f|0)==4)break;l=Gi[i+(f<<1)>>1]|0}f=r<<1;l=r*3|0;a=0;do{h=a<<2;u=Gi[i+(h<<1)>>1]|0;t=Gi[i+((h|2)<<1)>>1]|0;s=t+u|0;t=u-t|0;u=Gi[i+((h|1)<<1)>>1]|0;h=Gi[i+((h|3)<<1)>>1]|0;o=(u>>1)-h|0;u=(h>>1)+u|0;h=e+a|0;n=(u+s>>6)+(qi[h>>0]|0)|0;Wi[h>>0]=n>>>0>255?0-n>>31:n;h=e+(a+r)|0;n=(o+t>>6)+(qi[h>>0]|0)|0;Wi[h>>0]=n>>>0>255?0-n>>31:n;h=e+(a+f)|0;o=(qi[h>>0]|0)+(t-o>>6)|0;Wi[h>>0]=o>>>0>255?0-o>>31:o;h=e+(a+l)|0;u=(qi[h>>0]|0)+(s-u>>6)|0;Wi[h>>0]=u>>>0>255?0-u>>31:u;a=a+1|0}while((a|0)!=4);f=i+32|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(f|0));return}function wI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;l=(Ji[i>>1]|0)+32&65535;Gi[i>>1]=l;f=0;while(1){h=l<<16>>16;s=i+(f+32<<1)|0;o=Gi[s>>1]|0;n=o+h|0;o=h-o|0;h=i+(f+16<<1)|0;t=Gi[h>>1]|0;w=i+(f+48<<1)|0;E=Gi[w>>1]|0;u=(t>>1)-E|0;t=(E>>1)+t|0;E=t+n|0;b=u+o|0;u=o-u|0;t=n-t|0;n=i+(f+24<<1)|0;o=Gi[n>>1]|0;a=i+(f+40<<1)|0;l=Gi[a>>1]|0;d=i+(f+56<<1)|0;k=Gi[d>>1]|0;v=l-o-k-(k>>1)|0;c=i+(f+8<<1)|0;S=Gi[c>>1]|0;_=k-((o>>1)+o)+S|0;k=k+l+(l>>1)-S|0;S=l+o+S+(S>>1)|0;o=(S>>2)+v|0;l=(k>>2)+_|0;k=(_>>2)-k|0;v=S-(v>>2)|0;Gi[i+(f<<1)>>1]=v+E;Gi[d>>1]=E-v;Gi[c>>1]=k+b;Gi[w>>1]=b-k;Gi[h>>1]=l+u;Gi[a>>1]=u-l;Gi[n>>1]=o+t;Gi[s>>1]=t-o;f=f+1|0;if((f|0)==8)break;l=Gi[i+(f<<1)>>1]|0}f=r<<1;l=r*3|0;a=r<<2;n=r*5|0;t=r*6|0;o=r*7|0;s=0;do{_=s<<3;w=Gi[i+(_<<1)>>1]|0;c=Gi[i+((_|4)<<1)>>1]|0;k=c+w|0;c=w-c|0;w=Gi[i+((_|2)<<1)>>1]|0;E=Gi[i+((_|6)<<1)>>1]|0;b=(w>>1)-E|0;w=(E>>1)+w|0;E=w+k|0;d=b+c|0;b=c-b|0;w=k-w|0;k=Gi[i+((_|3)<<1)>>1]|0;c=Gi[i+((_|5)<<1)>>1]|0;v=Gi[i+((_|7)<<1)>>1]|0;S=c-k-v-(v>>1)|0;_=Gi[i+((_|1)<<1)>>1]|0;h=v-((k>>1)+k)+_|0;v=v+c+(c>>1)-_|0;_=c+k+_+(_>>1)|0;k=(_>>2)+S|0;c=(v>>2)+h|0;v=(h>>2)-v|0;S=_-(S>>2)|0;_=e+s|0;h=(S+E>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=h>>>0>255?0-h>>31:h;_=e+(s+r)|0;h=(v+d>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=h>>>0>255?0-h>>31:h;_=e+(s+f)|0;h=(c+b>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=h>>>0>255?0-h>>31:h;_=e+(s+l)|0;h=(k+w>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=h>>>0>255?0-h>>31:h;_=e+(s+a)|0;k=(w-k>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=k>>>0>255?0-k>>31:k;_=e+(s+n)|0;c=(b-c>>6)+(qi[_>>0]|0)|0;Wi[_>>0]=c>>>0>255?0-c>>31:c;_=e+(s+t)|0;v=(qi[_>>0]|0)+(d-v>>6)|0;Wi[_>>0]=v>>>0>255?0-v>>31:v;_=e+(s+o)|0;S=(qi[_>>0]|0)+(E-S>>6)|0;Wi[_>>0]=S>>>0>255?0-S>>31:S;s=s+1|0}while((s|0)!=8);f=i+128|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(f|0));return}function kI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=(Gi[i>>1]|0)+32>>6;Gi[i>>1]=0;i=0;while(1){l=(qi[e>>0]|0)+f|0;Wi[e>>0]=l>>>0>255?0-l>>31:l;l=e+1|0;a=(qi[l>>0]|0)+f|0;Wi[l>>0]=a>>>0>255?0-a>>31:a;l=e+2|0;a=(qi[l>>0]|0)+f|0;Wi[l>>0]=a>>>0>255?0-a>>31:a;l=e+3|0;a=(qi[l>>0]|0)+f|0;Wi[l>>0]=a>>>0>255?0-a>>31:a;i=i+1|0;if((i|0)==4)break;else e=e+r|0}return}function bI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;l=(Gi[i>>1]|0)+32>>6;Gi[i>>1]=0;f=0;while(1){i=0;do{a=e+i|0;n=(qi[a>>0]|0)+l|0;Wi[a>>0]=n>>>0>255?0-n>>31:n;i=i+1|0}while((i|0)!=8);f=f+1|0;if((f|0)==8)break;else e=e+r|0}return}function cI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;n=0;do{switch(Wi[l+(qi[120643+n>>0]|0)>>0]|0){case 0:break;case 1:{a=r+(n<<4<<1)|0;if(!(Gi[a>>1]|0))t=6;else kI(e+(Xi[i+(n<<2)>>2]|0)|0,a,f);break}default:{a=r+(n<<4<<1)|0;t=6}}if((t|0)==6){t=0;hI(e+(Xi[i+(n<<2)>>2]|0)|0,a,f)}n=n+1|0}while((n|0)!=16);return}function dI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;n=0;do{if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){a=r+(n<<4<<1)|0;if(Gi[a>>1]|0)kI(e+(Xi[i+(n<<2)>>2]|0)|0,a,f)}else hI(e+(Xi[i+(n<<2)>>2]|0)|0,r+(n<<4<<1)|0,f);n=n+1|0}while((n|0)!=16);return}function vI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0;n=0;do{switch(Wi[l+(qi[120643+n>>0]|0)>>0]|0){case 0:break;case 1:{a=r+(n<<4<<1)|0;if(!(Gi[a>>1]|0))t=6;else bI(e+(Xi[i+(n<<2)>>2]|0)|0,a,f);break}default:{a=r+(n<<4<<1)|0;t=6}}if((t|0)==6){t=0;wI(e+(Xi[i+(n<<2)>>2]|0)|0,a,f)}n=n+4|0}while((n|0)<16);return}function EI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;o=20;s=1;while(1){a=s<<4;if((a|0)<(a|4|0)){t=e+(s+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){n=r+(a<<4<<1)|0;if(Gi[n>>1]|0)kI((Xi[t>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,n,f)}else hI((Xi[t>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<4<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3)break;else o=o+16|0}return}function SI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0;o=20;s=1;while(1){a=s<<4;if((a|0)<(a|4|0)){t=e+(s+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){n=r+(a<<4<<1)|0;if(Gi[n>>1]|0)kI((Xi[t>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,n,f)}else hI((Xi[t>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<4<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3){s=24;u=1;break}else o=o+16|0}while(1){o=u<<4;a=o|4;if((a|0)<(o|8|0)){o=e+(u+-1<<2)|0;do{n=a+4|0;if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){t=r+(a<<4<<1)|0;if(Gi[t>>1]|0)kI((Xi[o>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,t,f)}else hI((Xi[o>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<4<<1)|0,f);a=a+1|0}while((a|0)!=(s|0))}u=u+1|0;if((u|0)==3)break;else s=s+16|0}return}function _I(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=Ue;Ue=Ue+64|0;l=a;f=0;do{k=f<<2;s=Gi[i+(k<<1)>>1]|0;u=k|1;t=Gi[i+(u<<1)>>1]|0;w=t+s|0;t=s-t|0;s=k|2;h=Gi[i+(s<<1)>>1]|0;n=k|3;b=Gi[i+(n<<1)>>1]|0;o=h-b|0;h=b+h|0;Xi[l+(k<<2)>>2]=h+w;Xi[l+(u<<2)>>2]=w-h;Xi[l+(s<<2)>>2]=t-o;Xi[l+(n<<2)>>2]=o+t;f=f+1|0}while((f|0)!=4);i=0;do{b=qi[120694+i>>0]|0;k=Xi[l+(i<<2)>>2]|0;u=Xi[l+(i+8<<2)>>2]|0;w=u+k|0;u=k-u|0;k=Xi[l+(i+4<<2)>>2]|0;s=Xi[l+(i+12<<2)>>2]|0;h=k-s|0;k=s+k|0;Gi[e+(b<<1)>>1]=((Zi(k+w|0,r)|0)+128|0)>>>8;Gi[e+(b+16<<1)>>1]=((Zi(h+u|0,r)|0)+128|0)>>>8;Gi[e+(b+64<<1)>>1]=((Zi(u-h|0,r)|0)+128|0)>>>8;Gi[e+(b+80<<1)>>1]=((Zi(w-k|0,r)|0)+128|0)>>>8;i=i+1|0}while((i|0)!=4);Ue=a;return}function mI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=Ue;Ue=Ue+32|0;f=l;r=0;do{n=r<<5;t=Gi[e+(n<<1)>>1]|0;n=Gi[e+((n|16)<<1)>>1]|0;a=r<<1;Xi[f+(a<<2)>>2]=n+t;Xi[f+((a|1)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=4);r=0;do{t=qi[120698+r>>0]|0;n=Xi[f+(r<<2)>>2]|0;s=Xi[f+(r+4<<2)>>2]|0;a=s+n|0;s=n-s|0;n=Xi[f+(r+2<<2)>>2]|0;u=Xi[f+(r+6<<2)>>2]|0;o=n-u|0;n=u+n|0;Gi[e+(t<<1)>>1]=((Zi(n+a|0,i)|0)+128|0)>>>8;Gi[e+(t+32<<1)>>1]=((Zi(o+s|0,i)|0)+128|0)>>>8;Gi[e+(t+64<<1)>>1]=((Zi(s-o|0,i)|0)+128|0)>>>8;Gi[e+(t+96<<1)>>1]=((Zi(a-n|0,i)|0)+128|0)>>>8;r=r+1|0}while((r|0)!=2);Ue=l;return}function pI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Gi[e>>1]|0;o=e+32|0;f=Gi[o>>1]|0;a=e+64|0;n=Gi[a>>1]|0;r=e+96|0;s=Gi[r>>1]|0;l=t-f|0;t=f+t|0;f=n-s|0;n=s+n|0;Gi[e>>1]=(Zi(n+t|0,i)|0)>>>7;Gi[o>>1]=(Zi(f+l|0,i)|0)>>>7;Gi[a>>1]=(Zi(t-n|0,i)|0)>>>7;Gi[r>>1]=(Zi(l-f|0,i)|0)>>>7;return}function FI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){o=i+(f+8<<2)|0;n=Xi[o>>2]|0;s=n+l|0;n=l-n|0;a=i+(f+4<<2)|0;u=Xi[a>>2]|0;h=i+(f+12<<2)|0;l=Xi[h>>2]|0;t=(u>>1)-l|0;u=(l>>1)+u|0;Xi[i+(f<<2)>>2]=u+s;Xi[a>>2]=t+n;Xi[o>>2]=n-t;Xi[h>>2]=s-u;f=f+1|0;if((f|0)==4)break;l=Xi[i+(f<<2)>>2]|0}o=r>>1;s=o<<1;u=o*3|0;h=0;do{l=h<<2;t=Xi[i+(l<<2)>>2]|0;r=Xi[i+((l|2)<<2)>>2]|0;n=r+t|0;r=t-r|0;t=Xi[i+((l|1)<<2)>>2]|0;l=Xi[i+((l|3)<<2)>>2]|0;a=(t>>1)-l|0;t=(l>>1)+t|0;l=e+(h<<1)|0;f=(t+n>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(h+o<<1)|0;f=(Ji[l>>1]|0)+(a+r>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(h+s<<1)|0;f=(Ji[l>>1]|0)+(r-a>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(h+u<<1)|0;f=(Ji[l>>1]|0)+(n-t>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;h=h+1|0}while((h|0)!=4);f=i+64|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(f|0));return}function yI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){S=i+(f+32<<2)|0;E=Xi[S>>2]|0;d=E+l|0;E=l-E|0;w=i+(f+16<<2)|0;v=Xi[w>>2]|0;h=i+(f+48<<2)|0;a=Xi[h>>2]|0;k=(v>>1)-a|0;v=(a>>1)+v|0;a=v+d|0;s=k+E|0;k=E-k|0;v=d-v|0;d=i+(f+24<<2)|0;E=Xi[d>>2]|0;c=i+(f+40<<2)|0;b=Xi[c>>2]|0;t=i+(f+56<<2)|0;u=Xi[t>>2]|0;n=b-E-u-(u>>1)|0;o=i+(f+8<<2)|0;l=Xi[o>>2]|0;_=u-((E>>1)+E)+l|0;u=u+b+(b>>1)-l|0;l=b+E+l+(l>>1)|0;E=(l>>2)+n|0;b=(u>>2)+_|0;u=(_>>2)-u|0;n=l-(n>>2)|0;Xi[i+(f<<2)>>2]=n+a;Xi[t>>2]=a-n;Xi[o>>2]=u+s;Xi[h>>2]=s-u;Xi[w>>2]=b+k;Xi[c>>2]=k-b;Xi[d>>2]=E+v;Xi[S>>2]=v-E;f=f+1|0;if((f|0)==8)break;l=Xi[i+(f<<2)>>2]|0}w=r>>1;k=w<<1;b=w*3|0;c=w<<2;d=w*5|0;v=w*6|0;E=w*7|0;S=0;do{l=S<<3;a=Xi[i+(l<<2)>>2]|0;n=Xi[i+((l|4)<<2)>>2]|0;r=n+a|0;n=a-n|0;a=Xi[i+((l|2)<<2)>>2]|0;h=Xi[i+((l|6)<<2)>>2]|0;t=(a>>1)-h|0;a=(h>>1)+a|0;h=a+r|0;s=t+n|0;t=n-t|0;a=r-a|0;r=Xi[i+((l|3)<<2)>>2]|0;n=Xi[i+((l|5)<<2)>>2]|0;o=Xi[i+((l|7)<<2)>>2]|0;u=n-r-o-(o>>1)|0;l=Xi[i+((l|1)<<2)>>2]|0;f=o-((r>>1)+r)+l|0;o=o+n+(n>>1)-l|0;l=n+r+l+(l>>1)|0;r=(l>>2)+u|0;n=(o>>2)+f|0;o=(f>>2)-o|0;u=l-(u>>2)|0;l=e+(S<<1)|0;f=(u+h>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+w<<1)|0;f=(Ji[l>>1]|0)+(o+s>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+k<<1)|0;f=(Ji[l>>1]|0)+(n+t>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+b<<1)|0;f=(Ji[l>>1]|0)+(r+a>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+c<<1)|0;f=(Ji[l>>1]|0)+(a-r>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+d<<1)|0;f=(Ji[l>>1]|0)+(t-n>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+v<<1)|0;f=(Ji[l>>1]|0)+(s-o>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;l=e+(S+E<<1)|0;f=(Ji[l>>1]|0)+(h-u>>6)|0;if(f>>>0>=512)f=0-f>>31&511;Gi[l>>1]=f;S=S+1|0}while((S|0)!=8);jT(i|0,0,256)|0;return}function OI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;a=r>>>1;Xi[i>>2]=0;l=0;while(1){f=0;do{i=e+(f<<1)|0;r=(Ji[i>>1]|0)+n|0;if(r>>>0>=512)r=0-r>>31&511;Gi[i>>1]=r;f=f+1|0}while((f|0)!=4);l=l+1|0;if((l|0)==4)break;else e=e+(a<<1)|0}return}function AI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;Xi[i>>2]=0;a=r>>>1;l=0;while(1){f=0;do{r=e+(f<<1)|0;i=(Ji[r>>1]|0)+n|0;if(i>>>0>=512)i=0-i>>31&511;Gi[r>>1]=i;f=f+1|0}while((f|0)!=8);l=l+1|0;if((l|0)==8)break;else e=e+(a<<1)|0}return}function gI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else OI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;FI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+1|0}while((a|0)!=16);return}function MI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;a=0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)OI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else FI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=16);return}function RI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else AI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;yI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+4|0}while((a|0)<16);return}function TI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)OI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else FI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3)break;else t=t+16|0}return}function NI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)OI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else FI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3){o=24;s=1;break}else t=t+16|0}while(1){t=s<<4;a=t|4;if((a|0)<(t|8|0)){t=e+(s+-1<<2)|0;do{n=a+4|0;if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)OI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else FI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3)break;else o=o+16|0}return}function DI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=Ue;Ue=Ue+64|0;l=a;f=0;do{k=f<<2;s=Xi[i+(k<<2)>>2]|0;u=k|1;t=Xi[i+(u<<2)>>2]|0;w=t+s|0;t=s-t|0;s=k|2;h=Xi[i+(s<<2)>>2]|0;n=k|3;b=Xi[i+(n<<2)>>2]|0;o=h-b|0;h=b+h|0;Xi[l+(k<<2)>>2]=h+w;Xi[l+(u<<2)>>2]=w-h;Xi[l+(s<<2)>>2]=t-o;Xi[l+(n<<2)>>2]=o+t;f=f+1|0}while((f|0)!=4);i=0;do{b=qi[120694+i>>0]|0;k=Xi[l+(i<<2)>>2]|0;u=Xi[l+(i+8<<2)>>2]|0;w=u+k|0;u=k-u|0;k=Xi[l+(i+4<<2)>>2]|0;s=Xi[l+(i+12<<2)>>2]|0;h=k-s|0;k=s+k|0;Xi[e+(b<<2)>>2]=(Zi(k+w|0,r)|0)+128>>8;Xi[e+(b+16<<2)>>2]=(Zi(h+u|0,r)|0)+128>>8;Xi[e+(b+64<<2)>>2]=(Zi(u-h|0,r)|0)+128>>8;Xi[e+(b+80<<2)>>2]=(Zi(w-k|0,r)|0)+128>>8;i=i+1|0}while((i|0)!=4);Ue=a;return}function CI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=Ue;Ue=Ue+32|0;f=l;r=0;do{n=r<<5;t=Xi[e+(n<<2)>>2]|0;n=Xi[e+((n|16)<<2)>>2]|0;a=r<<1;Xi[f+(a<<2)>>2]=n+t;Xi[f+((a|1)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=4);r=0;do{t=qi[120698+r>>0]|0;n=Xi[f+(r<<2)>>2]|0;s=Xi[f+(r+4<<2)>>2]|0;a=s+n|0;s=n-s|0;n=Xi[f+(r+2<<2)>>2]|0;u=Xi[f+(r+6<<2)>>2]|0;o=n-u|0;n=u+n|0;Xi[e+(t<<2)>>2]=(Zi(n+a|0,i)|0)+128>>8;Xi[e+(t+32<<2)>>2]=(Zi(o+s|0,i)|0)+128>>8;Xi[e+(t+64<<2)>>2]=(Zi(s-o|0,i)|0)+128>>8;Xi[e+(t+96<<2)>>2]=(Zi(a-n|0,i)|0)+128>>8;r=r+1|0}while((r|0)!=2);Ue=l;return}function PI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Xi[e>>2]|0;o=e+64|0;f=Xi[o>>2]|0;a=e+128|0;n=Xi[a>>2]|0;r=e+192|0;s=Xi[r>>2]|0;l=t-f|0;t=f+t|0;f=n-s|0;n=s+n|0;Xi[e>>2]=(Zi(n+t|0,i)|0)>>7;Xi[o>>2]=(Zi(f+l|0,i)|0)>>7;Xi[a>>2]=(Zi(t-n|0,i)|0)>>7;Xi[r>>2]=(Zi(l-f|0,i)|0)>>7;return}function LI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){o=i+(f+8<<2)|0;n=Xi[o>>2]|0;s=n+l|0;n=l-n|0;a=i+(f+4<<2)|0;u=Xi[a>>2]|0;h=i+(f+12<<2)|0;l=Xi[h>>2]|0;t=(u>>1)-l|0;u=(l>>1)+u|0;Xi[i+(f<<2)>>2]=u+s;Xi[a>>2]=t+n;Xi[o>>2]=n-t;Xi[h>>2]=s-u;f=f+1|0;if((f|0)==4)break;l=Xi[i+(f<<2)>>2]|0}o=r>>1;s=o<<1;u=o*3|0;h=0;do{l=h<<2;t=Xi[i+(l<<2)>>2]|0;r=Xi[i+((l|2)<<2)>>2]|0;n=r+t|0;r=t-r|0;t=Xi[i+((l|1)<<2)>>2]|0;l=Xi[i+((l|3)<<2)>>2]|0;a=(t>>1)-l|0;t=(l>>1)+t|0;l=e+(h<<1)|0;f=(t+n>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(h+o<<1)|0;f=(Ji[l>>1]|0)+(a+r>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(h+s<<1)|0;f=(Ji[l>>1]|0)+(r-a>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(h+u<<1)|0;f=(Ji[l>>1]|0)+(n-t>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;h=h+1|0}while((h|0)!=4);f=i+64|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(f|0));return}function II(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){S=i+(f+32<<2)|0;E=Xi[S>>2]|0;d=E+l|0;E=l-E|0;w=i+(f+16<<2)|0;v=Xi[w>>2]|0;h=i+(f+48<<2)|0;a=Xi[h>>2]|0;k=(v>>1)-a|0;v=(a>>1)+v|0;a=v+d|0;s=k+E|0;k=E-k|0;v=d-v|0;d=i+(f+24<<2)|0;E=Xi[d>>2]|0;c=i+(f+40<<2)|0;b=Xi[c>>2]|0;t=i+(f+56<<2)|0;u=Xi[t>>2]|0;n=b-E-u-(u>>1)|0;o=i+(f+8<<2)|0;l=Xi[o>>2]|0;_=u-((E>>1)+E)+l|0;u=u+b+(b>>1)-l|0;l=b+E+l+(l>>1)|0;E=(l>>2)+n|0;b=(u>>2)+_|0;u=(_>>2)-u|0;n=l-(n>>2)|0;Xi[i+(f<<2)>>2]=n+a;Xi[t>>2]=a-n;Xi[o>>2]=u+s;Xi[h>>2]=s-u;Xi[w>>2]=b+k;Xi[c>>2]=k-b;Xi[d>>2]=E+v;Xi[S>>2]=v-E;f=f+1|0;if((f|0)==8)break;l=Xi[i+(f<<2)>>2]|0}w=r>>1;k=w<<1;b=w*3|0;c=w<<2;d=w*5|0;v=w*6|0;E=w*7|0;S=0;do{l=S<<3;a=Xi[i+(l<<2)>>2]|0;n=Xi[i+((l|4)<<2)>>2]|0;r=n+a|0;n=a-n|0;a=Xi[i+((l|2)<<2)>>2]|0;h=Xi[i+((l|6)<<2)>>2]|0;t=(a>>1)-h|0;a=(h>>1)+a|0;h=a+r|0;s=t+n|0;t=n-t|0;a=r-a|0;r=Xi[i+((l|3)<<2)>>2]|0;n=Xi[i+((l|5)<<2)>>2]|0;o=Xi[i+((l|7)<<2)>>2]|0;u=n-r-o-(o>>1)|0;l=Xi[i+((l|1)<<2)>>2]|0;f=o-((r>>1)+r)+l|0;o=o+n+(n>>1)-l|0;l=n+r+l+(l>>1)|0;r=(l>>2)+u|0;n=(o>>2)+f|0;o=(f>>2)-o|0;u=l-(u>>2)|0;l=e+(S<<1)|0;f=(u+h>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+w<<1)|0;f=(Ji[l>>1]|0)+(o+s>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+k<<1)|0;f=(Ji[l>>1]|0)+(n+t>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+b<<1)|0;f=(Ji[l>>1]|0)+(r+a>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+c<<1)|0;f=(Ji[l>>1]|0)+(a-r>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+d<<1)|0;f=(Ji[l>>1]|0)+(t-n>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+v<<1)|0;f=(Ji[l>>1]|0)+(s-o>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;l=e+(S+E<<1)|0;f=(Ji[l>>1]|0)+(h-u>>6)|0;if(f>>>0>=1024)f=0-f>>31&1023;Gi[l>>1]=f;S=S+1|0}while((S|0)!=8);jT(i|0,0,256)|0;return}function HI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;a=r>>>1;Xi[i>>2]=0;l=0;while(1){f=0;do{i=e+(f<<1)|0;r=(Ji[i>>1]|0)+n|0;if(r>>>0>=1024)r=0-r>>31&1023;Gi[i>>1]=r;f=f+1|0}while((f|0)!=4);l=l+1|0;if((l|0)==4)break;else e=e+(a<<1)|0}return}function BI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;Xi[i>>2]=0;a=r>>>1;l=0;while(1){f=0;do{r=e+(f<<1)|0;i=(Ji[r>>1]|0)+n|0;if(i>>>0>=1024)i=0-i>>31&1023;Gi[r>>1]=i;f=f+1|0}while((f|0)!=8);l=l+1|0;if((l|0)==8)break;else e=e+(a<<1)|0}return}function UI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else HI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;LI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+1|0}while((a|0)!=16);return}function xI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;a=0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)HI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else LI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=16);return}function zI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else BI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;II(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+4|0}while((a|0)<16);return}function VI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)HI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else LI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3)break;else t=t+16|0}return}function YI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)HI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else LI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3){o=24;s=1;break}else t=t+16|0}while(1){t=s<<4;a=t|4;if((a|0)<(t|8|0)){t=e+(s+-1<<2)|0;do{n=a+4|0;if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)HI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else LI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3)break;else o=o+16|0}return}function jI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=Ue;Ue=Ue+64|0;l=a;f=0;do{k=f<<2;s=Xi[i+(k<<2)>>2]|0;u=k|1;t=Xi[i+(u<<2)>>2]|0;w=t+s|0;t=s-t|0;s=k|2;h=Xi[i+(s<<2)>>2]|0;n=k|3;b=Xi[i+(n<<2)>>2]|0;o=h-b|0;h=b+h|0;Xi[l+(k<<2)>>2]=h+w;Xi[l+(u<<2)>>2]=w-h;Xi[l+(s<<2)>>2]=t-o;Xi[l+(n<<2)>>2]=o+t;f=f+1|0}while((f|0)!=4);i=0;do{b=qi[120694+i>>0]|0;k=Xi[l+(i<<2)>>2]|0;u=Xi[l+(i+8<<2)>>2]|0;w=u+k|0;u=k-u|0;k=Xi[l+(i+4<<2)>>2]|0;s=Xi[l+(i+12<<2)>>2]|0;h=k-s|0;k=s+k|0;Xi[e+(b<<2)>>2]=(Zi(k+w|0,r)|0)+128>>8;Xi[e+(b+16<<2)>>2]=(Zi(h+u|0,r)|0)+128>>8;Xi[e+(b+64<<2)>>2]=(Zi(u-h|0,r)|0)+128>>8;Xi[e+(b+80<<2)>>2]=(Zi(w-k|0,r)|0)+128>>8;i=i+1|0}while((i|0)!=4);Ue=a;return}function KI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=Ue;Ue=Ue+32|0;f=l;r=0;do{n=r<<5;t=Xi[e+(n<<2)>>2]|0;n=Xi[e+((n|16)<<2)>>2]|0;a=r<<1;Xi[f+(a<<2)>>2]=n+t;Xi[f+((a|1)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=4);r=0;do{t=qi[120698+r>>0]|0;n=Xi[f+(r<<2)>>2]|0;s=Xi[f+(r+4<<2)>>2]|0;a=s+n|0;s=n-s|0;n=Xi[f+(r+2<<2)>>2]|0;u=Xi[f+(r+6<<2)>>2]|0;o=n-u|0;n=u+n|0;Xi[e+(t<<2)>>2]=(Zi(n+a|0,i)|0)+128>>8;Xi[e+(t+32<<2)>>2]=(Zi(o+s|0,i)|0)+128>>8;Xi[e+(t+64<<2)>>2]=(Zi(s-o|0,i)|0)+128>>8;Xi[e+(t+96<<2)>>2]=(Zi(a-n|0,i)|0)+128>>8;r=r+1|0}while((r|0)!=2);Ue=l;return}function WI(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Xi[e>>2]|0;o=e+64|0;f=Xi[o>>2]|0;a=e+128|0;n=Xi[a>>2]|0;r=e+192|0;s=Xi[r>>2]|0;l=t-f|0;t=f+t|0;f=n-s|0;n=s+n|0;Xi[e>>2]=(Zi(n+t|0,i)|0)>>7;Xi[o>>2]=(Zi(f+l|0,i)|0)>>7;Xi[a>>2]=(Zi(t-n|0,i)|0)>>7;Xi[r>>2]=(Zi(l-f|0,i)|0)>>7;return}function GI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){o=i+(f+8<<2)|0;n=Xi[o>>2]|0;s=n+l|0;n=l-n|0;a=i+(f+4<<2)|0;u=Xi[a>>2]|0;h=i+(f+12<<2)|0;l=Xi[h>>2]|0;t=(u>>1)-l|0;u=(l>>1)+u|0;Xi[i+(f<<2)>>2]=u+s;Xi[a>>2]=t+n;Xi[o>>2]=n-t;Xi[h>>2]=s-u;f=f+1|0;if((f|0)==4)break;l=Xi[i+(f<<2)>>2]|0}o=r>>1;s=o<<1;u=o*3|0;h=0;do{l=h<<2;t=Xi[i+(l<<2)>>2]|0;r=Xi[i+((l|2)<<2)>>2]|0;n=r+t|0;r=t-r|0;t=Xi[i+((l|1)<<2)>>2]|0;l=Xi[i+((l|3)<<2)>>2]|0;a=(t>>1)-l|0;t=(l>>1)+t|0;l=e+(h<<1)|0;f=(t+n>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(h+o<<1)|0;f=(Ji[l>>1]|0)+(a+r>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(h+s<<1)|0;f=(Ji[l>>1]|0)+(r-a>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(h+u<<1)|0;f=(Ji[l>>1]|0)+(n-t>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;h=h+1|0}while((h|0)!=4);f=i+64|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(f|0));return}function XI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){S=i+(f+32<<2)|0;E=Xi[S>>2]|0;d=E+l|0;E=l-E|0;w=i+(f+16<<2)|0;v=Xi[w>>2]|0;h=i+(f+48<<2)|0;a=Xi[h>>2]|0;k=(v>>1)-a|0;v=(a>>1)+v|0;a=v+d|0;s=k+E|0;k=E-k|0;v=d-v|0;d=i+(f+24<<2)|0;E=Xi[d>>2]|0;c=i+(f+40<<2)|0;b=Xi[c>>2]|0;t=i+(f+56<<2)|0;u=Xi[t>>2]|0;n=b-E-u-(u>>1)|0;o=i+(f+8<<2)|0;l=Xi[o>>2]|0;_=u-((E>>1)+E)+l|0;u=u+b+(b>>1)-l|0;l=b+E+l+(l>>1)|0;E=(l>>2)+n|0;b=(u>>2)+_|0;u=(_>>2)-u|0;n=l-(n>>2)|0;Xi[i+(f<<2)>>2]=n+a;Xi[t>>2]=a-n;Xi[o>>2]=u+s;Xi[h>>2]=s-u;Xi[w>>2]=b+k;Xi[c>>2]=k-b;Xi[d>>2]=E+v;Xi[S>>2]=v-E;f=f+1|0;if((f|0)==8)break;l=Xi[i+(f<<2)>>2]|0}w=r>>1;k=w<<1;b=w*3|0;c=w<<2;d=w*5|0;v=w*6|0;E=w*7|0;S=0;do{l=S<<3;a=Xi[i+(l<<2)>>2]|0;n=Xi[i+((l|4)<<2)>>2]|0;r=n+a|0;n=a-n|0;a=Xi[i+((l|2)<<2)>>2]|0;h=Xi[i+((l|6)<<2)>>2]|0;t=(a>>1)-h|0;a=(h>>1)+a|0;h=a+r|0;s=t+n|0;t=n-t|0;a=r-a|0;r=Xi[i+((l|3)<<2)>>2]|0;n=Xi[i+((l|5)<<2)>>2]|0;o=Xi[i+((l|7)<<2)>>2]|0;u=n-r-o-(o>>1)|0;l=Xi[i+((l|1)<<2)>>2]|0;f=o-((r>>1)+r)+l|0;o=o+n+(n>>1)-l|0;l=n+r+l+(l>>1)|0;r=(l>>2)+u|0;n=(o>>2)+f|0;o=(f>>2)-o|0;u=l-(u>>2)|0;l=e+(S<<1)|0;f=(u+h>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+w<<1)|0;f=(Ji[l>>1]|0)+(o+s>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+k<<1)|0;f=(Ji[l>>1]|0)+(n+t>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+b<<1)|0;f=(Ji[l>>1]|0)+(r+a>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+c<<1)|0;f=(Ji[l>>1]|0)+(a-r>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+d<<1)|0;f=(Ji[l>>1]|0)+(t-n>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+v<<1)|0;f=(Ji[l>>1]|0)+(s-o>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;l=e+(S+E<<1)|0;f=(Ji[l>>1]|0)+(h-u>>6)|0;if(f>>>0>=4096)f=0-f>>31&4095;Gi[l>>1]=f;S=S+1|0}while((S|0)!=8);jT(i|0,0,256)|0;return}function qI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;a=r>>>1;Xi[i>>2]=0;l=0;while(1){f=0;do{i=e+(f<<1)|0;r=(Ji[i>>1]|0)+n|0;if(r>>>0>=4096)r=0-r>>31&4095;Gi[i>>1]=r;f=f+1|0}while((f|0)!=4);l=l+1|0;if((l|0)==4)break;else e=e+(a<<1)|0}return}function JI(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;Xi[i>>2]=0;a=r>>>1;l=0;while(1){f=0;do{r=e+(f<<1)|0;i=(Ji[r>>1]|0)+n|0;if(i>>>0>=4096)i=0-i>>31&4095;Gi[r>>1]=i;f=f+1|0}while((f|0)!=8);l=l+1|0;if((l|0)==8)break;else e=e+(a<<1)|0}return}function ZI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else qI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;GI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+1|0}while((a|0)!=16);return}function QI(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;a=0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)qI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else GI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=16);return}function $I(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else JI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;XI(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+4|0}while((a|0)<16);return}function eH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)qI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else GI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3)break;else t=t+16|0}return}function iH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)qI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else GI((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3){o=24;s=1;break}else t=t+16|0}while(1){t=s<<4;a=t|4;if((a|0)<(t|8|0)){t=e+(s+-1<<2)|0;do{n=a+4|0;if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)qI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else GI((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3)break;else o=o+16|0}return}function rH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=Ue;Ue=Ue+64|0;l=a;f=0;do{k=f<<2;s=Xi[i+(k<<2)>>2]|0;u=k|1;t=Xi[i+(u<<2)>>2]|0;w=t+s|0;t=s-t|0;s=k|2;h=Xi[i+(s<<2)>>2]|0;n=k|3;b=Xi[i+(n<<2)>>2]|0;o=h-b|0;h=b+h|0;Xi[l+(k<<2)>>2]=h+w;Xi[l+(u<<2)>>2]=w-h;Xi[l+(s<<2)>>2]=t-o;Xi[l+(n<<2)>>2]=o+t;f=f+1|0}while((f|0)!=4);i=0;do{b=qi[120694+i>>0]|0;k=Xi[l+(i<<2)>>2]|0;u=Xi[l+(i+8<<2)>>2]|0;w=u+k|0;u=k-u|0;k=Xi[l+(i+4<<2)>>2]|0;s=Xi[l+(i+12<<2)>>2]|0;h=k-s|0;k=s+k|0;Xi[e+(b<<2)>>2]=(Zi(k+w|0,r)|0)+128>>8;Xi[e+(b+16<<2)>>2]=(Zi(h+u|0,r)|0)+128>>8;Xi[e+(b+64<<2)>>2]=(Zi(u-h|0,r)|0)+128>>8;Xi[e+(b+80<<2)>>2]=(Zi(w-k|0,r)|0)+128>>8;i=i+1|0}while((i|0)!=4);Ue=a;return}function fH(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=Ue;Ue=Ue+32|0;f=l;r=0;do{n=r<<5;t=Xi[e+(n<<2)>>2]|0;n=Xi[e+((n|16)<<2)>>2]|0;a=r<<1;Xi[f+(a<<2)>>2]=n+t;Xi[f+((a|1)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=4);r=0;do{t=qi[120698+r>>0]|0;n=Xi[f+(r<<2)>>2]|0;s=Xi[f+(r+4<<2)>>2]|0;a=s+n|0;s=n-s|0;n=Xi[f+(r+2<<2)>>2]|0;u=Xi[f+(r+6<<2)>>2]|0;o=n-u|0;n=u+n|0;Xi[e+(t<<2)>>2]=(Zi(n+a|0,i)|0)+128>>8;Xi[e+(t+32<<2)>>2]=(Zi(o+s|0,i)|0)+128>>8;Xi[e+(t+64<<2)>>2]=(Zi(s-o|0,i)|0)+128>>8;Xi[e+(t+96<<2)>>2]=(Zi(a-n|0,i)|0)+128>>8;r=r+1|0}while((r|0)!=2);Ue=l;return}function lH(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Xi[e>>2]|0;o=e+64|0;f=Xi[o>>2]|0;a=e+128|0;n=Xi[a>>2]|0;r=e+192|0;s=Xi[r>>2]|0;l=t-f|0;t=f+t|0;f=n-s|0;n=s+n|0;Xi[e>>2]=(Zi(n+t|0,i)|0)>>7;Xi[o>>2]=(Zi(f+l|0,i)|0)>>7;Xi[a>>2]=(Zi(t-n|0,i)|0)>>7;Xi[r>>2]=(Zi(l-f|0,i)|0)>>7;return}function aH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){o=i+(f+8<<2)|0;n=Xi[o>>2]|0;s=n+l|0;n=l-n|0;a=i+(f+4<<2)|0;u=Xi[a>>2]|0;h=i+(f+12<<2)|0;l=Xi[h>>2]|0;t=(u>>1)-l|0;u=(l>>1)+u|0;Xi[i+(f<<2)>>2]=u+s;Xi[a>>2]=t+n;Xi[o>>2]=n-t;Xi[h>>2]=s-u;f=f+1|0;if((f|0)==4)break;l=Xi[i+(f<<2)>>2]|0}o=r>>1;s=o<<1;u=o*3|0;h=0;do{l=h<<2;t=Xi[i+(l<<2)>>2]|0;r=Xi[i+((l|2)<<2)>>2]|0;n=r+t|0;r=t-r|0;t=Xi[i+((l|1)<<2)>>2]|0;l=Xi[i+((l|3)<<2)>>2]|0;a=(t>>1)-l|0;t=(l>>1)+t|0;l=e+(h<<1)|0;f=(t+n>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(h+o<<1)|0;f=(Ji[l>>1]|0)+(a+r>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(h+s<<1)|0;f=(Ji[l>>1]|0)+(r-a>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(h+u<<1)|0;f=(Ji[l>>1]|0)+(n-t>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;h=h+1|0}while((h|0)!=4);f=i+64|0;do{Xi[i>>2]=0;i=i+4|0}while((i|0)<(f|0));return}function nH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;l=(Xi[i>>2]|0)+32|0;Xi[i>>2]=l;f=0;while(1){S=i+(f+32<<2)|0;E=Xi[S>>2]|0;d=E+l|0;E=l-E|0;w=i+(f+16<<2)|0;v=Xi[w>>2]|0;h=i+(f+48<<2)|0;a=Xi[h>>2]|0;k=(v>>1)-a|0;v=(a>>1)+v|0;a=v+d|0;s=k+E|0;k=E-k|0;v=d-v|0;d=i+(f+24<<2)|0;E=Xi[d>>2]|0;c=i+(f+40<<2)|0;b=Xi[c>>2]|0;t=i+(f+56<<2)|0;u=Xi[t>>2]|0;n=b-E-u-(u>>1)|0;o=i+(f+8<<2)|0;l=Xi[o>>2]|0;_=u-((E>>1)+E)+l|0;u=u+b+(b>>1)-l|0;l=b+E+l+(l>>1)|0;E=(l>>2)+n|0;b=(u>>2)+_|0;u=(_>>2)-u|0;n=l-(n>>2)|0;Xi[i+(f<<2)>>2]=n+a;Xi[t>>2]=a-n;Xi[o>>2]=u+s;Xi[h>>2]=s-u;Xi[w>>2]=b+k;Xi[c>>2]=k-b;Xi[d>>2]=E+v;Xi[S>>2]=v-E;f=f+1|0;if((f|0)==8)break;l=Xi[i+(f<<2)>>2]|0}w=r>>1;k=w<<1;b=w*3|0;c=w<<2;d=w*5|0;v=w*6|0;E=w*7|0;S=0;do{l=S<<3;a=Xi[i+(l<<2)>>2]|0;n=Xi[i+((l|4)<<2)>>2]|0;r=n+a|0;n=a-n|0;a=Xi[i+((l|2)<<2)>>2]|0;h=Xi[i+((l|6)<<2)>>2]|0;t=(a>>1)-h|0;a=(h>>1)+a|0;h=a+r|0;s=t+n|0;t=n-t|0;a=r-a|0;r=Xi[i+((l|3)<<2)>>2]|0;n=Xi[i+((l|5)<<2)>>2]|0;o=Xi[i+((l|7)<<2)>>2]|0;u=n-r-o-(o>>1)|0;l=Xi[i+((l|1)<<2)>>2]|0;f=o-((r>>1)+r)+l|0;o=o+n+(n>>1)-l|0;l=n+r+l+(l>>1)|0;r=(l>>2)+u|0;n=(o>>2)+f|0;o=(f>>2)-o|0;u=l-(u>>2)|0;l=e+(S<<1)|0;f=(u+h>>6)+(Ji[l>>1]|0)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+w<<1)|0;f=(Ji[l>>1]|0)+(o+s>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+k<<1)|0;f=(Ji[l>>1]|0)+(n+t>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+b<<1)|0;f=(Ji[l>>1]|0)+(r+a>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+c<<1)|0;f=(Ji[l>>1]|0)+(a-r>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+d<<1)|0;f=(Ji[l>>1]|0)+(t-n>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+v<<1)|0;f=(Ji[l>>1]|0)+(s-o>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;l=e+(S+E<<1)|0;f=(Ji[l>>1]|0)+(h-u>>6)|0;if(f>>>0>=16384)f=0-f>>31&16383;Gi[l>>1]=f;S=S+1|0}while((S|0)!=8);jT(i|0,0,256)|0;return}function tH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;a=r>>>1;Xi[i>>2]=0;l=0;while(1){f=0;do{i=e+(f<<1)|0;r=(Ji[i>>1]|0)+n|0;if(r>>>0>=16384)r=0-r>>31&16383;Gi[i>>1]=r;f=f+1|0}while((f|0)!=4);l=l+1|0;if((l|0)==4)break;else e=e+(a<<1)|0}return}function oH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=(Xi[i>>2]|0)+32>>6;Xi[i>>2]=0;a=r>>>1;l=0;while(1){f=0;do{r=e+(f<<1)|0;i=(Ji[r>>1]|0)+n|0;if(i>>>0>=16384)i=0-i>>31&16383;Gi[r>>1]=i;f=f+1|0}while((f|0)!=8);l=l+1|0;if((l|0)==8)break;else e=e+(a<<1)|0}return}function sH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else tH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;aH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+1|0}while((a|0)!=16);return}function uH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0;a=0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)tH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else aH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=16);return}function hH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0;a=0;do{switch(Wi[l+(qi[120643+a>>0]|0)>>0]|0){case 0:break;case 1:{if(!(Xi[r+(a<<4<<2)>>2]|0))n=5;else oH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);break}default:n=5}if((n|0)==5){n=0;nH(e+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}a=a+4|0}while((a|0)<16);return}function wH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)tH((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else aH((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3)break;else t=t+16|0}return}function kH(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0;t=20;o=1;while(1){a=o<<4;if((a|0)<(a|4|0)){n=e+(o+-1<<2)|0;do{if(!(Wi[l+(qi[120643+a>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)tH((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else aH((Xi[n>>2]|0)+(Xi[i+(a<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(t|0))}o=o+1|0;if((o|0)==3){o=24;s=1;break}else t=t+16|0}while(1){t=s<<4;a=t|4;if((a|0)<(t|8|0)){t=e+(s+-1<<2)|0;do{n=a+4|0;if(!(Wi[l+(qi[120643+n>>0]|0)>>0]|0)){if(Xi[r+(a<<4<<2)>>2]|0)tH((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f)}else aH((Xi[t>>2]|0)+(Xi[i+(n<<2)>>2]|0)|0,r+(a<<5<<1)|0,f);a=a+1|0}while((a|0)!=(o|0))}s=s+1|0;if((s|0)==3)break;else o=o+16|0}return}function bH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;a=Ue;Ue=Ue+64|0;l=a;f=0;do{k=f<<2;s=Xi[i+(k<<2)>>2]|0;u=k|1;t=Xi[i+(u<<2)>>2]|0;w=t+s|0;t=s-t|0;s=k|2;h=Xi[i+(s<<2)>>2]|0;n=k|3;b=Xi[i+(n<<2)>>2]|0;o=h-b|0;h=b+h|0;Xi[l+(k<<2)>>2]=h+w;Xi[l+(u<<2)>>2]=w-h;Xi[l+(s<<2)>>2]=t-o;Xi[l+(n<<2)>>2]=o+t;f=f+1|0}while((f|0)!=4);i=0;do{b=qi[120694+i>>0]|0;k=Xi[l+(i<<2)>>2]|0;u=Xi[l+(i+8<<2)>>2]|0;w=u+k|0;u=k-u|0;k=Xi[l+(i+4<<2)>>2]|0;s=Xi[l+(i+12<<2)>>2]|0;h=k-s|0;k=s+k|0;Xi[e+(b<<2)>>2]=(Zi(k+w|0,r)|0)+128>>8;Xi[e+(b+16<<2)>>2]=(Zi(h+u|0,r)|0)+128>>8;Xi[e+(b+64<<2)>>2]=(Zi(u-h|0,r)|0)+128>>8;Xi[e+(b+80<<2)>>2]=(Zi(w-k|0,r)|0)+128>>8;i=i+1|0}while((i|0)!=4);Ue=a;return}function cH(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;l=Ue;Ue=Ue+32|0;f=l;r=0;do{n=r<<5;t=Xi[e+(n<<2)>>2]|0;n=Xi[e+((n|16)<<2)>>2]|0;a=r<<1;Xi[f+(a<<2)>>2]=n+t;Xi[f+((a|1)<<2)>>2]=t-n;r=r+1|0}while((r|0)!=4);r=0;do{t=qi[120698+r>>0]|0;n=Xi[f+(r<<2)>>2]|0;s=Xi[f+(r+4<<2)>>2]|0;a=s+n|0;s=n-s|0;n=Xi[f+(r+2<<2)>>2]|0;u=Xi[f+(r+6<<2)>>2]|0;o=n-u|0;n=u+n|0;Xi[e+(t<<2)>>2]=(Zi(n+a|0,i)|0)+128>>8;Xi[e+(t+32<<2)>>2]=(Zi(o+s|0,i)|0)+128>>8;Xi[e+(t+64<<2)>>2]=(Zi(s-o|0,i)|0)+128>>8;Xi[e+(t+96<<2)>>2]=(Zi(a-n|0,i)|0)+128>>8;r=r+1|0}while((r|0)!=2);Ue=l;return}function dH(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;t=Xi[e>>2]|0;o=e+64|0;f=Xi[o>>2]|0;a=e+128|0;n=Xi[a>>2]|0;r=e+192|0;s=Xi[r>>2]|0;l=t-f|0;t=f+t|0;f=n-s|0;n=s+n|0;Xi[e>>2]=(Zi(n+t|0,i)|0)>>7;Xi[o>>2]=(Zi(f+l|0,i)|0)>>7;Xi[a>>2]=(Zi(t-n|0,i)|0)>>7;Xi[r>>2]=(Zi(l-f|0,i)|0)>>7;return}function vH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0;a=Ue;Ue=Ue+16|0;l=a;switch(r|0){case 9:{if((i|0)!=70){l=(i|0)==140;r=(i|0)==180|l;switch(i|0){case 140:case 180:{Xi[e>>2]=32;Xi[e+4>>2]=33;break}default:{Xi[e>>2]=34;Xi[e+4>>2]=35}}Xi[e+8>>2]=36;Xi[e+12>>2]=(i|0)==24?38:37;Xi[e+16>>2]=39;Xi[e+20>>2]=40;Xi[e+24>>2]=41;Xi[e+28>>2]=r?43:42;Xi[e+32>>2]=44;r=e+36|0;switch(i|0){case 140:case 180:{Xi[r>>2]=47;Xi[e+48>>2]=48;Xi[e+52>>2]=49;Xi[e+40>>2]=34;Xi[e+56>>2]=35;break}default:{Xi[r>>2]=45;Xi[e+40>>2]=46}}if(!l)Xi[e+44>>2]=50}else{Xi[e>>2]=34;Xi[e+4>>2]=35;Xi[e+8>>2]=36;Xi[e+12>>2]=51;Xi[e+16>>2]=39;Xi[e+20>>2]=40;Xi[e+24>>2]=41;Xi[e+28>>2]=52;Xi[e+32>>2]=53;Xi[e+36>>2]=45;Xi[e+40>>2]=46;Xi[e+44>>2]=50;Xi[e+48>>2]=54;Xi[e+52>>2]=55;Xi[e+56>>2]=56}Xi[e+60>>2]=42;Xi[e+64>>2]=43;Xi[e+68>>2]=44;Xi[e+72>>2]=45;Xi[e+76>>2]=46;Xi[e+80>>2]=47;Xi[e+84>>2]=48;Xi[e+88>>2]=49;Xi[e+92>>2]=50;Xi[e+96>>2]=51;Xi[e+100>>2]=52;Xi[e+104>>2]=53;r=(f|0)<2;l=e+108|0;Xi[e+116>>2]=r?12:11;Xi[e+112>>2]=r?14:13;e:do{switch(i|0){case 140:case 180:{Xi[e+120>>2]=17;break}default:{f=e+120|0;if(r){Xi[f>>2]=15;break e}else{Xi[f>>2]=16;break e}}}}while(0);e:do{switch(i|0){case 70:case 140:case 180:{Xi[l>>2]=32;Xi[e+124>>2]=33;Xi[e+128>>2]=34;switch(i|0){case 140:case 180:break;default:break e}Xi[e+136>>2]=35;Xi[e+140>>2]=36;break}default:if(r){Xi[l>>2]=18;Xi[e+124>>2]=19;Xi[e+128>>2]=20;Xi[e+136>>2]=21;Xi[e+140>>2]=22;Xi[e+144>>2]=23;Xi[e+148>>2]=24;break e}else{Xi[l>>2]=25;Xi[e+124>>2]=26;Xi[e+128>>2]=27;Xi[e+136>>2]=28;Xi[e+140>>2]=29;Xi[e+144>>2]=30;Xi[e+148>>2]=31;break e}}}while(0);Xi[e+132>>2]=r?38:37;Xi[e+152>>2]=39;Xi[e+160>>2]=40;Xi[e+156>>2]=41;switch(i|0){case 24:{Xi[e+164>>2]=42;break}case 70:{Xi[e+164>>2]=43;break}case 140:case 180:{Xi[e+164>>2]=44;Xi[e+180>>2]=45;Xi[e+184>>2]=46;break}default:Xi[e+164>>2]=47}Xi[e+168>>2]=48;Xi[e+172>>2]=49;Xi[e+176>>2]=50;Xi[e+188>>2]=57;Xi[e+192>>2]=58;Xi[e+196>>2]=59;Xi[e+200>>2]=60;Xi[e+204>>2]=66;Xi[e+208>>2]=67;Xi[e+220>>2]=r?55:54;Xi[e+216>>2]=r?57:56;Xi[e+232>>2]=58;Xi[e+228>>2]=59;break}case 10:{if((i|0)!=70){l=(i|0)==140;r=(i|0)==180|l;switch(i|0){case 140:case 180:{Xi[e>>2]=32;Xi[e+4>>2]=33;break}default:{Xi[e>>2]=61;Xi[e+4>>2]=62}}Xi[e+8>>2]=63;Xi[e+12>>2]=(i|0)==24?38:64;Xi[e+16>>2]=65;Xi[e+20>>2]=66;Xi[e+24>>2]=67;Xi[e+28>>2]=r?43:68;Xi[e+32>>2]=69;r=e+36|0;switch(i|0){case 140:case 180:{Xi[r>>2]=47;Xi[e+48>>2]=72;Xi[e+52>>2]=73;Xi[e+40>>2]=61;Xi[e+56>>2]=62;break}default:{Xi[r>>2]=70;Xi[e+40>>2]=71}}if(!l)Xi[e+44>>2]=74}else{Xi[e>>2]=61;Xi[e+4>>2]=62;Xi[e+8>>2]=63;Xi[e+12>>2]=51;Xi[e+16>>2]=65;Xi[e+20>>2]=66;Xi[e+24>>2]=67;Xi[e+28>>2]=52;Xi[e+32>>2]=53;Xi[e+36>>2]=70;Xi[e+40>>2]=71;Xi[e+44>>2]=74;Xi[e+48>>2]=54;Xi[e+52>>2]=55;Xi[e+56>>2]=56}Xi[e+60>>2]=60;Xi[e+64>>2]=61;Xi[e+68>>2]=62;Xi[e+72>>2]=63;Xi[e+76>>2]=64;Xi[e+80>>2]=65;Xi[e+84>>2]=66;Xi[e+88>>2]=67;Xi[e+92>>2]=68;Xi[e+96>>2]=69;Xi[e+100>>2]=70;Xi[e+104>>2]=71;r=(f|0)<2;l=e+108|0;Xi[e+116>>2]=r?52:51;Xi[e+112>>2]=r?54:53;e:do{switch(i|0){case 140:case 180:{Xi[e+120>>2]=17;break}default:{f=e+120|0;if(r){Xi[f>>2]=55;break e}else{Xi[f>>2]=56;break e}}}}while(0);e:do{switch(i|0){case 70:case 140:case 180:{Xi[l>>2]=32;Xi[e+124>>2]=33;Xi[e+128>>2]=34;switch(i|0){case 140:case 180:break;default:break e}Xi[e+136>>2]=71;Xi[e+140>>2]=72;break}default:if(r){Xi[l>>2]=57;Xi[e+124>>2]=58;Xi[e+128>>2]=59;Xi[e+136>>2]=60;Xi[e+140>>2]=61;Xi[e+144>>2]=62;Xi[e+148>>2]=63;break e}else{Xi[l>>2]=64;Xi[e+124>>2]=65;Xi[e+128>>2]=66;Xi[e+136>>2]=67;Xi[e+140>>2]=68;Xi[e+144>>2]=69;Xi[e+148>>2]=70;break e}}}while(0);Xi[e+132>>2]=r?74:73;Xi[e+152>>2]=75;Xi[e+160>>2]=76;Xi[e+156>>2]=77;switch(i|0){case 24:{Xi[e+164>>2]=42;break}case 70:{Xi[e+164>>2]=43;break}case 140:case 180:{Xi[e+164>>2]=44;Xi[e+180>>2]=78;Xi[e+184>>2]=79;break}default:Xi[e+164>>2]=80}Xi[e+168>>2]=81;Xi[e+172>>2]=82;Xi[e+176>>2]=83;Xi[e+188>>2]=75;Xi[e+192>>2]=76;Xi[e+196>>2]=77;Xi[e+200>>2]=78;Xi[e+204>>2]=68;Xi[e+208>>2]=69;Xi[e+220>>2]=r?73:72;Xi[e+216>>2]=r?75:74;Xi[e+232>>2]=76;Xi[e+228>>2]=77;break}case 12:{if((i|0)!=70){l=(i|0)==140;r=(i|0)==180|l;switch(i|0){case 140:case 180:{Xi[e>>2]=32;Xi[e+4>>2]=33;break}default:{Xi[e>>2]=79;Xi[e+4>>2]=80}}Xi[e+8>>2]=81;Xi[e+12>>2]=(i|0)==24?38:82;Xi[e+16>>2]=83;Xi[e+20>>2]=84;Xi[e+24>>2]=85;Xi[e+28>>2]=r?43:86;Xi[e+32>>2]=87;r=e+36|0;switch(i|0){case 140:case 180:{Xi[r>>2]=47;Xi[e+48>>2]=90;Xi[e+52>>2]=91;Xi[e+40>>2]=79;Xi[e+56>>2]=80;break}default:{Xi[r>>2]=88;Xi[e+40>>2]=89}}if(!l)Xi[e+44>>2]=92}else{Xi[e>>2]=79;Xi[e+4>>2]=80;Xi[e+8>>2]=81;Xi[e+12>>2]=51;Xi[e+16>>2]=83;Xi[e+20>>2]=84;Xi[e+24>>2]=85;Xi[e+28>>2]=52;Xi[e+32>>2]=53;Xi[e+36>>2]=88;Xi[e+40>>2]=89;Xi[e+44>>2]=92;Xi[e+48>>2]=54;Xi[e+52>>2]=55;Xi[e+56>>2]=56}Xi[e+60>>2]=78;Xi[e+64>>2]=79;Xi[e+68>>2]=80;Xi[e+72>>2]=81;Xi[e+76>>2]=82;Xi[e+80>>2]=83;Xi[e+84>>2]=84;Xi[e+88>>2]=85;Xi[e+92>>2]=86;Xi[e+96>>2]=87;Xi[e+100>>2]=88;Xi[e+104>>2]=89;r=(f|0)<2;l=e+108|0;Xi[e+116>>2]=r?85:84;Xi[e+112>>2]=r?87:86;e:do{switch(i|0){case 140:case 180:{Xi[e+120>>2]=17;break}default:{f=e+120|0;if(r){Xi[f>>2]=88;break e}else{Xi[f>>2]=89;break e}}}}while(0);e:do{switch(i|0){case 70:case 140:case 180:{Xi[l>>2]=32;Xi[e+124>>2]=33;Xi[e+128>>2]=34;switch(i|0){case 140:case 180:break;default:break e}Xi[e+136>>2]=104;Xi[e+140>>2]=105;break}default:if(r){Xi[l>>2]=90;Xi[e+124>>2]=91;Xi[e+128>>2]=92;Xi[e+136>>2]=93;Xi[e+140>>2]=94;Xi[e+144>>2]=95;Xi[e+148>>2]=96;break e}else{Xi[l>>2]=97;Xi[e+124>>2]=98;Xi[e+128>>2]=99;Xi[e+136>>2]=100;Xi[e+140>>2]=101;Xi[e+144>>2]=102;Xi[e+148>>2]=103;break e}}}while(0);Xi[e+132>>2]=r?107:106;Xi[e+152>>2]=108;Xi[e+160>>2]=109;Xi[e+156>>2]=110;switch(i|0){case 24:{Xi[e+164>>2]=42;break}case 70:{Xi[e+164>>2]=43;break}case 140:case 180:{Xi[e+164>>2]=44;Xi[e+180>>2]=111;Xi[e+184>>2]=112;break}default:Xi[e+164>>2]=113}Xi[e+168>>2]=114;Xi[e+172>>2]=115;Xi[e+176>>2]=116;Xi[e+188>>2]=93;Xi[e+192>>2]=94;Xi[e+196>>2]=95;Xi[e+200>>2]=96;Xi[e+204>>2]=70;Xi[e+208>>2]=71;Xi[e+220>>2]=r?91:90;Xi[e+216>>2]=r?93:92;Xi[e+232>>2]=94;Xi[e+228>>2]=95;break}case 14:{if((i|0)!=70){l=(i|0)==140;r=(i|0)==180|l;switch(i|0){case 140:case 180:{Xi[e>>2]=32;Xi[e+4>>2]=33;break}default:{Xi[e>>2]=97;Xi[e+4>>2]=98}}Xi[e+8>>2]=99;Xi[e+12>>2]=(i|0)==24?38:100;Xi[e+16>>2]=101;Xi[e+20>>2]=102;Xi[e+24>>2]=103;Xi[e+28>>2]=r?43:104;Xi[e+32>>2]=105;r=e+36|0;switch(i|0){case 140:case 180:{Xi[r>>2]=47;Xi[e+48>>2]=108;Xi[e+52>>2]=109;Xi[e+40>>2]=97;Xi[e+56>>2]=98;break}default:{Xi[r>>2]=106;Xi[e+40>>2]=107}}if(!l)Xi[e+44>>2]=110}else{Xi[e>>2]=97;Xi[e+4>>2]=98;Xi[e+8>>2]=99;Xi[e+12>>2]=51;Xi[e+16>>2]=101;Xi[e+20>>2]=102;Xi[e+24>>2]=103;Xi[e+28>>2]=52;Xi[e+32>>2]=53;Xi[e+36>>2]=106;Xi[e+40>>2]=107;Xi[e+44>>2]=110;Xi[e+48>>2]=54;Xi[e+52>>2]=55;Xi[e+56>>2]=56}Xi[e+60>>2]=96;Xi[e+64>>2]=97;Xi[e+68>>2]=98;Xi[e+72>>2]=99;Xi[e+76>>2]=100;Xi[e+80>>2]=101;Xi[e+84>>2]=102;Xi[e+88>>2]=103;Xi[e+92>>2]=104;Xi[e+96>>2]=105;Xi[e+100>>2]=106;Xi[e+104>>2]=107;r=(f|0)<2;l=e+108|0;Xi[e+116>>2]=r?118:117;Xi[e+112>>2]=r?120:119;e:do{switch(i|0){case 140:case 180:{Xi[e+120>>2]=17;break}default:{f=e+120|0;if(r){Xi[f>>2]=121;break e}else{Xi[f>>2]=122;break e}}}}while(0);e:do{switch(i|0){case 70:case 140:case 180:{Xi[l>>2]=32;Xi[e+124>>2]=33;Xi[e+128>>2]=34;switch(i|0){case 140:case 180:break;default:break e}Xi[e+136>>2]=137;Xi[e+140>>2]=138;break}default:if(r){Xi[l>>2]=123;Xi[e+124>>2]=124;Xi[e+128>>2]=125;Xi[e+136>>2]=126;Xi[e+140>>2]=127;Xi[e+144>>2]=128;Xi[e+148>>2]=129;break e}else{Xi[l>>2]=130;Xi[e+124>>2]=131;Xi[e+128>>2]=132;Xi[e+136>>2]=133;Xi[e+140>>2]=134;Xi[e+144>>2]=135;Xi[e+148>>2]=136;break e}}}while(0);Xi[e+132>>2]=r?140:139;Xi[e+152>>2]=141;Xi[e+160>>2]=142;Xi[e+156>>2]=143;switch(i|0){case 24:{Xi[e+164>>2]=42;break}case 70:{Xi[e+164>>2]=43;break}case 140:case 180:{Xi[e+164>>2]=44;Xi[e+180>>2]=144;Xi[e+184>>2]=145;break}default:Xi[e+164>>2]=146}Xi[e+168>>2]=147;Xi[e+172>>2]=148;Xi[e+176>>2]=149;Xi[e+188>>2]=111;Xi[e+192>>2]=112;Xi[e+196>>2]=113;Xi[e+200>>2]=114;Xi[e+204>>2]=72;Xi[e+208>>2]=73;Xi[e+220>>2]=r?109:108;Xi[e+216>>2]=r?111:110;Xi[e+232>>2]=112;Xi[e+228>>2]=113;break}default:{if((r|0)>=9){Xi[l>>2]=120700;Xi[l+4>>2]=120713;Xi[l+8>>2]=590;nA(0,0,150445,l);$e()}if((i|0)!=70){l=(i|0)==140;r=(i|0)==180|l;switch(i|0){case 140:case 180:{Xi[e>>2]=32;Xi[e+4>>2]=33;break}default:{Xi[e>>2]=115;Xi[e+4>>2]=116}}Xi[e+8>>2]=117;Xi[e+12>>2]=(i|0)==24?38:118;Xi[e+16>>2]=119;Xi[e+20>>2]=120;Xi[e+24>>2]=121;Xi[e+28>>2]=r?43:122;Xi[e+32>>2]=123;r=e+36|0;switch(i|0){case 140:case 180:{Xi[r>>2]=47;Xi[e+48>>2]=126;Xi[e+52>>2]=127;Xi[e+40>>2]=115;Xi[e+56>>2]=116;break}default:{Xi[r>>2]=124;Xi[e+40>>2]=125}}if(!l)Xi[e+44>>2]=128}else{Xi[e>>2]=115;Xi[e+4>>2]=116;Xi[e+8>>2]=117;Xi[e+12>>2]=51;Xi[e+16>>2]=119;Xi[e+20>>2]=120;Xi[e+24>>2]=121;Xi[e+28>>2]=52;Xi[e+32>>2]=53;Xi[e+36>>2]=124;Xi[e+40>>2]=125;Xi[e+44>>2]=128;Xi[e+48>>2]=54;Xi[e+52>>2]=55;Xi[e+56>>2]=56}Xi[e+60>>2]=114;Xi[e+64>>2]=115;Xi[e+68>>2]=116;Xi[e+72>>2]=117;Xi[e+76>>2]=118;Xi[e+80>>2]=119;Xi[e+84>>2]=120;Xi[e+88>>2]=121;Xi[e+92>>2]=122;Xi[e+96>>2]=123;Xi[e+100>>2]=124;Xi[e+104>>2]=125;r=(f|0)<2;l=e+108|0;Xi[e+116>>2]=r?151:150;Xi[e+112>>2]=r?153:152;e:do{switch(i|0){case 140:case 180:{Xi[e+120>>2]=17;break}default:{f=e+120|0;if(r){Xi[f>>2]=154;break e}else{Xi[f>>2]=155;break e}}}}while(0);e:do{switch(i|0){case 70:case 140:case 180:{Xi[l>>2]=32;Xi[e+124>>2]=33;Xi[e+128>>2]=34;switch(i|0){case 140:case 180:break;default:break e}Xi[e+136>>2]=170;Xi[e+140>>2]=171;break}default:if(r){Xi[l>>2]=156;Xi[e+124>>2]=157;Xi[e+128>>2]=158;Xi[e+136>>2]=159;Xi[e+140>>2]=160;Xi[e+144>>2]=161;Xi[e+148>>2]=162;break e}else{Xi[l>>2]=163;Xi[e+124>>2]=164;Xi[e+128>>2]=165;Xi[e+136>>2]=166;Xi[e+140>>2]=167;Xi[e+144>>2]=168;Xi[e+148>>2]=169;break e}}}while(0);Xi[e+132>>2]=r?173:172;Xi[e+152>>2]=174;Xi[e+160>>2]=175;Xi[e+156>>2]=176;switch(i|0){case 24:{Xi[e+164>>2]=42;break}case 70:{Xi[e+164>>2]=43;break}case 140:case 180:{Xi[e+164>>2]=44;Xi[e+180>>2]=177;Xi[e+184>>2]=178;break}default:Xi[e+164>>2]=179}Xi[e+168>>2]=180;Xi[e+172>>2]=181;Xi[e+176>>2]=182;Xi[e+188>>2]=129;Xi[e+192>>2]=130;Xi[e+196>>2]=131;Xi[e+200>>2]=132;Xi[e+204>>2]=74;Xi[e+208>>2]=75;Xi[e+220>>2]=r?127:126;Xi[e+216>>2]=r?129:128;Xi[e+232>>2]=130;Xi[e+228>>2]=131}}Ue=a;return}function EH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;n=qi[e+(0-r)>>0]|0;a=qi[e+(1-r)>>0]|0;l=qi[e+(2-r)>>0]|0;f=qi[e+(3-r)>>0]|0;i=(n+2+(a<<1)+l|0)>>>2<<8|((qi[e+~r>>0]|0)+2+(n<<1)+a|0)>>>2|(a+2+(l<<1)+f|0)>>>2<<16|(l+2+(f<<1)+(qi[i>>0]|0)|0)>>>2<<24;Xi[e>>2]=i;Xi[e+r>>2]=i;Xi[e+(r<<1)>>2]=i;Xi[e+(r*3|0)>>2]=i;return}function SH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;t=qi[e+-1>>0]|0;n=qi[e+(r+-1)>>0]|0;a=r<<1;l=qi[e+(a+-1)>>0]|0;i=r*3|0;f=qi[e+(i+-1)>>0]|0;Xi[e>>2]=Zi(((qi[e+~r>>0]|0)+2+(t<<1)+n|0)>>>2,16843009)|0;Xi[e+r>>2]=Zi((t+2+(n<<1)+l|0)>>>2,16843009)|0;Xi[e+a>>2]=Zi((n+2+(l<<1)+f|0)>>>2,16843009)|0;Xi[e+i>>2]=Zi((l+2+f+(f<<1)|0)>>>2,16843009)|0;return}function _H(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;r=e+(0-i<<1)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function mH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;i=r>>1;r=rN(Ji[e+-2>>1]|0|0,0,65537,65537)|0;f=e;Xi[f>>2]=r;Xi[f+4>>2]=Ie;f=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(i<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;r=i<<1;f=rN(Ji[e+(r+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(r<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;i=i*3|0;r=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;i=e+(i<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=Ie;return}function pH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=(Ji[e+(0-a<<1)>>1]|0)+4+(Ji[e+(1-a<<1)>>1]|0)+(Ji[e+(2-a<<1)>>1]|0)+(Ji[e+(3-a<<1)>>1]|0)+(Ji[e+-2>>1]|0)+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function FH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0;n=qi[e+(2-r)>>0]|0;i=qi[e+(3-r)>>0]|0;f=r<<1;t=qi[e+(f+-1)>>0]|0;l=r*3|0;a=qi[e+(l+-1)>>0]|0;Wi[e>>0]=((qi[e+(r+-1)>>0]|0)+(qi[e+(1-r)>>0]|0)|0)>>>1;n=(t+n|0)>>>1&255;Wi[e+r>>0]=n;Wi[e+1>>0]=n;i=(a+i|0)>>>1&255;Wi[e+(l+3)>>0]=i;Wi[e+(l+2)>>0]=i;Wi[e+(f+3)>>0]=i;Wi[e+(l+1)>>0]=i;Wi[e+(f+2)>>0]=i;Wi[e+(r+3)>>0]=i;Wi[e+l>>0]=i;Wi[e+(f|1)>>0]=i;Wi[e+(r+2)>>0]=i;Wi[e+3>>0]=i;Wi[e+f>>0]=i;Wi[e+(r+1)>>0]=i;Wi[e+2>>0]=i;return}function yH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;n=r>>1;s=Ji[e+(1-n<<1)>>1]|0;l=Ji[e+(2-n<<1)>>1]|0;o=Ji[e+(3-n<<1)>>1]|0;t=Ji[i>>1]|0;a=Ji[i+2>>1]|0;f=Ji[i+4>>1]|0;r=Ji[i+6>>1]|0;Gi[e>>1]=((Ji[e+(0-n<<1)>>1]|0)+2+l+(s<<1)|0)>>>2;i=(s+2+o+(l<<1)|0)>>>2&65535;Gi[e+(n<<1)>>1]=i;Gi[e+2>>1]=i;i=(l+2+t+(o<<1)|0)>>>2&65535;l=n<<1;Gi[e+(l<<1)>>1]=i;Gi[e+(n+1<<1)>>1]=i;Gi[e+4>>1]=i;o=(o+2+a+(t<<1)|0)>>>2&65535;i=n*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+((l|1)<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+f+(a<<1)|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;Gi[e+(n+3<<1)>>1]=t;a=(a+2+r+(f<<1)|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(i+3<<1)>>1]=(f+2+(r*3|0)|0)>>>2;return}function OH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=r>>1;u=Ji[e+(~a<<1)>>1]|0;l=Ji[e+(0-a<<1)>>1]|0;f=Ji[e+(1-a<<1)>>1]|0;r=Ji[e+(2-a<<1)>>1]|0;i=Ji[e+(3-a<<1)>>1]|0;o=Ji[e+-2>>1]|0;h=Ji[e+(a+-1<<1)>>1]|0;t=a<<1;n=Ji[e+(t+-1<<1)>>1]|0;s=a*3|0;Gi[e+(s<<1)>>1]=(h+2+(n<<1)+(Ji[e+(s+-1<<1)>>1]|0)|0)>>>2;n=(o+2+(h<<1)+n|0)>>>2&65535;Gi[e+(s+1<<1)>>1]=n;Gi[e+(t<<1)>>1]=n;n=u+2|0;h=(n+(o<<1)+h|0)>>>2&65535;Gi[e+(s+2<<1)>>1]=h;Gi[e+((t|1)<<1)>>1]=h;Gi[e+(a<<1)>>1]=h;o=((u<<1)+2+l+o|0)>>>2&65535;Gi[e+(s+3<<1)>>1]=o;Gi[e+(t+2<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;Gi[e>>1]=o;n=(n+(l<<1)+f|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=n;Gi[e+(a+2<<1)>>1]=n;Gi[e+2>>1]=n;l=(l+2+(f<<1)+r|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=l;Gi[e+4>>1]=l;Gi[e+6>>1]=(f+2+(r<<1)+i|0)>>>2;return}function AH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;n=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;o=Ji[e+(3-t<<1)>>1]|0;l=Ji[e+-2>>1]|0;f=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;r=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;w=(n+1+h|0)>>>1&65535;Gi[e+((a|1)<<1)>>1]=w;Gi[e>>1]=w;w=(h+1+u|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=w;Gi[e+2>>1]=w;w=(u+1+s|0)>>>1&65535;Gi[e+(a+3<<1)>>1]=w;Gi[e+4>>1]=w;Gi[e+6>>1]=(s+1+o|0)>>>1;w=((n<<1)+2+h+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=w;Gi[e+(t<<1)>>1]=w;n=n+2|0;w=(n+(h<<1)+u|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;h=(h+2+(u<<1)+s|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=h;Gi[e+(t+2<<1)>>1]=h;Gi[e+(t+3<<1)>>1]=(u+2+(s<<1)+o|0)>>>2;Gi[e+(a<<1)>>1]=(n+(l<<1)+f|0)>>>2;Gi[e+(i<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function gH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;o=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;n=Ji[e+-2>>1]|0;l=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;f=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;r=Ji[e+(i+-1<<1)>>1]|0;w=(o+1+n|0)>>>1&65535;Gi[e+(t+2<<1)>>1]=w;Gi[e>>1]=w;w=((o<<1)+2+h+n|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=w;Gi[e+2>>1]=w;o=o+2|0;Gi[e+4>>1]=(o+(h<<1)+u|0)>>>2;Gi[e+6>>1]=(h+2+(u<<1)+s|0)>>>2;s=(n+1+l|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=s;Gi[e+(t<<1)>>1]=s;o=(o+(n<<1)+l|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=o;Gi[e+(t+1<<1)>>1]=o;t=(l+1+f|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=t;Gi[e+(a<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=n;Gi[e+((a|1)<<1)>>1]=n;Gi[e+(i<<1)>>1]=(f+1+r|0)>>>1;Gi[e+(i+1<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function MH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;h=qi[e+(0-r)>>0]|0;u=qi[e+(1-r)>>0]|0;s=qi[e+(2-r)>>0]|0;o=qi[e+(3-r)>>0]|0;t=qi[i>>0]|0;a=qi[i+1>>0]|0;l=qi[i+2>>0]|0;f=qi[i+3>>0]|0;Wi[e>>0]=(h+1+u|0)>>>1;i=(u+1+s|0)>>>1&255;n=r<<1;Wi[e+n>>0]=i;Wi[e+1>>0]=i;i=(s+1+o|0)>>>1&255;Wi[e+(n|1)>>0]=i;Wi[e+2>>0]=i;i=(o+1+t|0)>>>1&255;Wi[e+(n+2)>>0]=i;Wi[e+3>>0]=i;Wi[e+r>>0]=(h+2+(u<<1)+s|0)>>>2;u=(u+2+(s<<1)+o|0)>>>2&255;i=r*3|0;Wi[e+i>>0]=u;Wi[e+(r+1)>>0]=u;s=(s+2+(o<<1)+t|0)>>>2&255;Wi[e+(i+1)>>0]=s;Wi[e+(r+2)>>0]=s;o=(o+2+(t<<1)+a|0)>>>2&255;Wi[e+(i+2)>>0]=o;Wi[e+(r+3)>>0]=o;Wi[e+(n+3)>>0]=(t+2+(a<<1)+l|0)>>>2;Wi[e+(i+3)>>0]=(a+2+(l<<1)+f|0)>>>2;return}function RH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=r>>1;s=Ji[e+(0-a<<1)>>1]|0;o=Ji[e+(1-a<<1)>>1]|0;t=Ji[e+(2-a<<1)>>1]|0;n=Ji[e+(3-a<<1)>>1]|0;l=Ji[i>>1]|0;f=Ji[i+2>>1]|0;r=Ji[i+4>>1]|0;Gi[e>>1]=(s+1+o|0)>>>1;u=(o+1+t|0)>>>1&65535;i=a<<1;Gi[e+(i<<1)>>1]=u;Gi[e+2>>1]=u;u=(t+1+n|0)>>>1&65535;Gi[e+((i|1)<<1)>>1]=u;Gi[e+4>>1]=u;u=(n+1+l|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=u;Gi[e+6>>1]=u;Gi[e+(i+3<<1)>>1]=(l+1+f|0)>>>1;Gi[e+(a<<1)>>1]=(s+2+(o<<1)+t|0)>>>2;o=(o+2+(t<<1)+n|0)>>>2&65535;i=a*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;t=(t+2+(n<<1)+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(a+2<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=n;Gi[e+(a+3<<1)>>1]=n;Gi[e+(i+3<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function TH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;l=r>>1;o=Ji[e+-2>>1]|0;t=Ji[e+(l+-1<<1)>>1]|0;i=l<<1;n=Ji[e+(i+-1<<1)>>1]|0;f=l*3|0;r=Gi[e+(f+-1<<1)>>1]|0;a=r&65535;Gi[e>>1]=(o+1+t|0)>>>1;Gi[e+2>>1]=(o+2+(t<<1)+n|0)>>>2;o=(t+1+n|0)>>>1&65535;Gi[e+(l<<1)>>1]=o;Gi[e+4>>1]=o;t=(t+2+(n<<1)+a|0)>>>2&65535;Gi[e+(l+1<<1)>>1]=t;Gi[e+6>>1]=t;t=(n+1+a|0)>>>1&65535;Gi[e+(i<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;a=(n+2+a+(a<<1)|0)>>>2&65535;Gi[e+((i|1)<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(f+3<<1)>>1]=r;Gi[e+(f+2<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+(f<<1)>>1]=r;Gi[e+(f+1<<1)>>1]=r;Gi[e+(i+3<<1)>>1]=r;return}function NH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=rN(((Ji[e+-2>>1]|0)+2+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function DH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;f=rN(((Ji[e+(0-i<<1)>>1]|0)+2+(Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(2-i<<1)>>1]|0)+(Ji[e+(3-i<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function CH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=1024-(qi[e+~r>>0]|0)|0;l=e+(0-r)|0;a=e+(1-r)|0;n=e+(2-r)|0;t=e+(3-r)|0;i=e;e=0;while(1){o=(qi[i+-1>>0]|0)+f|0;Wi[i>>0]=Wi[129121+(o+(qi[l>>0]|0))>>0]|0;Wi[i+1>>0]=Wi[129121+((qi[a>>0]|0)+o)>>0]|0;Wi[i+2>>0]=Wi[129121+((qi[n>>0]|0)+o)>>0]|0;Wi[i+3>>0]=Wi[129121+((qi[t>>0]|0)+o)>>0]|0;e=e+1|0;if((e|0)==4)break;else i=i+r|0}return}function PH(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=16711935;Xi[r+4>>2]=16711935;r=e+(i<<1)|0;Xi[r>>2]=16711935;Xi[r+4>>2]=16711935;r=e+(i<<1<<1)|0;Xi[r>>2]=16711935;Xi[r+4>>2]=16711935;i=e+(i*3<<1)|0;Xi[i>>2]=16711935;Xi[i+4>>2]=16711935;return}function LH(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;r=e+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;r=e+(i<<1<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;i=e+(i*3<<1)|0;Xi[i>>2]=16843009;Xi[i+4>>2]=16843009;return}function IH(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=e+(i<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=e+(i<<1<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;i=e+(i*3<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;return}function HH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0;v=qi[e+(1-r)>>0]|0;c=qi[e+(2-r)>>0]|0;k=qi[e+(3-r)>>0]|0;h=qi[i>>0]|0;s=qi[i+1>>0]|0;n=qi[i+2>>0]|0;a=qi[i+3>>0]|0;d=qi[e+(r+-1)>>0]|0;t=r<<1;b=qi[e+(t+-1)>>0]|0;i=r*3|0;w=qi[e+(i+-1)>>0]|0;u=qi[e+((r<<2)+-1)>>0]|0;o=qi[e+((r*5|0)+-1)>>0]|0;l=qi[e+((r*6|0)+-1)>>0]|0;f=qi[e+((r*7|0)+-1)>>0]|0;Wi[e>>0]=((qi[e+(0-r)>>0]|0)+4+c+(qi[e+-1>>0]|0)+b+(d+v<<1)|0)>>>3;d=(v+4+k+d+w+(b+c<<1)|0)>>>3&255;Wi[e+r>>0]=d;Wi[e+1>>0]=d;b=(c+4+h+b+u+(w+k<<1)|0)>>>3&255;Wi[e+t>>0]=b;Wi[e+(r+1)>>0]=b;Wi[e+2>>0]=b;w=(k+4+s+w+o+(u+h<<1)|0)>>>3&255;Wi[e+i>>0]=w;Wi[e+(t|1)>>0]=w;Wi[e+(r+2)>>0]=w;Wi[e+3>>0]=w;u=(h+4+n+u+l+(o+s<<1)|0)>>>3&255;Wi[e+(i+1)>>0]=u;Wi[e+(t+2)>>0]=u;Wi[e+(r+3)>>0]=u;r=(s+4+a+o+f+(l+n<<1)|0)>>>3&255;Wi[e+(i+2)>>0]=r;Wi[e+(t+3)>>0]=r;Wi[e+(i+3)>>0]=(n+2+a+l+f|0)>>>2;return}function BH(e,i,r){e=e|0;i=i|0;r=r|0;UH(e,i,r,qi[e+(r+-1)>>0]|0,qi[e+((r<<1)+-1)>>0]|0,qi[e+((r*3|0)+-1)>>0]|0,qi[e+((r<<2)+-1)>>0]|0);return}function UH(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;var t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;k=qi[e+(0-r)>>0]|0;w=qi[e+(1-r)>>0]|0;h=qi[e+(2-r)>>0]|0;u=qi[e+(3-r)>>0]|0;s=qi[i>>0]|0;o=qi[i+1>>0]|0;t=qi[i+2>>0]|0;i=w<<1;Wi[e>>0]=(f+4+a+i+(k+l<<1)|0)>>>3;b=(w+1+h|0)>>>1&255;f=r<<1;Wi[e+f>>0]=b;Wi[e+1>>0]=b;b=(h+1+u|0)>>>1&255;Wi[e+(f|1)>>0]=b;Wi[e+2>>0]=b;b=(u+1+s|0)>>>1&255;Wi[e+(f+2)>>0]=b;Wi[e+3>>0]=b;Wi[e+(f+3)>>0]=(s+1+o|0)>>>1;Wi[e+r>>0]=(l+4+(a<<1)+n+k+i+h|0)>>>3;n=(w+2+(h<<1)+u|0)>>>2&255;i=r*3|0;Wi[e+i>>0]=n;Wi[e+(r+1)>>0]=n;n=(h+2+(u<<1)+s|0)>>>2&255;Wi[e+(i+1)>>0]=n;Wi[e+(r+2)>>0]=n;n=(u+2+(s<<1)+o|0)>>>2&255;Wi[e+(i+2)>>0]=n;Wi[e+(r+3)>>0]=n;Wi[e+(i+3)>>0]=(s+2+(o<<1)+t|0)>>>2;return}function xH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;E=qi[e+-1>>0]|0;b=qi[e+(r+-1)>>0]|0;t=r<<1;u=qi[e+(t+-1)>>0]|0;f=r*3|0;s=qi[e+(f+-1)>>0]|0;n=qi[e+((r<<2)+-1)>>0]|0;a=qi[e+((r*5|0)+-1)>>0]|0;l=qi[e+((r*6|0)+-1)>>0]|0;w=qi[e+(2-r)>>0]|0;c=qi[e+(3-r)>>0]|0;k=qi[i>>0]|0;h=qi[i+1>>0]|0;o=qi[i+2>>0]|0;i=qi[i+3>>0]|0;v=b<<1;d=v+4|0;Wi[e>>0]=(d+(qi[e+(1-r)>>0]|0)+c+(w+E<<1)|0)>>>3;Wi[e+1>>0]=(E+4+v+u+w+(c<<1)+k|0)>>>3;w=u<<1;c=(d+w+c+(k<<1)+h|0)>>>3&255;Wi[e+r>>0]=c;Wi[e+2>>0]=c;k=(b+4+w+s+k+(h<<1)+o|0)>>>3&255;Wi[e+(r+1)>>0]=k;Wi[e+3>>0]=k;h=(w+4+h+i+(o+s<<1)|0)>>>3&255;Wi[e+t>>0]=h;Wi[e+(r+2)>>0]=h;u=(u+4+o+((i+s|0)*3|0)|0)>>>3&255;Wi[e+(t|1)>>0]=u;Wi[e+(r+3)>>0]=u;r=s+2|0;s=(r+(n<<1)+a|0)>>>2&255;Wi[e+(f+1)>>0]=s;Wi[e+(t+3)>>0]=s;i=(r+n+o+i|0)>>>2&255;Wi[e+(t+2)>>0]=i;Wi[e+f>>0]=i;Wi[e+(f+2)>>0]=(n+1+a|0)>>>1;Wi[e+(f+3)>>0]=(n+2+(a<<1)+l|0)>>>2;return}function zH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=qi[e+(1-r)>>0]|0;h=qi[e+(2-r)>>0]|0;u=qi[e+(3-r)>>0]|0;s=qi[i>>0]|0;o=qi[i+1>>0]|0;a=qi[i+2>>0]|0;l=qi[i+3>>0]|0;w=qi[e+(r+-1)>>0]|0;n=r<<1;t=qi[e+(n+-1)>>0]|0;i=r*3|0;f=qi[e+(i+-1)>>0]|0;Wi[e>>0]=((qi[e+(0-r)>>0]|0)+4+h+(qi[e+-1>>0]|0)+t+(w+k<<1)|0)>>>3;w=(k+4+u+w+f+(t+h<<1)|0)>>>3&255;Wi[e+r>>0]=w;Wi[e+1>>0]=w;t=(h+4+s+(u<<1)+t+(f*3|0)|0)>>>3&255;Wi[e+n>>0]=t;Wi[e+(r+1)>>0]=t;Wi[e+2>>0]=t;t=f<<2;u=(u+4+o+(s<<1)+t|0)>>>3&255;Wi[e+i>>0]=u;Wi[e+(n|1)>>0]=u;Wi[e+(r+2)>>0]=u;Wi[e+3>>0]=u;s=(s+4+a+(o<<1)+t|0)>>>3&255;Wi[e+(i+1)>>0]=s;Wi[e+(n+2)>>0]=s;Wi[e+(r+3)>>0]=s;r=(o+4+l+(a<<1)+t|0)>>>3&255;Wi[e+(i+2)>>0]=r;Wi[e+(n+3)>>0]=r;Wi[e+(i+3)>>0]=(a+2+l+(f<<1)|0)>>>2;return}function VH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=qi[e+-1>>0]|0;w=qi[e+(r+-1)>>0]|0;a=r<<1;s=qi[e+(a+-1)>>0]|0;f=r*3|0;l=Wi[e+(f+-1)>>0]|0;o=l&255;h=qi[e+(2-r)>>0]|0;k=qi[e+(3-r)>>0]|0;t=qi[i>>0]|0;u=qi[i+1>>0]|0;n=qi[i+2>>0]|0;i=qi[i+3>>0]|0;c=w<<1;b=c+4|0;Wi[e>>0]=(b+(qi[e+(1-r)>>0]|0)+k+(h+d<<1)|0)>>>3;Wi[e+1>>0]=(d+4+c+s+h+(k<<1)+t|0)>>>3;h=s<<1;k=(b+h+k+(t<<1)+u|0)>>>3&255;Wi[e+r>>0]=k;Wi[e+2>>0]=k;t=(w+4+h+o+t+(u<<1)+n|0)>>>3&255;Wi[e+(r+1)>>0]=t;Wi[e+3>>0]=t;t=o<<1;u=(h+4+t+u+(n<<1)+i|0)>>>3&255;Wi[e+a>>0]=u;Wi[e+(r+2)>>0]=u;o=(s+4+n+((i+o|0)*3|0)|0)>>>3&255;Wi[e+(a|1)>>0]=o;Wi[e+(r+3)>>0]=o;Wi[e+(f+1)>>0]=l;Wi[e+(a+3)>>0]=l;i=(t+2+n+i|0)>>>2&255;Wi[e+(a+2)>>0]=i;Wi[e+f>>0]=i;Wi[e+(f+3)>>0]=l;Wi[e+(f+2)>>0]=l;return}function YH(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=qi[e+((r*3|0)+-1)>>0]|0;UH(e,i,r,qi[e+(r+-1)>>0]|0,qi[e+((r<<1)+-1)>>0]|0,f,f);return}function jH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=f>>1;a=0-k|0;w=Ji[e+(a<<1)>>1]|0;l=Ji[e+(1-k<<1)>>1]|0;n=Ji[e+(2-k<<1)>>1]|0;t=Ji[e+(3-k<<1)>>1]|0;o=Ji[e+(4-k<<1)>>1]|0;s=Ji[e+(5-k<<1)>>1]|0;u=Ji[e+(6-k<<1)>>1]|0;f=Gi[e+(7-k<<1)>>1]|0;h=f&65535;if(r)f=Gi[e+(8-k<<1)>>1]|0;Gi[e>>1]=((Ji[e+(((i|0)==0?a:~k)<<1)>>1]|0)+2+(w<<1)+l|0)>>>2;Gi[e+2>>1]=(w+2+(l<<1)+n|0)>>>2;Gi[e+4>>1]=(l+2+(n<<1)+t|0)>>>2;Gi[e+6>>1]=(n+2+(t<<1)+o|0)>>>2;a=e+8|0;Gi[a>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[e+10>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[e+12>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[e+14>>1]=((f&65535)+2+(h<<1)+u|0)>>>2;f=e;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=1;do{i=Zi(t,k)|0;r=e+(i<<1)|0;Xi[r>>2]=n;Xi[r+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=l;Xi[i+4>>2]=a;t=t+1|0}while((t|0)!=8);return}function KH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=f>>1;E=e+-2|0;d=Ji[E>>1]|0;b=Ji[e+(k+-1<<1)>>1]|0;c=k<<1;w=Ji[e+(c+-1<<1)>>1]|0;s=k*3|0;u=Ji[e+(s+-1<<1)>>1]|0;h=k<<2;o=Ji[e+(h+-1<<1)>>1]|0;a=k*5|0;n=Ji[e+(a+-1<<1)>>1]|0;t=k*6|0;l=Ji[e+(t+-1<<1)>>1]|0;r=k*7|0;f=Ji[e+(r+-1<<1)>>1]|0;E=rN(((Ji[((i|0)==0?E:e+(~k<<1)|0)>>1]|0)+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;v=Ie;i=e;Xi[i>>2]=E;Xi[i+4>>2]=v;i=e+8|0;Xi[i>>2]=E;Xi[i+4>>2]=v;d=rN((d+2+(b<<1)+w|0)>>>2|0,0,65537,65537)|0;i=Ie;v=e+(k<<1)|0;Xi[v>>2]=d;Xi[v+4>>2]=i;k=e+(k+4<<1)|0;Xi[k>>2]=d;Xi[k+4>>2]=i;b=rN((b+2+(w<<1)+u|0)>>>2|0,0,65537,65537)|0;k=Ie;i=e+(c<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;i=e+(c+4<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;w=rN((w+2+(u<<1)+o|0)>>>2|0,0,65537,65537)|0;i=Ie;k=e+(s<<1)|0;Xi[k>>2]=w;Xi[k+4>>2]=i;s=e+(s+4<<1)|0;Xi[s>>2]=w;Xi[s+4>>2]=i;u=rN((u+2+(o<<1)+n|0)>>>2|0,0,65537,65537)|0;s=Ie;i=e+(h<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;i=e+(h+4<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;o=rN((o+2+(n<<1)+l|0)>>>2|0,0,65537,65537)|0;i=Ie;s=e+(a<<1)|0;Xi[s>>2]=o;Xi[s+4>>2]=i;a=e+(a+4<<1)|0;Xi[a>>2]=o;Xi[a+4>>2]=i;n=rN((n+2+(l<<1)+f|0)>>>2|0,0,65537,65537)|0;a=Ie;i=e+(t<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;i=e+(t+4<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=rN((l+2+(f*3|0)|0)>>>2|0,0,65537,65537)|0;i=Ie;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function WH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>1;i=(i|0)!=0;u=~F;k=e+-2|0;v=Ji[k>>1]|0;n=Ji[e+(F+-1<<1)>>1]|0;h=Ji[e+((F<<1)+-1<<1)>>1]|0;w=Ji[e+((F*3|0)+-1<<1)>>1]|0;b=Ji[e+((F<<2)+-1<<1)>>1]|0;c=Ji[e+((F*5|0)+-1<<1)>>1]|0;d=Ji[e+((F*6|0)+-1<<1)>>1]|0;E=Ji[e+((F*7|0)+-1<<1)>>1]|0;S=0-F|0;_=Ji[e+(S<<1)>>1]|0;m=Ji[e+(1-F<<1)>>1]|0;p=Ji[e+(2-F<<1)>>1]|0;l=Ji[e+(3-F<<1)>>1]|0;a=Ji[e+(4-F<<1)>>1]|0;t=Ji[e+(5-F<<1)>>1]|0;o=Ji[e+(6-F<<1)>>1]|0;f=Gi[e+(7-F<<1)>>1]|0;s=f&65535;if(r)f=Gi[e+(8-F<<1)>>1]|0;p=(((Ji[(i?e+(u<<1)|0:k)>>1]|0)+2+(v<<1)+n|0)>>>2)+8+((v+2+(n<<1)+h|0)>>>2)+((n+2+(h<<1)+w|0)>>>2)+((h+2+(w<<1)+b|0)>>>2)+((w+2+(b<<1)+c|0)>>>2)+((b+2+(c<<1)+d|0)>>>2)+((c+2+(d<<1)+E|0)>>>2)+((d+2+(E*3|0)|0)>>>2)+(((Ji[e+((i?u:S)<<1)>>1]|0)+2+(_<<1)+m|0)>>>2)+((_+2+(m<<1)+p|0)>>>2)+((m+2+(p<<1)+l|0)>>>2)+((p+2+(l<<1)+a|0)>>>2)+((l+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+(((f&65535)+2+(s<<1)+o|0)>>>2)>>4;p=rN(p|0,((p|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;m=e;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+8|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<1;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*3|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<2;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*5|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*6|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;F=F*7|0;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;e=e+(F+4<<1)|0;Xi[e>>2]=p;Xi[e+4>>2]=r;return}function GH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;w=f>>1;b=0-w|0;m=Ji[e+(b<<1)>>1]|0;k=Ji[e+(1-w<<1)>>1]|0;v=Ji[e+(2-w<<1)>>1]|0;c=(m+2+(k<<1)+v|0)>>>2;E=Ji[e+(3-w<<1)>>1]|0;d=(k+2+(v<<1)+E|0)>>>2;_=Ji[e+(4-w<<1)>>1]|0;v=(v+2+(E<<1)+_|0)>>>2;p=Ji[e+(5-w<<1)>>1]|0;E=(E+2+(_<<1)+p|0)>>>2;S=Ji[e+(6-w<<1)>>1]|0;_=(_+2+(p<<1)+S|0)>>>2;f=Gi[e+(7-w<<1)>>1]|0;h=f&65535;p=(p+2+(S<<1)+h|0)>>>2;if(!r){r=(f&65535)+2+(h<<1)|0;l=h;a=h;n=h;t=h;o=h;s=h;u=h;f=h}else{y=Ji[e+(8-w<<1)>>1]|0;F=Ji[e+(9-w<<1)>>1]|0;f=Ji[e+(10-w<<1)>>1]|0;n=Ji[e+(11-w<<1)>>1]|0;t=Ji[e+(12-w<<1)>>1]|0;o=Ji[e+(13-w<<1)>>1]|0;u=Ji[e+(14-w<<1)>>1]|0;s=Ji[e+(15-w<<1)>>1]|0;r=(Ji[e+(8-w<<1)>>1]|0)+2+(h<<1)|0;l=(F+2+(f<<1)+n|0)>>>2;a=(f+2+(n<<1)+t|0)>>>2;n=(n+2+(t<<1)+o|0)>>>2;t=(t+2+(o<<1)+u|0)>>>2;o=(o+2+(u<<1)+s|0)>>>2;s=(u+2+(s*3|0)|0)>>>2;u=(h+2+(y<<1)+F|0)>>>2;f=(y+2+(F<<1)+f|0)>>>2}F=(r+S|0)>>>2;Gi[e>>1]=((((Ji[e+(((i|0)==0?b:~w)<<1)>>1]|0)+2+(m<<1)+k|0)>>>2)+2+(c<<1)+d|0)>>>2;y=(c+2+(d<<1)+v|0)>>>2&65535;Gi[e+2>>1]=y;Gi[e+(w<<1)>>1]=y;y=(d+2+(v<<1)+E|0)>>>2&65535;Gi[e+4>>1]=y;Gi[e+(w+1<<1)>>1]=y;d=w<<1;Gi[e+(d<<1)>>1]=y;y=(v+2+(E<<1)+_|0)>>>2&65535;Gi[e+6>>1]=y;Gi[e+(w+2<<1)>>1]=y;Gi[e+((d|1)<<1)>>1]=y;v=w*3|0;Gi[e+(v<<1)>>1]=y;y=(E+2+(_<<1)+p|0)>>>2&65535;Gi[e+8>>1]=y;Gi[e+(w+3<<1)>>1]=y;Gi[e+(d+2<<1)>>1]=y;Gi[e+(v+1<<1)>>1]=y;S=w<<2;Gi[e+(S<<1)>>1]=y;y=(_+2+(p<<1)+F|0)>>>2&65535;Gi[e+10>>1]=y;Gi[e+(w+4<<1)>>1]=y;Gi[e+(d+3<<1)>>1]=y;Gi[e+(v+2<<1)>>1]=y;Gi[e+((S|1)<<1)>>1]=y;m=w*5|0;Gi[e+(m<<1)>>1]=y;y=(p+2+(F<<1)+u|0)>>>2&65535;Gi[e+12>>1]=y;Gi[e+(w+5<<1)>>1]=y;Gi[e+(d+4<<1)>>1]=y;Gi[e+(v+3<<1)>>1]=y;Gi[e+((S|2)<<1)>>1]=y;Gi[e+(m+1<<1)>>1]=y;i=w*6|0;Gi[e+(i<<1)>>1]=y;F=(F+2+(u<<1)+f|0)>>>2&65535;Gi[e+14>>1]=F;Gi[e+(w+6<<1)>>1]=F;Gi[e+(d+5<<1)>>1]=F;Gi[e+(v+4<<1)>>1]=F;Gi[e+((S|3)<<1)>>1]=F;Gi[e+(m+2<<1)>>1]=F;Gi[e+((i|1)<<1)>>1]=F;y=w*7|0;Gi[e+(y<<1)>>1]=F;F=(u+2+(f<<1)+l|0)>>>2&65535;Gi[e+(w+7<<1)>>1]=F;Gi[e+(d+6<<1)>>1]=F;Gi[e+(v+5<<1)>>1]=F;Gi[e+(S+4<<1)>>1]=F;Gi[e+(m+3<<1)>>1]=F;Gi[e+(i+2<<1)>>1]=F;Gi[e+(y+1<<1)>>1]=F;F=(f+2+(l<<1)+a|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=F;Gi[e+(v+6<<1)>>1]=F;Gi[e+(S+5<<1)>>1]=F;Gi[e+(m+4<<1)>>1]=F;Gi[e+(i+3<<1)>>1]=F;Gi[e+(y+2<<1)>>1]=F;F=(l+2+(a<<1)+n|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=F;Gi[e+(S+6<<1)>>1]=F;Gi[e+(m+5<<1)>>1]=F;Gi[e+(i+4<<1)>>1]=F;Gi[e+(y+3<<1)>>1]=F;F=(a+2+(n<<1)+t|0)>>>2&65535;Gi[e+(S+7<<1)>>1]=F;Gi[e+(m+6<<1)>>1]=F;Gi[e+(i+5<<1)>>1]=F;Gi[e+(y+4<<1)>>1]=F;F=(n+2+(t<<1)+o|0)>>>2&65535;Gi[e+(m+7<<1)>>1]=F;Gi[e+(i+6<<1)>>1]=F;Gi[e+(y+5<<1)>>1]=F;F=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=F;Gi[e+(y+6<<1)>>1]=F;Gi[e+(y+7<<1)>>1]=(o+2+(s*3|0)|0)>>>2;return}function XH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;M=e+(n<<1)|0;S=e+-2|0;R=Ji[S>>1]|0;m=Ji[e+(c+-1<<1)>>1]|0;S=((Ji[(i?M:S)>>1]|0)+2+(R<<1)+m|0)>>>2;n=c<<1;p=Ji[e+(n+-1<<1)>>1]|0;R=R+2|0;r=(R+(m<<1)+p|0)>>>2;i=c*3|0;F=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(p<<1)+F|0)>>>2;d=c<<2;y=Ji[e+(d+-1<<1)>>1]|0;p=(p+2+(F<<1)+y|0)>>>2;v=c*5|0;O=Ji[e+(v+-1<<1)>>1]|0;F=(F+2+(y<<1)+O|0)>>>2;E=c*6|0;g=Ji[e+(E+-1<<1)>>1]|0;y=(y+2+(O<<1)+g|0)>>>2;_=c*7|0;A=Ji[e+(_+-1<<1)>>1]|0;O=(O+2+(g<<1)+A|0)>>>2;k=(R+((Ji[M>>1]|0)<<1)+k|0)>>>2;Gi[e+(_<<1)>>1]=(y+2+((g+2+(A*3|0)|0)>>>2)+(O<<1)|0)>>>2;O=(F+2+(y<<1)+O|0)>>>2&65535;Gi[e+(_+1<<1)>>1]=O;Gi[e+(E<<1)>>1]=O;y=(p+2+(F<<1)+y|0)>>>2&65535;Gi[e+(_+2<<1)>>1]=y;Gi[e+((E|1)<<1)>>1]=y;Gi[e+(v<<1)>>1]=y;F=(m+2+(p<<1)+F|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=F;Gi[e+(E+2<<1)>>1]=F;Gi[e+(v+1<<1)>>1]=F;Gi[e+(d<<1)>>1]=F;p=(r+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+3<<1)>>1]=p;Gi[e+(v+2<<1)>>1]=p;Gi[e+((d|1)<<1)>>1]=p;Gi[e+(i<<1)>>1]=p;m=(S+2+(r<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(v+3<<1)>>1]=m;Gi[e+((d|2)<<1)>>1]=m;Gi[e+(i+1<<1)>>1]=m;Gi[e+(n<<1)>>1]=m;r=((S<<1)+2+r+k|0)>>>2&65535;Gi[e+(_+6<<1)>>1]=r;Gi[e+(E+5<<1)>>1]=r;Gi[e+(v+4<<1)>>1]=r;Gi[e+((d|3)<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+((n|1)<<1)>>1]=r;Gi[e+(c<<1)>>1]=r;r=l+2|0;S=(r+S+(k<<1)|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+6<<1)>>1]=S;Gi[e+(v+5<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+(i+3<<1)>>1]=S;Gi[e+(n+2<<1)>>1]=S;Gi[e+(c+1<<1)>>1]=S;Gi[e>>1]=S;k=((l<<1)+2+a+k|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=k;Gi[e+(v+6<<1)>>1]=k;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(n+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;Gi[e+2>>1]=k;r=(r+(a<<1)+t|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=r;Gi[e+(d+6<<1)>>1]=r;Gi[e+(i+5<<1)>>1]=r;Gi[e+(n+4<<1)>>1]=r;Gi[e+(c+3<<1)>>1]=r;Gi[e+4>>1]=r;r=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=r;Gi[e+(i+6<<1)>>1]=r;Gi[e+(n+5<<1)>>1]=r;Gi[e+(c+4<<1)>>1]=r;Gi[e+6>>1]=r;r=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=r;Gi[e+(n+6<<1)>>1]=r;Gi[e+(c+5<<1)>>1]=r;Gi[e+8>>1]=r;r=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=r;Gi[e+(c+6<<1)>>1]=r;Gi[e+10>>1]=r;r=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=r;Gi[e+12>>1]=r;Gi[e+14>>1]=(h+2+(b<<1)+(((f&65535)+2+(w<<1)+u|0)>>>2)|0)>>>2;return}function qH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;r=((f&65535)+2+(w<<1)+u|0)>>>2;E=e+(n<<1)|0;v=e+-2|0;O=Ji[v>>1]|0;S=Ji[e+(c+-1<<1)>>1]|0;v=((Ji[(i?E:v)>>1]|0)+2+(O<<1)+S|0)>>>2;w=c<<1;p=Ji[e+(w+-1<<1)>>1]|0;O=O+2|0;_=(O+(S<<1)+p|0)>>>2;u=c*3|0;m=Ji[e+(u+-1<<1)>>1]|0;S=(S+2+(p<<1)+m|0)>>>2;n=c<<2;y=Ji[e+(n+-1<<1)>>1]|0;p=(p+2+(m<<1)+y|0)>>>2;i=c*5|0;A=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(y<<1)+A|0)>>>2;f=c*6|0;F=Ji[e+(f+-1<<1)>>1]|0;y=(y+2+(A<<1)+F|0)>>>2;d=c*7|0;F=(A+2+(F<<1)+(Ji[e+(d+-1<<1)>>1]|0)|0)>>>2;E=(O+((Ji[E>>1]|0)<<1)+k|0)>>>2;Gi[e+(f<<1)>>1]=(p+2+(m<<1)+y|0)>>>2;Gi[e+(d<<1)>>1]=(m+2+(y<<1)+F|0)>>>2;k=(_+2+(S<<1)+p|0)>>>2&65535;Gi[e+((f|1)<<1)>>1]=k;Gi[e+(n<<1)>>1]=k;k=(S+2+(p<<1)+m|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=k;Gi[e+(i<<1)>>1]=k;k=((v<<1)+2+_+E|0)>>>2&65535;Gi[e+(f+2<<1)>>1]=k;Gi[e+((n|1)<<1)>>1]=k;Gi[e+(w<<1)>>1]=k;k=(v+2+(_<<1)+S|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=k;Gi[e+(i+1<<1)>>1]=k;Gi[e+(u<<1)>>1]=k;k=l+2|0;v=(k+v+(E<<1)|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=v;Gi[e+(i+2<<1)>>1]=v;Gi[e+(u+1<<1)>>1]=v;Gi[e+(c<<1)>>1]=v;v=l+1|0;S=(v+E|0)>>>1&65535;Gi[e+(f+3<<1)>>1]=S;Gi[e+((n|2)<<1)>>1]=S;Gi[e+((w|1)<<1)>>1]=S;Gi[e>>1]=S;l=((l<<1)+2+a+E|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=l;Gi[e+(i+3<<1)>>1]=l;Gi[e+(u+2<<1)>>1]=l;Gi[e+(c+1<<1)>>1]=l;l=(v+a|0)>>>1&65535;Gi[e+(f+4<<1)>>1]=l;Gi[e+((n|3)<<1)>>1]=l;Gi[e+(w+2<<1)>>1]=l;Gi[e+2>>1]=l;k=(k+(a<<1)+t|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(u+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;k=(a+1+t|0)>>>1&65535;Gi[e+(f+5<<1)>>1]=k;Gi[e+(n+4<<1)>>1]=k;Gi[e+(w+3<<1)>>1]=k;Gi[e+4>>1]=k;k=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=k;Gi[e+(i+5<<1)>>1]=k;Gi[e+(u+4<<1)>>1]=k;Gi[e+(c+3<<1)>>1]=k;k=(t+1+o|0)>>>1&65535;Gi[e+(f+6<<1)>>1]=k;Gi[e+(n+5<<1)>>1]=k;Gi[e+(w+4<<1)>>1]=k;Gi[e+6>>1]=k;k=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=k;Gi[e+(i+6<<1)>>1]=k;Gi[e+(u+5<<1)>>1]=k;Gi[e+(c+4<<1)>>1]=k;k=(o+1+s|0)>>>1&65535;Gi[e+(f+7<<1)>>1]=k;Gi[e+(n+6<<1)>>1]=k;Gi[e+(w+5<<1)>>1]=k;Gi[e+8>>1]=k;k=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=k;Gi[e+(u+6<<1)>>1]=k;Gi[e+(c+5<<1)>>1]=k;k=(s+1+h|0)>>>1&65535;Gi[e+(n+7<<1)>>1]=k;Gi[e+(w+6<<1)>>1]=k;Gi[e+10>>1]=k;k=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(u+7<<1)>>1]=k;Gi[e+(c+6<<1)>>1]=k;k=(h+1+b|0)>>>1&65535;Gi[e+(w+7<<1)>>1]=k;Gi[e+12>>1]=k;Gi[e+(c+7<<1)>>1]=(h+2+(b<<1)+r|0)>>>2;Gi[e+14>>1]=(b+1+r|0)>>>1;return}function JH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;n=f>>1;s=(i|0)!=0;h=0-n|0;u=~n;O=Ji[e+(h<<1)>>1]|0;a=Ji[e+(1-n<<1)>>1]|0;h=((Ji[e+((s?u:h)<<1)>>1]|0)+2+(O<<1)+a|0)>>>2;l=Ji[e+(2-n<<1)>>1]|0;O=O+2|0;t=(O+(a<<1)+l|0)>>>2;f=Ji[e+(3-n<<1)>>1]|0;a=(a+2+(l<<1)+f|0)>>>2;i=Ji[e+(4-n<<1)>>1]|0;l=(l+2+(f<<1)+i|0)>>>2;w=Ji[e+(5-n<<1)>>1]|0;f=(f+2+(i<<1)+w|0)>>>2;r=Ji[e+(6-n<<1)>>1]|0;i=(i+2+(w<<1)+r|0)>>>2;r=(w+2+(r<<1)+(Ji[e+(7-n<<1)>>1]|0)|0)>>>2;u=e+(u<<1)|0;w=e+-2|0;y=Ji[w>>1]|0;o=Ji[e+(n+-1<<1)>>1]|0;w=((Ji[(s?u:w)>>1]|0)+2+(y<<1)+o|0)>>>2;s=n<<1;v=Ji[e+(s+-1<<1)>>1]|0;b=(y+2+(o<<1)+v|0)>>>2;k=n*3|0;S=Ji[e+(k+-1<<1)>>1]|0;o=(o+2+(v<<1)+S|0)>>>2;c=n<<2;m=Ji[e+(c+-1<<1)>>1]|0;v=(v+2+(S<<1)+m|0)>>>2;d=n*5|0;p=Ji[e+(d+-1<<1)>>1]|0;S=(S+2+(m<<1)+p|0)>>>2;E=n*6|0;A=Ji[e+(E+-1<<1)>>1]|0;m=(m+2+(p<<1)+A|0)>>>2;_=n*7|0;F=Ji[e+(_+-1<<1)>>1]|0;p=(p+2+(A<<1)+F|0)>>>2;F=(A+2+(F*3|0)|0)>>>2;u=(O+y+((Ji[u>>1]|0)<<1)|0)>>>2;Gi[e+(_<<1)>>1]=(F+1+p|0)>>>1;Gi[e+(_+1<<1)>>1]=(m+2+F+(p<<1)|0)>>>2;F=(m+1+p|0)>>>1&65535;Gi[e+(_+2<<1)>>1]=F;Gi[e+(E<<1)>>1]=F;p=(S+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=p;Gi[e+((E|1)<<1)>>1]=p;p=(S+1+m|0)>>>1&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+2<<1)>>1]=p;Gi[e+(d<<1)>>1]=p;m=(v+2+(S<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+3<<1)>>1]=m;Gi[e+(d+1<<1)>>1]=m;m=(v+1+S|0)>>>1&65535;Gi[e+(_+6<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(d+2<<1)>>1]=m;Gi[e+(c<<1)>>1]=m;S=(o+2+(v<<1)+S|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+5<<1)>>1]=S;Gi[e+(d+3<<1)>>1]=S;Gi[e+((c|1)<<1)>>1]=S;S=(o+1+v|0)>>>1&65535;Gi[e+(E+6<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+((c|2)<<1)>>1]=S;Gi[e+(k<<1)>>1]=S;v=(b+2+(o<<1)+v|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=v;Gi[e+(d+5<<1)>>1]=v;Gi[e+((c|3)<<1)>>1]=v;Gi[e+(k+1<<1)>>1]=v;v=(b+1+o|0)>>>1&65535;Gi[e+(d+6<<1)>>1]=v;Gi[e+(c+4<<1)>>1]=v;Gi[e+(k+2<<1)>>1]=v;Gi[e+(s<<1)>>1]=v;o=(w+2+(b<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=o;Gi[e+(c+5<<1)>>1]=o;Gi[e+(k+3<<1)>>1]=o;Gi[e+((s|1)<<1)>>1]=o;o=w+1|0;d=(o+b|0)>>>1&65535;Gi[e+(c+6<<1)>>1]=d;Gi[e+(k+4<<1)>>1]=d;Gi[e+(s+2<<1)>>1]=d;Gi[e+(n<<1)>>1]=d;b=((w<<1)+2+b+u|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=b;Gi[e+(k+5<<1)>>1]=b;Gi[e+(s+3<<1)>>1]=b;Gi[e+(n+1<<1)>>1]=b;o=(o+u|0)>>>1&65535;Gi[e+(k+6<<1)>>1]=o;Gi[e+(s+4<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e>>1]=o;o=h+2|0;w=(o+w+(u<<1)|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=w;Gi[e+(s+5<<1)>>1]=w;Gi[e+(n+3<<1)>>1]=w;Gi[e+2>>1]=w;u=((h<<1)+2+t+u|0)>>>2&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(n+4<<1)>>1]=u;Gi[e+4>>1]=u;o=(o+(t<<1)+a|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(n+5<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+(a<<1)+l|0)>>>2&65535;Gi[e+(n+6<<1)>>1]=t;Gi[e+8>>1]=t;a=(a+2+(l<<1)+f|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=a;Gi[e+10>>1]=a;Gi[e+12>>1]=(l+2+(f<<1)+i|0)>>>2;Gi[e+14>>1]=(f+2+(i<<1)+r|0)>>>2;return}function ZH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=f>>1;o=0-d|0;s=Ji[e+(o<<1)>>1]|0;u=Ji[e+(1-d<<1)>>1]|0;o=((Ji[e+(((i|0)==0?o:~d)<<1)>>1]|0)+2+(s<<1)+u|0)>>>2;h=Ji[e+(2-d<<1)>>1]|0;s=(s+2+(u<<1)+h|0)>>>2;w=Ji[e+(3-d<<1)>>1]|0;u=(u+2+(h<<1)+w|0)>>>2;b=Ji[e+(4-d<<1)>>1]|0;h=(h+2+(w<<1)+b|0)>>>2;c=Ji[e+(5-d<<1)>>1]|0;w=(w+2+(b<<1)+c|0)>>>2;k=Ji[e+(6-d<<1)>>1]|0;b=(b+2+(c<<1)+k|0)>>>2;f=Gi[e+(7-d<<1)>>1]|0;t=f&65535;c=(c+2+(k<<1)+t|0)>>>2;if(!r){i=(f&65535)+2+(t<<1)|0;r=t;l=t;a=t;n=t;f=t}else{E=Ji[e+(8-d<<1)>>1]|0;v=Ji[e+(9-d<<1)>>1]|0;f=Ji[e+(10-d<<1)>>1]|0;n=Ji[e+(11-d<<1)>>1]|0;a=Ji[e+(12-d<<1)>>1]|0;i=(Ji[e+(8-d<<1)>>1]|0)+2+(t<<1)|0;r=(v+2+(f<<1)+n|0)>>>2;l=(f+2+(n<<1)+a|0)>>>2;a=(n+2+(a<<1)+(Ji[e+(13-d<<1)>>1]|0)|0)>>>2;n=(t+2+(E<<1)+v|0)>>>2;f=(E+2+(v<<1)+f|0)>>>2}i=(i+k|0)>>>2;Gi[e>>1]=(o+1+s|0)>>>1;Gi[e+(d<<1)>>1]=(o+2+(s<<1)+u|0)>>>2;E=(s+1+u|0)>>>1&65535;Gi[e+2>>1]=E;t=d<<1;Gi[e+(t<<1)>>1]=E;E=(s+2+(u<<1)+h|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=E;o=d*3|0;Gi[e+(o<<1)>>1]=E;E=(u+1+h|0)>>>1&65535;Gi[e+4>>1]=E;Gi[e+((t|1)<<1)>>1]=E;s=d<<2;Gi[e+(s<<1)>>1]=E;E=(u+2+(h<<1)+w|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=E;Gi[e+(o+1<<1)>>1]=E;k=d*5|0;Gi[e+(k<<1)>>1]=E;E=(h+1+w|0)>>>1&65535;Gi[e+6>>1]=E;Gi[e+(t+2<<1)>>1]=E;Gi[e+((s|1)<<1)>>1]=E;v=d*6|0;Gi[e+(v<<1)>>1]=E;h=(h+2+(w<<1)+b|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=h;Gi[e+(o+2<<1)>>1]=h;Gi[e+(k+1<<1)>>1]=h;E=d*7|0;Gi[e+(E<<1)>>1]=h;h=(w+1+b|0)>>>1&65535;Gi[e+8>>1]=h;Gi[e+(t+3<<1)>>1]=h;Gi[e+((s|2)<<1)>>1]=h;Gi[e+((v|1)<<1)>>1]=h;w=(w+2+(b<<1)+c|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=w;Gi[e+(o+3<<1)>>1]=w;Gi[e+(k+2<<1)>>1]=w;Gi[e+(E+1<<1)>>1]=w;w=(b+1+c|0)>>>1&65535;Gi[e+10>>1]=w;Gi[e+(t+4<<1)>>1]=w;Gi[e+((s|3)<<1)>>1]=w;Gi[e+(v+2<<1)>>1]=w;b=(b+2+(c<<1)+i|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=b;Gi[e+(o+4<<1)>>1]=b;Gi[e+(k+3<<1)>>1]=b;Gi[e+(E+2<<1)>>1]=b;b=(c+1+i|0)>>>1&65535;Gi[e+12>>1]=b;Gi[e+(t+5<<1)>>1]=b;Gi[e+(s+4<<1)>>1]=b;Gi[e+(v+3<<1)>>1]=b;c=(c+2+(i<<1)+n|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=c;Gi[e+(o+5<<1)>>1]=c;Gi[e+(k+4<<1)>>1]=c;Gi[e+(E+3<<1)>>1]=c;c=(i+1+n|0)>>>1&65535;Gi[e+14>>1]=c;Gi[e+(t+6<<1)>>1]=c;Gi[e+(s+5<<1)>>1]=c;Gi[e+(v+4<<1)>>1]=c;c=(i+2+(n<<1)+f|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=c;Gi[e+(o+6<<1)>>1]=c;Gi[e+(k+5<<1)>>1]=c;Gi[e+(E+4<<1)>>1]=c;d=(n+1+f|0)>>>1&65535;Gi[e+(t+7<<1)>>1]=d;Gi[e+(s+6<<1)>>1]=d;Gi[e+(v+5<<1)>>1]=d;d=(n+2+(f<<1)+r|0)>>>2&65535;Gi[e+(o+7<<1)>>1]=d;Gi[e+(k+6<<1)>>1]=d;Gi[e+(E+5<<1)>>1]=d;d=(f+1+r|0)>>>1&65535;Gi[e+(s+7<<1)>>1]=d;Gi[e+(v+6<<1)>>1]=d;d=(f+2+(r<<1)+l|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=d;Gi[e+(E+6<<1)>>1]=d;Gi[e+(v+7<<1)>>1]=(r+1+l|0)>>>1;Gi[e+(E+7<<1)>>1]=(r+2+(l<<1)+a|0)>>>2;return}function QH(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;h=f>>1;c=e+-2|0;b=Ji[c>>1]|0;k=Ji[e+(h+-1<<1)>>1]|0;c=((Ji[((i|0)==0?c:e+(~h<<1)|0)>>1]|0)+2+(b<<1)+k|0)>>>2;s=h<<1;w=Ji[e+(s+-1<<1)>>1]|0;b=(b+2+(k<<1)+w|0)>>>2;t=h*3|0;u=Ji[e+(t+-1<<1)>>1]|0;k=(k+2+(w<<1)+u|0)>>>2;a=h<<2;o=Ji[e+(a+-1<<1)>>1]|0;w=(w+2+(u<<1)+o|0)>>>2;l=h*5|0;n=Ji[e+(l+-1<<1)>>1]|0;u=(u+2+(o<<1)+n|0)>>>2;f=h*6|0;d=Ji[e+(f+-1<<1)>>1]|0;o=(o+2+(n<<1)+d|0)>>>2;r=h*7|0;i=Ji[e+(r+-1<<1)>>1]|0;n=(n+2+(d<<1)+i|0)>>>2;i=(d+2+(i*3|0)|0)>>>2;Gi[e>>1]=(c+1+b|0)>>>1;Gi[e+2>>1]=(c+2+(b<<1)+k|0)>>>2;c=(b+1+k|0)>>>1&65535;Gi[e+4>>1]=c;Gi[e+(h<<1)>>1]=c;b=(b+2+(k<<1)+w|0)>>>2&65535;Gi[e+6>>1]=b;Gi[e+(h+1<<1)>>1]=b;b=(k+1+w|0)>>>1&65535;Gi[e+8>>1]=b;Gi[e+(h+2<<1)>>1]=b;Gi[e+(s<<1)>>1]=b;k=(k+2+(w<<1)+u|0)>>>2&65535;Gi[e+10>>1]=k;Gi[e+(h+3<<1)>>1]=k;Gi[e+((s|1)<<1)>>1]=k;k=(w+1+u|0)>>>1&65535;Gi[e+12>>1]=k;Gi[e+(h+4<<1)>>1]=k;Gi[e+(s+2<<1)>>1]=k;Gi[e+(t<<1)>>1]=k;w=(w+2+(u<<1)+o|0)>>>2&65535;Gi[e+14>>1]=w;Gi[e+(h+5<<1)>>1]=w;Gi[e+(s+3<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;w=(u+1+o|0)>>>1&65535;Gi[e+(h+6<<1)>>1]=w;Gi[e+(s+4<<1)>>1]=w;Gi[e+(t+2<<1)>>1]=w;Gi[e+(a<<1)>>1]=w;u=(u+2+(o<<1)+n|0)>>>2&65535;Gi[e+(h+7<<1)>>1]=u;Gi[e+(s+5<<1)>>1]=u;Gi[e+(t+3<<1)>>1]=u;Gi[e+((a|1)<<1)>>1]=u;u=(o+1+n|0)>>>1&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(t+4<<1)>>1]=u;Gi[e+((a|2)<<1)>>1]=u;Gi[e+(l<<1)>>1]=u;o=(o+2+i+(n<<1)|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(t+5<<1)>>1]=o;Gi[e+((a|3)<<1)>>1]=o;Gi[e+(l+1<<1)>>1]=o;o=(i+1+n|0)>>>1&65535;Gi[e+(t+6<<1)>>1]=o;Gi[e+(a+4<<1)>>1]=o;Gi[e+(l+2<<1)>>1]=o;Gi[e+(f<<1)>>1]=o;n=(n+2+(i*3|0)|0)>>>2&65535;Gi[e+(t+7<<1)>>1]=n;Gi[e+(a+5<<1)>>1]=n;Gi[e+(l+3<<1)>>1]=n;Gi[e+((f|1)<<1)>>1]=n;i=i&65535;Gi[e+(r+7<<1)>>1]=i;Gi[e+(f+7<<1)>>1]=i;Gi[e+(l+7<<1)>>1]=i;Gi[e+(a+7<<1)>>1]=i;Gi[e+(r+6<<1)>>1]=i;Gi[e+(f+6<<1)>>1]=i;Gi[e+(l+6<<1)>>1]=i;Gi[e+(a+6<<1)>>1]=i;Gi[e+(r+5<<1)>>1]=i;Gi[e+(f+5<<1)>>1]=i;Gi[e+(l+5<<1)>>1]=i;Gi[e+(r+4<<1)>>1]=i;Gi[e+(f+4<<1)>>1]=i;Gi[e+(l+4<<1)>>1]=i;Gi[e+(r+3<<1)>>1]=i;Gi[e+(f+3<<1)>>1]=i;Gi[e+(r+2<<1)>>1]=i;Gi[e+(f+2<<1)>>1]=i;Gi[e+(r+1<<1)>>1]=i;Gi[e+(r<<1)>>1]=i;return}function $H(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;r=f>>1;h=e+-2|0;u=Ji[h>>1]|0;s=Ji[e+(r+-1<<1)>>1]|0;o=Ji[e+((r<<1)+-1<<1)>>1]|0;t=Ji[e+((r*3|0)+-1<<1)>>1]|0;n=Ji[e+((r<<2)+-1<<1)>>1]|0;a=Ji[e+((r*5|0)+-1<<1)>>1]|0;l=Ji[e+((r*6|0)+-1<<1)>>1]|0;f=Ji[e+((r*7|0)+-1<<1)>>1]|0;f=(((Ji[((i|0)==0?h:e+(~r<<1)|0)>>1]|0)+2+(u<<1)+s|0)>>>2)+4+((u+2+(s<<1)+o|0)>>>2)+((s+2+(o<<1)+t|0)>>>2)+((o+2+(t<<1)+n|0)>>>2)+((t+2+(n<<1)+a|0)>>>2)+((n+2+(a<<1)+l|0)>>>2)+((a+2+(l<<1)+f|0)>>>2)+((l+2+(f*3|0)|0)>>>2)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;i=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<1;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*3|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<2;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*5|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*6|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=r*7|0;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function eB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;l=f>>1;n=0-l|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-l<<1)>>1]|0;t=Ji[e+(2-l<<1)>>1]|0;o=Ji[e+(3-l<<1)>>1]|0;s=Ji[e+(4-l<<1)>>1]|0;u=Ji[e+(5-l<<1)>>1]|0;h=Ji[e+(6-l<<1)>>1]|0;f=Gi[e+(7-l<<1)>>1]|0;w=f&65535;if(r)f=Gi[e+(8-l<<1)>>1]|0;k=(((Ji[e+(((i|0)==0?n:~l)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2)+4+((k+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+((u+2+(h<<1)+w|0)>>>2)+(((f&65535)+2+(w<<1)+h|0)>>>2)>>3;k=rN(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;i=e;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+8|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<1;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*3|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<2;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*5|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*6|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*7|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;return}function iB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=f>>1;i=e;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=e+8|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=e+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=e+(r+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=r<<1;f=e+(i<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;i=e+(i+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=r*3|0;f=e+(i<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;i=e+(i+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=r<<2;f=e+(i<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;i=e+(i+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=r*5|0;f=e+(i<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;i=e+(i+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=r*6|0;f=e+(i<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;i=e+(i+4<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;r=r*7|0;i=e+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;r=e+(r+4<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;return}function rB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=8);return}function fB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=16);return}function lB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=8);return}function aB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function nB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=i>>1;f=e+6|0;l=0-b|0;t=(b<<2)+-1|0;n=e+(t<<1)|0;t=e+(t-(b<<1)<<1)|0;o=e+((b*14|0)+-2)|0;s=e+-2|0;i=(Ji[f+(1-b<<1)>>1]|0)-(Ji[f+(~b<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(b<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-b<<1)>>1]|0)-(Ji[f+(0-(b+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=5);k=(i*17|0)+16>>5;l=(r*17|0)+16>>5;a=k<<1;n=k*3|0;t=k<<2;u=k*5|0;h=k*6|0;w=k*7|0;r=((Ji[s+(8-b<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(l+k|0,-3)|0)|0;f=8;while(1){i=r>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e>>1]=i;i=r+k>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+2>>1]=i;i=r+a>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+4>>1]=i;i=r+n>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+8>>1]=i;i=r+u>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+10>>1]=i;i=r+h>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+12>>1]=i;i=r+w>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+14>>1]=i;if((f|0)>1){r=r+l|0;f=f+-1|0;e=e+(b<<1)|0}else break}return}function tB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=i>>1;f=e+6|0;t=0-c|0;n=(c<<3)+-1|0;a=e+(n<<1)|0;n=e+(n-(c<<1)<<1)|0;h=e+((c*6|0)+-2)|0;s=(c*22|0)+-2|0;o=e+s|0;u=c<<3;r=(Ji[f+(1-c<<1)>>1]|0)-(Ji[f+(~c<<1)>>1]|0)|0;i=(Ji[a>>1]|0)-(Ji[n>>1]|0)|0;l=2;do{a=a+(c<<1)|0;n=n+(t<<1)|0;r=(Zi((Ji[f+(l-c<<1)>>1]|0)-(Ji[f+(0-(c+l)<<1)>>1]|0)|0,l)|0)+r|0;i=(Zi((Ji[a>>1]|0)-(Ji[n>>1]|0)|0,l)|0)+i|0;l=l+1|0}while((l|0)!=5);f=Zi(c,-3)|0;l=o+(c<<1)|0;b=h+(t<<1)|0;n=l+(c<<1)|0;a=b+(t<<1)|0;w=n+(c<<1)|0;o=a+(t<<1)|0;b=((((Ji[w+(c<<1)>>1]|0)-(Ji[o+(t<<1)>>1]|0)<<3)+((((Ji[w>>1]|0)-(Ji[o>>1]|0)|0)*7|0)+((((Ji[n>>1]|0)-(Ji[a>>1]|0)|0)*6|0)+((((Ji[l>>1]|0)-(Ji[b>>1]|0)|0)*5|0)+i)))|0)*5|0)+32>>6;l=(r*17|0)+16>>5;a=l*3|0;n=l<<1;t=l<<2;o=l*5|0;w=l*6|0;k=l*7|0;r=(Zi(b,-7)|0)+(16-a)+((Ji[h+(f+(8-c)<<1)>>1]|0)+(Ji[e+(s+u)>>1]|0)<<4)|0;f=16;while(1){i=r>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e>>1]=i;i=r+l>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+2>>1]=i;i=r+n>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+4>>1]=i;i=r+a>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+8>>1]=i;i=r+o>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+10>>1]=i;i=r+w>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+12>>1]=i;i=r+k>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[e+14>>1]=i;if((f|0)>1){r=r+b|0;f=f+-1|0;e=e+(c<<1)|0}else break}return}function oB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=1024-(qi[e+~i>>0]|0)|0;t=e+(0-i)|0;o=e+(1-i)|0;s=e+(2-i)|0;u=e+(3-i)|0;h=e+(4-i)|0;l=e+(5-i)|0;a=e+(6-i)|0;n=e+(7-i)|0;r=0;while(1){w=(qi[e+-1>>0]|0)+f|0;Wi[e>>0]=Wi[129121+(w+(qi[t>>0]|0))>>0]|0;Wi[e+1>>0]=Wi[129121+((qi[o>>0]|0)+w)>>0]|0;Wi[e+2>>0]=Wi[129121+((qi[s>>0]|0)+w)>>0]|0;Wi[e+3>>0]=Wi[129121+((qi[u>>0]|0)+w)>>0]|0;Wi[e+4>>0]=Wi[129121+((qi[h>>0]|0)+w)>>0]|0;Wi[e+5>>0]=Wi[129121+((qi[l>>0]|0)+w)>>0]|0;Wi[e+6>>0]=Wi[129121+((qi[a>>0]|0)+w)>>0]|0;Wi[e+7>>0]=Wi[129121+((qi[n>>0]|0)+w)>>0]|0;r=r+1|0;if((r|0)==8)break;else e=e+i|0}return}function sB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=i>>1;f=0;r=0;i=0;l=0;do{n=Ji[e+((Zi(l,a)|0)+-1<<1)>>1]|0;f=n+f+(Ji[e+(l-a<<1)>>1]|0)|0;n=l+4|0;r=(Ji[e+(n-a<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n,a)|0)+-1<<1)>>1]|0)+i|0;l=l+1|0}while((l|0)!=4);s=f+4>>3;s=rN(s|0,((s|0)<0)<<31>>31|0,65537,65537)|0;o=Ie;t=r+2>>2;t=rN(t|0,((t|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;l=i+2>>2;f=i+4+r>>3;i=e;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+8|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=e+(a<<1)|0;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+(a+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a<<1;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a*3|0;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;n=a<<2;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*5|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*6|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*7|0;a=e+(n<<1)|0;Xi[a>>2]=i;Xi[a+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;return}function uB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=i>>1;r=0;i=0;f=0;do{r=(Ji[e+((Zi(f,l)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(f+4|0,l)|0)+-1<<1)>>1]|0)+i|0;f=f+1|0}while((f|0)!=4);n=r+2>>2;n=rN(n|0,((n|0)<0)<<31>>31|0,65537,65537)|0;a=Ie;r=i+2>>2;f=e;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+8|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l<<1;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l*3|0;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;i=l<<2;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*5|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*6|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;l=l*7|0;i=e+(l<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;e=e+(l+4<<1)|0;Xi[e>>2]=r;Xi[e+4>>2]=f;return}function hB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;i=i>>1;f=4-i|0;f=(Ji[e+(f+3<<1)>>1]|0)+((Ji[e+(f+2<<1)>>1]|0)+((Ji[e+(f+1<<1)>>1]|0)+(Ji[e+(f<<1)>>1]|0)))|0;n=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;a=Ie;f=rN((f+2|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+(i+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<1;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*3|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<2;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*5|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*6|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=i*7|0;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;i=e+(i+4<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function wB(e,i){e=e|0;i=i|0;hB(e,i);pH(e,0,i);return}function kB(e,i){e=e|0;i=i|0;sB(e,i);DH(e,0,i);return}function bB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;uB(e,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=a+(f<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=16777472;Xi[a+4>>2]=16777472;e=e+(l+8)|0;l=e;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;f=e+(f<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;r=e+(r<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;i=e+(i<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;return}function cB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;uB(e,i);f=i>>1;r=e;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=e+(f<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;e=e+8|0;l=e;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;f=e+(f<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;r=e+(r<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;i=e+(i<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;return}function dB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=i>>1;a=0;l=0;f=0;r=0;i=0;n=0;do{o=Ji[e+((Zi(n,t)|0)+-1<<1)>>1]|0;a=o+a+(Ji[e+(n-t<<1)>>1]|0)|0;o=n+4|0;l=(Ji[e+(o-t<<1)>>1]|0)+l|0;f=(Ji[e+((Zi(o,t)|0)+-1<<1)>>1]|0)+f|0;r=(Ji[e+((Zi(n+8|0,t)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n+12|0,t)|0)+-1<<1)>>1]|0)+i|0;n=n+1|0}while((n|0)!=4);o=a+4>>3;o=rN(o|0,((o|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;u=l+2>>2;u=rN(u|0,((u|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;c=f+2>>2;w=f+4+l>>3;h=r+2>>2;r=r+4+l>>3;f=i+2>>2;a=i+4+l>>3;b=e;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+8|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=e+(t<<1)|0;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+(t+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t<<1;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t*3|0;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;c=rN(c|0,((c|0)<0)<<31>>31|0,65537,65537)|0;b=Ie;w=rN(w|0,((w|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;h=rN(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;i=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;a=rN(a|0,((a|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;o=t<<2;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*5|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*6|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*7|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t<<3;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+((o|4)<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*9|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*10|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*11|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*12|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*13|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*14|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*15|0;t=e+(o<<1)|0;Xi[t>>2]=f;Xi[t+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;return}function vB(e,i){e=e|0;i=i|0;uB(e,i);uB(e+(i<<3)|0,i);return}function EB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;l=4-i|0;l=(Ji[e+(l+3<<1)>>1]|0)+((Ji[e+(l+2<<1)>>1]|0)+((Ji[e+(l+1<<1)>>1]|0)+(Ji[e+(l<<1)>>1]|0)))|0;r=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;f=Ie;l=rN((l+2|0)>>>2|0,0,65537,65537)|0;a=Ie;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=r;Xi[o+4>>2]=f;t=e+(t+4<<1)|0;Xi[t>>2]=l;Xi[t+4>>2]=a;n=n+1|0}while((n|0)!=16);return}function SB(e,i){e=e|0;i=i|0;EB(e,i);pH(e,0,i);return}function _B(e,i){e=e|0;i=i|0;dB(e,i);DH(e,0,i);return}function mB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;uB(e,i);uB(e+(i<<3)|0,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=a+(f<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=16777472;Xi[a+4>>2]=16777472;e=e+(l+8)|0;l=e;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;f=e+(f<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;r=e+(r<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;i=e+(i<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;return}function pB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;uB(e,i);uB(e+(i<<3)|0,i);f=i>>1;r=e;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=e+(f<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;e=e+8|0;l=e;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;f=e+(f<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;r=e+(r<<1)|0;Xi[r>>2]=16777472;Xi[r+4>>2]=16777472;i=e+(i<<1)|0;Xi[i>>2]=16777472;Xi[i+4>>2]=16777472;return}function FB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;r=0;f=0;do{a=qi[e+((Zi(f,i)|0)+-1)>>0]|0;l=f+4|0;r=a+r+(qi[e+(f-i)>>0]|0)+(qi[e+(l-i)>>0]|0)+(qi[e+((Zi(l,i)|0)+-1)>>0]|0)|0;f=f+1|0}while((f|0)!=4);l=Zi((r+8|0)>>>4,16843009)|0;Xi[e>>2]=l;Xi[e+4>>2]=l;Xi[e+i>>2]=l;Xi[e+(i+4)>>2]=l;a=i<<1;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;a=i*3|0;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;a=i<<2;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;a=i*5|0;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;a=i*6|0;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;a=i*7|0;Xi[e+a>>2]=l;Xi[e+(a+4)>>2]=l;return}function yB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=0;f=0;do{r=(qi[e+((Zi(f,i)|0)+-1)>>0]|0)+r|0;f=f+1|0}while((f|0)!=8);r=Zi((r+4|0)>>>3,16843009)|0;f=0;do{l=Zi(f,i)|0;Xi[e+(l+4)>>2]=r;Xi[e+l>>2]=r;f=f+1|0}while((f|0)!=8);return}function OB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;r=Zi(((qi[e+(7-i)>>0]|0)+((qi[e+(6-i)>>0]|0)+((qi[e+(5-i)>>0]|0)+((qi[e+(4-i)>>0]|0)+((qi[e+(3-i)>>0]|0)+((qi[e+(2-i)>>0]|0)+((qi[e+(1-i)>>0]|0)+(qi[e+(0-i)>>0]|0)))))))+4|0)>>>3,16843009)|0;f=0;do{l=Zi(f,i)|0;Xi[e+(l+4)>>2]=r;Xi[e+l>>2]=r;f=f+1|0}while((f|0)!=8);return}function AB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=16711935;Xi[l+4>>2]=16711935;f=e+(f+4<<1)|0;Xi[f>>2]=16711935;Xi[f+4>>2]=16711935;r=r+1|0}while((r|0)!=8);return}function gB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=16843009;Xi[l+4>>2]=16843009;f=e+(f+4<<1)|0;Xi[f>>2]=16843009;Xi[f+4>>2]=16843009;r=r+1|0}while((r|0)!=8);return}function MB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;f=e+(f+4<<1)|0;Xi[f>>2]=16777472;Xi[f+4>>2]=16777472;r=r+1|0}while((r|0)!=8);return}function RB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=i>>1;r=0;do{l=Zi(r,f)|0;a=e+(l<<1)|0;Xi[a>>2]=16777472;Xi[a+4>>2]=16777472;l=e+(l+4<<1)|0;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;r=r+1|0}while((r|0)!=8);e=e+(i<<3)|0;r=0;do{a=Zi(r,f)|0;l=e+(a<<1)|0;Xi[l>>2]=16777472;Xi[l+4>>2]=16777472;a=e+(a+4<<1)|0;Xi[a>>2]=16777472;Xi[a+4>>2]=16777472;r=r+1|0}while((r|0)!=8);return}function TB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+16>>5;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function NB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=i>>1;s=e+(0-i<<1)|0;o=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;a=e+(8-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=e+(12-i<<1)|0;n=Xi[t>>2]|0;t=Xi[t+4>>2]|0;u=0;do{h=Zi(u,i)|0;w=e+(h<<1)|0;Xi[w>>2]=o;Xi[w+4>>2]=s;w=e+(h+4<<1)|0;Xi[w>>2]=r;Xi[w+4>>2]=f;w=e+(h+8<<1)|0;Xi[w>>2]=l;Xi[w+4>>2]=a;h=e+(h+12<<1)|0;Xi[h>>2]=n;Xi[h+4>>2]=t;u=u+1|0}while((u|0)!=16);return}function DB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+4<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+8<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+12<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function CB(e,i){e=e|0;i=i|0;PB(e,i,1,0);return}function PB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;t=0-i|0;n=7-i|0;u=(i<<3)+-1|0;s=e+u|0;u=e+(u-(i<<1))|0;h=e+((i*15|0)+-1)|0;a=(qi[e+(n+1)>>0]|0)-(qi[e+(n+-1)>>0]|0)|0;l=(qi[s>>0]|0)-(qi[u>>0]|0)|0;o=2;do{s=s+i|0;u=u+t|0;a=(Zi((qi[e+(o+n)>>0]|0)-(qi[e+(n-o)>>0]|0)|0,o)|0)+a|0;l=(Zi((qi[s>>0]|0)-(qi[u>>0]|0)|0,o)|0)+l|0;o=o+1|0}while((o|0)!=9);do{if(!r)if(!f){r=(a*5|0)+32>>6;f=(l*5|0)+32>>6;break}else{r=(a>>2)+a>>4;f=(l>>2)+l>>4;break}else{r=(((l|0)/4|0)*5|0)/16|0;f=(((a|0)/4|0)*5|0)/16|0}}while(0);o=r<<1;s=r*3|0;u=r<<2;n=((qi[e+(16-i+-1)>>0]|0)+(qi[h>>0]|0)<<4)+16+(Zi(f+r|0,-7)|0)|0;t=16;while(1){l=n;a=-16;while(1){h=l>>5;Wi[e+(a+16)>>0]=h>>>0>255?0-h>>31:h;h=l+r>>5;Wi[e+(a+17)>>0]=h>>>0>255?0-h>>31:h;h=l+o>>5;Wi[e+(a+18)>>0]=h>>>0>255?0-h>>31:h;h=l+s>>5;Wi[e+(a+19)>>0]=h>>>0>255?0-h>>31:h;if((a|0)<-4){l=l+u|0;a=a+4|0}else break}if((t|0)>1){n=n+f|0;t=t+-1|0;e=e+i|0}else break}return}function LB(e,i){e=e|0;i=i|0;PB(e,i,0,1);return}function IB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0;f=1024-(qi[e+~i>>0]|0)|0;c=e+(0-i)|0;d=e+(1-i)|0;v=e+(2-i)|0;E=e+(3-i)|0;S=e+(4-i)|0;l=e+(5-i)|0;a=e+(6-i)|0;n=e+(7-i)|0;t=e+(8-i)|0;o=e+(9-i)|0;s=e+(10-i)|0;u=e+(11-i)|0;h=e+(12-i)|0;w=e+(13-i)|0;k=e+(14-i)|0;b=e+(15-i)|0;r=0;while(1){_=(qi[e+-1>>0]|0)+f|0;Wi[e>>0]=Wi[129121+(_+(qi[c>>0]|0))>>0]|0;Wi[e+1>>0]=Wi[129121+((qi[d>>0]|0)+_)>>0]|0;Wi[e+2>>0]=Wi[129121+((qi[v>>0]|0)+_)>>0]|0;Wi[e+3>>0]=Wi[129121+((qi[E>>0]|0)+_)>>0]|0;Wi[e+4>>0]=Wi[129121+((qi[S>>0]|0)+_)>>0]|0;Wi[e+5>>0]=Wi[129121+((qi[l>>0]|0)+_)>>0]|0;Wi[e+6>>0]=Wi[129121+((qi[a>>0]|0)+_)>>0]|0;Wi[e+7>>0]=Wi[129121+((qi[n>>0]|0)+_)>>0]|0;Wi[e+8>>0]=Wi[129121+((qi[t>>0]|0)+_)>>0]|0;Wi[e+9>>0]=Wi[129121+((qi[o>>0]|0)+_)>>0]|0;Wi[e+10>>0]=Wi[129121+((qi[s>>0]|0)+_)>>0]|0;Wi[e+11>>0]=Wi[129121+((qi[u>>0]|0)+_)>>0]|0;Wi[e+12>>0]=Wi[129121+((qi[h>>0]|0)+_)>>0]|0;Wi[e+13>>0]=Wi[129121+((qi[w>>0]|0)+_)>>0]|0;Wi[e+14>>0]=Wi[129121+((qi[k>>0]|0)+_)>>0]|0;Wi[e+15>>0]=Wi[129121+((qi[b>>0]|0)+_)>>0]|0;r=r+1|0;if((r|0)==16)break;else e=e+i|0}return}function HB(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=16711935;Xi[e+4>>2]=16711935;e=i+8|0;Xi[e>>2]=16711935;Xi[e+4>>2]=16711935;e=i+16|0;Xi[e>>2]=16711935;Xi[e+4>>2]=16711935;e=i+24|0;Xi[e>>2]=16711935;Xi[e+4>>2]=16711935;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function BB(e,i){e=e|0;i=i|0;var r=0;i=i>>1;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;r=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;e=r+(i<<1)|0;Xi[r>>2]=16843009;Xi[r+4>>2]=16843009;Xi[r+8>>2]=16843009;Xi[r+12>>2]=16843009;Xi[r+16>>2]=16843009;Xi[r+20>>2]=16843009;Xi[r+24>>2]=16843009;Xi[r+28>>2]=16843009;i=e+(i<<1)|0;Xi[e>>2]=16843009;Xi[e+4>>2]=16843009;Xi[e+8>>2]=16843009;Xi[e+12>>2]=16843009;Xi[e+16>>2]=16843009;Xi[e+20>>2]=16843009;Xi[e+24>>2]=16843009;Xi[e+28>>2]=16843009;Xi[i>>2]=16843009;Xi[i+4>>2]=16843009;Xi[i+8>>2]=16843009;Xi[i+12>>2]=16843009;Xi[i+16>>2]=16843009;Xi[i+20>>2]=16843009;Xi[i+24>>2]=16843009;Xi[i+28>>2]=16843009;return}function UB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=i>>1;f=e+14|0;l=0-k|0;t=(k<<3)+-1|0;n=e+(t<<1)|0;t=e+(t-(k<<1)<<1)|0;o=e+((k*30|0)+-2)|0;i=(Ji[f+(1-k<<1)>>1]|0)-(Ji[f+(~k<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(k<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-k<<1)>>1]|0)-(Ji[f+(0-(k+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=9);w=(i*5|0)+32>>6;t=(r*5|0)+32>>6;s=w<<1;u=w*3|0;h=w<<2;a=((Ji[e+-2+(16-k<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(t+w|0,-7)|0)|0;n=16;l=e;while(1){r=a;f=-16;while(1){i=r>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[l+(f+16<<1)>>1]=i;i=r+w>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[l+(f+17<<1)>>1]=i;i=r+s>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[l+(f+18<<1)>>1]=i;i=r+u>>5;if(i>>>0>=512)i=0-i>>31&511;Gi[l+(f+19<<1)>>1]=i;if((f|0)<-4){r=r+h|0;f=f+4|0}else break}if((n|0)>1){a=a+t|0;n=n+-1|0;l=l+(k<<1)|0}else break}return}function xB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function zB(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function VB(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=16777472;Xi[e+4>>2]=16777472;e=i+8|0;Xi[e>>2]=16777472;Xi[e+4>>2]=16777472;e=i+16|0;Xi[e>>2]=16777472;Xi[e+4>>2]=16777472;e=i+24|0;Xi[e>>2]=16777472;Xi[e+4>>2]=16777472;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function YB(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=i;o=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[t>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[t+16>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[t+32>>2]|0)|0;Gi[r+(a<<1)>>1]=e;Gi[r+(n<<1)>>1]=e+(Xi[t+48>>2]|0);o=o+1|0;if((o|0)==4)break;else{t=t+4|0;r=r+2|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function jB(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;Gi[r+6>>1]=e+(Xi[l+12>>2]|0);a=a+1|0;if((a|0)==4)break;else{l=l+16|0;r=r+(f<<1)|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function KB(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=f*5|0;o=f*6|0;s=f*7|0;u=f<<3;h=i;w=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[h>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[h+32>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[h+64>>2]|0)|0;Gi[r+(a<<1)>>1]=e;e=e+(Xi[h+96>>2]|0)|0;Gi[r+(n<<1)>>1]=e;e=e+(Xi[h+128>>2]|0)|0;Gi[r+(t<<1)>>1]=e;e=e+(Xi[h+160>>2]|0)|0;Gi[r+(o<<1)>>1]=e;e=e+(Xi[h+192>>2]|0)|0;Gi[r+(s<<1)>>1]=e;Gi[r+(u<<1)>>1]=e+(Xi[h+224>>2]|0);w=w+1|0;if((w|0)==8)break;else{h=h+4|0;r=r+2|0}}jT(i|0,0,256)|0;return}function WB(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;e=e+(Xi[l+12>>2]|0)|0;Gi[r+6>>1]=e;e=e+(Xi[l+16>>2]|0)|0;Gi[r+8>>1]=e;e=e+(Xi[l+20>>2]|0)|0;Gi[r+10>>1]=e;e=e+(Xi[l+24>>2]|0)|0;Gi[r+12>>1]=e;Gi[r+14>>1]=e+(Xi[l+28>>2]|0);a=a+1|0;if((a|0)==8)break;else{l=l+32|0;r=r+(f<<1)|0}}jT(i|0,0,256)|0;return}function GB(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;c=d;b=l>>1;n=0-b|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-b<<1)>>1]|0;t=Ji[e+(2-b<<1)>>1]|0;o=Ji[e+(3-b<<1)>>1]|0;s=Ji[e+(4-b<<1)>>1]|0;u=Ji[e+(5-b<<1)>>1]|0;h=Ji[e+(6-b<<1)>>1]|0;l=Gi[e+(7-b<<1)>>1]|0;w=l&65535;if(f)l=Gi[e+(8-b<<1)>>1]|0;r=((Ji[e+(((r|0)==0?n:~b)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2&65535;Gi[c>>1]=r;Gi[c+2>>1]=(k+2+(a<<1)+t|0)>>>2;Gi[c+4>>1]=(a+2+(t<<1)+o|0)>>>2;Gi[c+6>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[c+8>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[c+10>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[c+12>>1]=(u+2+(h<<1)+w|0)>>>2;Gi[c+14>>1]=((l&65535)+2+(w<<1)+h|0)>>>2;o=b<<1;s=b*3|0;u=b<<2;h=b*5|0;a=b*6|0;n=b*7|0;t=r;w=i;l=0;while(1){r=(t&65535)+(Xi[w>>2]|0)|0;Gi[e>>1]=r;r=r+(Xi[w+32>>2]|0)|0;Gi[e+(b<<1)>>1]=r;r=r+(Xi[w+64>>2]|0)|0;Gi[e+(o<<1)>>1]=r;r=r+(Xi[w+96>>2]|0)|0;Gi[e+(s<<1)>>1]=r;r=r+(Xi[w+128>>2]|0)|0;Gi[e+(u<<1)>>1]=r;r=r+(Xi[w+160>>2]|0)|0;Gi[e+(h<<1)>>1]=r;r=r+(Xi[w+192>>2]|0)|0;Gi[e+(a<<1)>>1]=r;Gi[e+(n<<1)>>1]=r+(Xi[w+224>>2]|0);l=l+1|0;if((l|0)==8)break;t=Gi[c+(l<<1)>>1]|0;w=w+4|0;e=e+2|0}jT(i|0,0,256)|0;Ue=d;return}function XB(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=Ue;Ue=Ue+16|0;t=o;n=l>>1;b=e+-2|0;k=Ji[b>>1]|0;w=Ji[e+(n+-1<<1)>>1]|0;h=Ji[e+((n<<1)+-1<<1)>>1]|0;u=Ji[e+((n*3|0)+-1<<1)>>1]|0;s=Ji[e+((n<<2)+-1<<1)>>1]|0;l=Ji[e+((n*5|0)+-1<<1)>>1]|0;f=Ji[e+((n*6|0)+-1<<1)>>1]|0;a=Ji[e+((n*7|0)+-1<<1)>>1]|0;r=((Ji[((r|0)==0?b:e+(~n<<1)|0)>>1]|0)+2+(k<<1)+w|0)>>>2&65535;Gi[t>>1]=r;Gi[t+2>>1]=(k+2+(w<<1)+h|0)>>>2;Gi[t+4>>1]=(w+2+(h<<1)+u|0)>>>2;Gi[t+6>>1]=(h+2+(u<<1)+s|0)>>>2;Gi[t+8>>1]=(u+2+(s<<1)+l|0)>>>2;Gi[t+10>>1]=(s+2+(l<<1)+f|0)>>>2;Gi[t+12>>1]=(l+2+(f<<1)+a|0)>>>2;Gi[t+14>>1]=(f+2+(a*3|0)|0)>>>2;a=i;f=0;l=e;while(1){b=(r&65535)+(Xi[a>>2]|0)|0;Gi[l>>1]=b;b=b+(Xi[a+4>>2]|0)|0;Gi[l+2>>1]=b;b=b+(Xi[a+8>>2]|0)|0;Gi[l+4>>1]=b;b=b+(Xi[a+12>>2]|0)|0;Gi[l+6>>1]=b;b=b+(Xi[a+16>>2]|0)|0;Gi[l+8>>1]=b;b=b+(Xi[a+20>>2]|0)|0;Gi[l+10>>1]=b;b=b+(Xi[a+24>>2]|0)|0;Gi[l+12>>1]=b;Gi[l+14>>1]=b+(Xi[a+28>>2]|0);f=f+1|0;if((f|0)==8)break;r=Gi[t+(f<<1)>>1]|0;a=a+32|0;l=l+(n<<1)|0}jT(i|0,0,256)|0;Ue=o;return}function qB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;YB(e+(Xi[i>>2]|0)|0,r,f);YB(e+(Xi[i+4>>2]|0)|0,r+64|0,f);YB(e+(Xi[i+8>>2]|0)|0,r+128|0,f);YB(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function JB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;YB(e+(Xi[i>>2]|0)|0,r,f);YB(e+(Xi[i+4>>2]|0)|0,r+64|0,f);YB(e+(Xi[i+8>>2]|0)|0,r+128|0,f);YB(e+(Xi[i+12>>2]|0)|0,r+192|0,f);YB(e+(Xi[i+32>>2]|0)|0,r+256|0,f);YB(e+(Xi[i+36>>2]|0)|0,r+320|0,f);YB(e+(Xi[i+40>>2]|0)|0,r+384|0,f);YB(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function ZB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;jB(e+(Xi[i>>2]|0)|0,r,f);jB(e+(Xi[i+4>>2]|0)|0,r+64|0,f);jB(e+(Xi[i+8>>2]|0)|0,r+128|0,f);jB(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function QB(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;jB(e+(Xi[i>>2]|0)|0,r,f);jB(e+(Xi[i+4>>2]|0)|0,r+64|0,f);jB(e+(Xi[i+8>>2]|0)|0,r+128|0,f);jB(e+(Xi[i+12>>2]|0)|0,r+192|0,f);jB(e+(Xi[i+32>>2]|0)|0,r+256|0,f);jB(e+(Xi[i+36>>2]|0)|0,r+320|0,f);jB(e+(Xi[i+40>>2]|0)|0,r+384|0,f);jB(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function $B(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{YB(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function eU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{jB(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function iU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;r=e+(0-i<<1)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function rU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;i=r>>1;r=rN(Ji[e+-2>>1]|0|0,0,65537,65537)|0;f=e;Xi[f>>2]=r;Xi[f+4>>2]=Ie;f=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(i<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;r=i<<1;f=rN(Ji[e+(r+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(r<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;i=i*3|0;r=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;i=e+(i<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=Ie;return}function fU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=(Ji[e+(0-a<<1)>>1]|0)+4+(Ji[e+(1-a<<1)>>1]|0)+(Ji[e+(2-a<<1)>>1]|0)+(Ji[e+(3-a<<1)>>1]|0)+(Ji[e+-2>>1]|0)+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function lU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;n=r>>1;s=Ji[e+(1-n<<1)>>1]|0;l=Ji[e+(2-n<<1)>>1]|0;o=Ji[e+(3-n<<1)>>1]|0;t=Ji[i>>1]|0;a=Ji[i+2>>1]|0;f=Ji[i+4>>1]|0;r=Ji[i+6>>1]|0;Gi[e>>1]=((Ji[e+(0-n<<1)>>1]|0)+2+l+(s<<1)|0)>>>2;i=(s+2+o+(l<<1)|0)>>>2&65535;Gi[e+(n<<1)>>1]=i;Gi[e+2>>1]=i;i=(l+2+t+(o<<1)|0)>>>2&65535;l=n<<1;Gi[e+(l<<1)>>1]=i;Gi[e+(n+1<<1)>>1]=i;Gi[e+4>>1]=i;o=(o+2+a+(t<<1)|0)>>>2&65535;i=n*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+((l|1)<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+f+(a<<1)|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;Gi[e+(n+3<<1)>>1]=t;a=(a+2+r+(f<<1)|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(i+3<<1)>>1]=(f+2+(r*3|0)|0)>>>2;return}function aU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=r>>1;u=Ji[e+(~a<<1)>>1]|0;l=Ji[e+(0-a<<1)>>1]|0;f=Ji[e+(1-a<<1)>>1]|0;r=Ji[e+(2-a<<1)>>1]|0;i=Ji[e+(3-a<<1)>>1]|0;o=Ji[e+-2>>1]|0;h=Ji[e+(a+-1<<1)>>1]|0;t=a<<1;n=Ji[e+(t+-1<<1)>>1]|0;s=a*3|0;Gi[e+(s<<1)>>1]=(h+2+(n<<1)+(Ji[e+(s+-1<<1)>>1]|0)|0)>>>2;n=(o+2+(h<<1)+n|0)>>>2&65535;Gi[e+(s+1<<1)>>1]=n;Gi[e+(t<<1)>>1]=n;n=u+2|0;h=(n+(o<<1)+h|0)>>>2&65535;Gi[e+(s+2<<1)>>1]=h;Gi[e+((t|1)<<1)>>1]=h;Gi[e+(a<<1)>>1]=h;o=((u<<1)+2+l+o|0)>>>2&65535;Gi[e+(s+3<<1)>>1]=o;Gi[e+(t+2<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;Gi[e>>1]=o;n=(n+(l<<1)+f|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=n;Gi[e+(a+2<<1)>>1]=n;Gi[e+2>>1]=n;l=(l+2+(f<<1)+r|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=l;Gi[e+4>>1]=l;Gi[e+6>>1]=(f+2+(r<<1)+i|0)>>>2;return}function nU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;n=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;o=Ji[e+(3-t<<1)>>1]|0;l=Ji[e+-2>>1]|0;f=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;r=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;w=(n+1+h|0)>>>1&65535;Gi[e+((a|1)<<1)>>1]=w;Gi[e>>1]=w;w=(h+1+u|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=w;Gi[e+2>>1]=w;w=(u+1+s|0)>>>1&65535;Gi[e+(a+3<<1)>>1]=w;Gi[e+4>>1]=w;Gi[e+6>>1]=(s+1+o|0)>>>1;w=((n<<1)+2+h+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=w;Gi[e+(t<<1)>>1]=w;n=n+2|0;w=(n+(h<<1)+u|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;h=(h+2+(u<<1)+s|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=h;Gi[e+(t+2<<1)>>1]=h;Gi[e+(t+3<<1)>>1]=(u+2+(s<<1)+o|0)>>>2;Gi[e+(a<<1)>>1]=(n+(l<<1)+f|0)>>>2;Gi[e+(i<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function tU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;o=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;n=Ji[e+-2>>1]|0;l=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;f=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;r=Ji[e+(i+-1<<1)>>1]|0;w=(o+1+n|0)>>>1&65535;Gi[e+(t+2<<1)>>1]=w;Gi[e>>1]=w;w=((o<<1)+2+h+n|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=w;Gi[e+2>>1]=w;o=o+2|0;Gi[e+4>>1]=(o+(h<<1)+u|0)>>>2;Gi[e+6>>1]=(h+2+(u<<1)+s|0)>>>2;s=(n+1+l|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=s;Gi[e+(t<<1)>>1]=s;o=(o+(n<<1)+l|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=o;Gi[e+(t+1<<1)>>1]=o;t=(l+1+f|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=t;Gi[e+(a<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=n;Gi[e+((a|1)<<1)>>1]=n;Gi[e+(i<<1)>>1]=(f+1+r|0)>>>1;Gi[e+(i+1<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function oU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=r>>1;s=Ji[e+(0-a<<1)>>1]|0;o=Ji[e+(1-a<<1)>>1]|0;t=Ji[e+(2-a<<1)>>1]|0;n=Ji[e+(3-a<<1)>>1]|0;l=Ji[i>>1]|0;f=Ji[i+2>>1]|0;r=Ji[i+4>>1]|0;Gi[e>>1]=(s+1+o|0)>>>1;u=(o+1+t|0)>>>1&65535;i=a<<1;Gi[e+(i<<1)>>1]=u;Gi[e+2>>1]=u;u=(t+1+n|0)>>>1&65535;Gi[e+((i|1)<<1)>>1]=u;Gi[e+4>>1]=u;u=(n+1+l|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=u;Gi[e+6>>1]=u;Gi[e+(i+3<<1)>>1]=(l+1+f|0)>>>1;Gi[e+(a<<1)>>1]=(s+2+(o<<1)+t|0)>>>2;o=(o+2+(t<<1)+n|0)>>>2&65535;i=a*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;t=(t+2+(n<<1)+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(a+2<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=n;Gi[e+(a+3<<1)>>1]=n;Gi[e+(i+3<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function sU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;l=r>>1;o=Ji[e+-2>>1]|0;t=Ji[e+(l+-1<<1)>>1]|0;i=l<<1;n=Ji[e+(i+-1<<1)>>1]|0;f=l*3|0;r=Gi[e+(f+-1<<1)>>1]|0;a=r&65535;Gi[e>>1]=(o+1+t|0)>>>1;Gi[e+2>>1]=(o+2+(t<<1)+n|0)>>>2;o=(t+1+n|0)>>>1&65535;Gi[e+(l<<1)>>1]=o;Gi[e+4>>1]=o;t=(t+2+(n<<1)+a|0)>>>2&65535;Gi[e+(l+1<<1)>>1]=t;Gi[e+6>>1]=t;t=(n+1+a|0)>>>1&65535;Gi[e+(i<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;a=(n+2+a+(a<<1)|0)>>>2&65535;Gi[e+((i|1)<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(f+3<<1)>>1]=r;Gi[e+(f+2<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+(f<<1)>>1]=r;Gi[e+(f+1<<1)>>1]=r;Gi[e+(i+3<<1)>>1]=r;return}function uU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=rN(((Ji[e+-2>>1]|0)+2+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function hU(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;f=rN(((Ji[e+(0-i<<1)>>1]|0)+2+(Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(2-i<<1)>>1]|0)+(Ji[e+(3-i<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function wU(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=33489407;Xi[r+4>>2]=33489407;r=e+(i<<1)|0;Xi[r>>2]=33489407;Xi[r+4>>2]=33489407;r=e+(i<<1<<1)|0;Xi[r>>2]=33489407;Xi[r+4>>2]=33489407;i=e+(i*3<<1)|0;Xi[i>>2]=33489407;Xi[i+4>>2]=33489407;return}function kU(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=33620481;Xi[r+4>>2]=33620481;r=e+(i<<1)|0;Xi[r>>2]=33620481;Xi[r+4>>2]=33620481;r=e+(i<<1<<1)|0;Xi[r>>2]=33620481;Xi[r+4>>2]=33620481;i=e+(i*3<<1)|0;Xi[i>>2]=33620481;Xi[i+4>>2]=33620481;return}function bU(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=e+(i<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=e+(i<<1<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;i=e+(i*3<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;return}function cU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=f>>1;a=0-k|0;w=Ji[e+(a<<1)>>1]|0;l=Ji[e+(1-k<<1)>>1]|0;n=Ji[e+(2-k<<1)>>1]|0;t=Ji[e+(3-k<<1)>>1]|0;o=Ji[e+(4-k<<1)>>1]|0;s=Ji[e+(5-k<<1)>>1]|0;u=Ji[e+(6-k<<1)>>1]|0;f=Gi[e+(7-k<<1)>>1]|0;h=f&65535;if(r)f=Gi[e+(8-k<<1)>>1]|0;Gi[e>>1]=((Ji[e+(((i|0)==0?a:~k)<<1)>>1]|0)+2+(w<<1)+l|0)>>>2;Gi[e+2>>1]=(w+2+(l<<1)+n|0)>>>2;Gi[e+4>>1]=(l+2+(n<<1)+t|0)>>>2;Gi[e+6>>1]=(n+2+(t<<1)+o|0)>>>2;a=e+8|0;Gi[a>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[e+10>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[e+12>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[e+14>>1]=((f&65535)+2+(h<<1)+u|0)>>>2;f=e;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=1;do{i=Zi(t,k)|0;r=e+(i<<1)|0;Xi[r>>2]=n;Xi[r+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=l;Xi[i+4>>2]=a;t=t+1|0}while((t|0)!=8);return}function dU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=f>>1;E=e+-2|0;d=Ji[E>>1]|0;b=Ji[e+(k+-1<<1)>>1]|0;c=k<<1;w=Ji[e+(c+-1<<1)>>1]|0;s=k*3|0;u=Ji[e+(s+-1<<1)>>1]|0;h=k<<2;o=Ji[e+(h+-1<<1)>>1]|0;a=k*5|0;n=Ji[e+(a+-1<<1)>>1]|0;t=k*6|0;l=Ji[e+(t+-1<<1)>>1]|0;r=k*7|0;f=Ji[e+(r+-1<<1)>>1]|0;E=rN(((Ji[((i|0)==0?E:e+(~k<<1)|0)>>1]|0)+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;v=Ie;i=e;Xi[i>>2]=E;Xi[i+4>>2]=v;i=e+8|0;Xi[i>>2]=E;Xi[i+4>>2]=v;d=rN((d+2+(b<<1)+w|0)>>>2|0,0,65537,65537)|0;i=Ie;v=e+(k<<1)|0;Xi[v>>2]=d;Xi[v+4>>2]=i;k=e+(k+4<<1)|0;Xi[k>>2]=d;Xi[k+4>>2]=i;b=rN((b+2+(w<<1)+u|0)>>>2|0,0,65537,65537)|0;k=Ie;i=e+(c<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;i=e+(c+4<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;w=rN((w+2+(u<<1)+o|0)>>>2|0,0,65537,65537)|0;i=Ie;k=e+(s<<1)|0;Xi[k>>2]=w;Xi[k+4>>2]=i;s=e+(s+4<<1)|0;Xi[s>>2]=w;Xi[s+4>>2]=i;u=rN((u+2+(o<<1)+n|0)>>>2|0,0,65537,65537)|0;s=Ie;i=e+(h<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;i=e+(h+4<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;o=rN((o+2+(n<<1)+l|0)>>>2|0,0,65537,65537)|0;i=Ie;s=e+(a<<1)|0;Xi[s>>2]=o;Xi[s+4>>2]=i;a=e+(a+4<<1)|0;Xi[a>>2]=o;Xi[a+4>>2]=i;n=rN((n+2+(l<<1)+f|0)>>>2|0,0,65537,65537)|0;a=Ie;i=e+(t<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;i=e+(t+4<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=rN((l+2+(f*3|0)|0)>>>2|0,0,65537,65537)|0;i=Ie;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function vU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>1;i=(i|0)!=0;u=~F;k=e+-2|0;v=Ji[k>>1]|0;n=Ji[e+(F+-1<<1)>>1]|0;h=Ji[e+((F<<1)+-1<<1)>>1]|0;w=Ji[e+((F*3|0)+-1<<1)>>1]|0;b=Ji[e+((F<<2)+-1<<1)>>1]|0;c=Ji[e+((F*5|0)+-1<<1)>>1]|0;d=Ji[e+((F*6|0)+-1<<1)>>1]|0;E=Ji[e+((F*7|0)+-1<<1)>>1]|0;S=0-F|0;_=Ji[e+(S<<1)>>1]|0;m=Ji[e+(1-F<<1)>>1]|0;p=Ji[e+(2-F<<1)>>1]|0;l=Ji[e+(3-F<<1)>>1]|0;a=Ji[e+(4-F<<1)>>1]|0;t=Ji[e+(5-F<<1)>>1]|0;o=Ji[e+(6-F<<1)>>1]|0;f=Gi[e+(7-F<<1)>>1]|0;s=f&65535;if(r)f=Gi[e+(8-F<<1)>>1]|0;p=(((Ji[(i?e+(u<<1)|0:k)>>1]|0)+2+(v<<1)+n|0)>>>2)+8+((v+2+(n<<1)+h|0)>>>2)+((n+2+(h<<1)+w|0)>>>2)+((h+2+(w<<1)+b|0)>>>2)+((w+2+(b<<1)+c|0)>>>2)+((b+2+(c<<1)+d|0)>>>2)+((c+2+(d<<1)+E|0)>>>2)+((d+2+(E*3|0)|0)>>>2)+(((Ji[e+((i?u:S)<<1)>>1]|0)+2+(_<<1)+m|0)>>>2)+((_+2+(m<<1)+p|0)>>>2)+((m+2+(p<<1)+l|0)>>>2)+((p+2+(l<<1)+a|0)>>>2)+((l+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+(((f&65535)+2+(s<<1)+o|0)>>>2)>>4;p=rN(p|0,((p|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;m=e;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+8|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<1;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*3|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<2;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*5|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*6|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;F=F*7|0;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;e=e+(F+4<<1)|0;Xi[e>>2]=p;Xi[e+4>>2]=r;return}function EU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;w=f>>1;b=0-w|0;m=Ji[e+(b<<1)>>1]|0;k=Ji[e+(1-w<<1)>>1]|0;v=Ji[e+(2-w<<1)>>1]|0;c=(m+2+(k<<1)+v|0)>>>2;E=Ji[e+(3-w<<1)>>1]|0;d=(k+2+(v<<1)+E|0)>>>2;_=Ji[e+(4-w<<1)>>1]|0;v=(v+2+(E<<1)+_|0)>>>2;p=Ji[e+(5-w<<1)>>1]|0;E=(E+2+(_<<1)+p|0)>>>2;S=Ji[e+(6-w<<1)>>1]|0;_=(_+2+(p<<1)+S|0)>>>2;f=Gi[e+(7-w<<1)>>1]|0;h=f&65535;p=(p+2+(S<<1)+h|0)>>>2;if(!r){r=(f&65535)+2+(h<<1)|0;l=h;a=h;n=h;t=h;o=h;s=h;u=h;f=h}else{y=Ji[e+(8-w<<1)>>1]|0;F=Ji[e+(9-w<<1)>>1]|0;f=Ji[e+(10-w<<1)>>1]|0;n=Ji[e+(11-w<<1)>>1]|0;t=Ji[e+(12-w<<1)>>1]|0;o=Ji[e+(13-w<<1)>>1]|0;u=Ji[e+(14-w<<1)>>1]|0;s=Ji[e+(15-w<<1)>>1]|0;r=(Ji[e+(8-w<<1)>>1]|0)+2+(h<<1)|0;l=(F+2+(f<<1)+n|0)>>>2;a=(f+2+(n<<1)+t|0)>>>2;n=(n+2+(t<<1)+o|0)>>>2;t=(t+2+(o<<1)+u|0)>>>2;o=(o+2+(u<<1)+s|0)>>>2;s=(u+2+(s*3|0)|0)>>>2;u=(h+2+(y<<1)+F|0)>>>2;f=(y+2+(F<<1)+f|0)>>>2}F=(r+S|0)>>>2;Gi[e>>1]=((((Ji[e+(((i|0)==0?b:~w)<<1)>>1]|0)+2+(m<<1)+k|0)>>>2)+2+(c<<1)+d|0)>>>2;y=(c+2+(d<<1)+v|0)>>>2&65535;Gi[e+2>>1]=y;Gi[e+(w<<1)>>1]=y;y=(d+2+(v<<1)+E|0)>>>2&65535;Gi[e+4>>1]=y;Gi[e+(w+1<<1)>>1]=y;d=w<<1;Gi[e+(d<<1)>>1]=y;y=(v+2+(E<<1)+_|0)>>>2&65535;Gi[e+6>>1]=y;Gi[e+(w+2<<1)>>1]=y;Gi[e+((d|1)<<1)>>1]=y;v=w*3|0;Gi[e+(v<<1)>>1]=y;y=(E+2+(_<<1)+p|0)>>>2&65535;Gi[e+8>>1]=y;Gi[e+(w+3<<1)>>1]=y;Gi[e+(d+2<<1)>>1]=y;Gi[e+(v+1<<1)>>1]=y;S=w<<2;Gi[e+(S<<1)>>1]=y;y=(_+2+(p<<1)+F|0)>>>2&65535;Gi[e+10>>1]=y;Gi[e+(w+4<<1)>>1]=y;Gi[e+(d+3<<1)>>1]=y;Gi[e+(v+2<<1)>>1]=y;Gi[e+((S|1)<<1)>>1]=y;m=w*5|0;Gi[e+(m<<1)>>1]=y;y=(p+2+(F<<1)+u|0)>>>2&65535;Gi[e+12>>1]=y;Gi[e+(w+5<<1)>>1]=y;Gi[e+(d+4<<1)>>1]=y;Gi[e+(v+3<<1)>>1]=y;Gi[e+((S|2)<<1)>>1]=y;Gi[e+(m+1<<1)>>1]=y;i=w*6|0;Gi[e+(i<<1)>>1]=y;F=(F+2+(u<<1)+f|0)>>>2&65535;Gi[e+14>>1]=F;Gi[e+(w+6<<1)>>1]=F;Gi[e+(d+5<<1)>>1]=F;Gi[e+(v+4<<1)>>1]=F;Gi[e+((S|3)<<1)>>1]=F;Gi[e+(m+2<<1)>>1]=F;Gi[e+((i|1)<<1)>>1]=F;y=w*7|0;Gi[e+(y<<1)>>1]=F;F=(u+2+(f<<1)+l|0)>>>2&65535;Gi[e+(w+7<<1)>>1]=F;Gi[e+(d+6<<1)>>1]=F;Gi[e+(v+5<<1)>>1]=F;Gi[e+(S+4<<1)>>1]=F;Gi[e+(m+3<<1)>>1]=F;Gi[e+(i+2<<1)>>1]=F;Gi[e+(y+1<<1)>>1]=F;F=(f+2+(l<<1)+a|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=F;Gi[e+(v+6<<1)>>1]=F;Gi[e+(S+5<<1)>>1]=F;Gi[e+(m+4<<1)>>1]=F;Gi[e+(i+3<<1)>>1]=F;Gi[e+(y+2<<1)>>1]=F;F=(l+2+(a<<1)+n|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=F;Gi[e+(S+6<<1)>>1]=F;Gi[e+(m+5<<1)>>1]=F;Gi[e+(i+4<<1)>>1]=F;Gi[e+(y+3<<1)>>1]=F;F=(a+2+(n<<1)+t|0)>>>2&65535;Gi[e+(S+7<<1)>>1]=F;Gi[e+(m+6<<1)>>1]=F;Gi[e+(i+5<<1)>>1]=F;Gi[e+(y+4<<1)>>1]=F;F=(n+2+(t<<1)+o|0)>>>2&65535;Gi[e+(m+7<<1)>>1]=F;Gi[e+(i+6<<1)>>1]=F;Gi[e+(y+5<<1)>>1]=F;F=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=F;Gi[e+(y+6<<1)>>1]=F;Gi[e+(y+7<<1)>>1]=(o+2+(s*3|0)|0)>>>2;return}function SU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;M=e+(n<<1)|0;S=e+-2|0;R=Ji[S>>1]|0;m=Ji[e+(c+-1<<1)>>1]|0;S=((Ji[(i?M:S)>>1]|0)+2+(R<<1)+m|0)>>>2;n=c<<1;p=Ji[e+(n+-1<<1)>>1]|0;R=R+2|0;r=(R+(m<<1)+p|0)>>>2;i=c*3|0;F=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(p<<1)+F|0)>>>2;d=c<<2;y=Ji[e+(d+-1<<1)>>1]|0;p=(p+2+(F<<1)+y|0)>>>2;v=c*5|0;O=Ji[e+(v+-1<<1)>>1]|0;F=(F+2+(y<<1)+O|0)>>>2;E=c*6|0;g=Ji[e+(E+-1<<1)>>1]|0;y=(y+2+(O<<1)+g|0)>>>2;_=c*7|0;A=Ji[e+(_+-1<<1)>>1]|0;O=(O+2+(g<<1)+A|0)>>>2;k=(R+((Ji[M>>1]|0)<<1)+k|0)>>>2;Gi[e+(_<<1)>>1]=(y+2+((g+2+(A*3|0)|0)>>>2)+(O<<1)|0)>>>2;O=(F+2+(y<<1)+O|0)>>>2&65535;Gi[e+(_+1<<1)>>1]=O;Gi[e+(E<<1)>>1]=O;y=(p+2+(F<<1)+y|0)>>>2&65535;Gi[e+(_+2<<1)>>1]=y;Gi[e+((E|1)<<1)>>1]=y;Gi[e+(v<<1)>>1]=y;F=(m+2+(p<<1)+F|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=F;Gi[e+(E+2<<1)>>1]=F;Gi[e+(v+1<<1)>>1]=F;Gi[e+(d<<1)>>1]=F;p=(r+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+3<<1)>>1]=p;Gi[e+(v+2<<1)>>1]=p;Gi[e+((d|1)<<1)>>1]=p;Gi[e+(i<<1)>>1]=p;m=(S+2+(r<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(v+3<<1)>>1]=m;Gi[e+((d|2)<<1)>>1]=m;Gi[e+(i+1<<1)>>1]=m;Gi[e+(n<<1)>>1]=m;r=((S<<1)+2+r+k|0)>>>2&65535;Gi[e+(_+6<<1)>>1]=r;Gi[e+(E+5<<1)>>1]=r;Gi[e+(v+4<<1)>>1]=r;Gi[e+((d|3)<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+((n|1)<<1)>>1]=r;Gi[e+(c<<1)>>1]=r;r=l+2|0;S=(r+S+(k<<1)|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+6<<1)>>1]=S;Gi[e+(v+5<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+(i+3<<1)>>1]=S;Gi[e+(n+2<<1)>>1]=S;Gi[e+(c+1<<1)>>1]=S;Gi[e>>1]=S;k=((l<<1)+2+a+k|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=k;Gi[e+(v+6<<1)>>1]=k;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(n+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;Gi[e+2>>1]=k;r=(r+(a<<1)+t|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=r;Gi[e+(d+6<<1)>>1]=r;Gi[e+(i+5<<1)>>1]=r;Gi[e+(n+4<<1)>>1]=r;Gi[e+(c+3<<1)>>1]=r;Gi[e+4>>1]=r;r=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=r;Gi[e+(i+6<<1)>>1]=r;Gi[e+(n+5<<1)>>1]=r;Gi[e+(c+4<<1)>>1]=r;Gi[e+6>>1]=r;r=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=r;Gi[e+(n+6<<1)>>1]=r;Gi[e+(c+5<<1)>>1]=r;Gi[e+8>>1]=r;r=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=r;Gi[e+(c+6<<1)>>1]=r;Gi[e+10>>1]=r;r=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=r;Gi[e+12>>1]=r;Gi[e+14>>1]=(h+2+(b<<1)+(((f&65535)+2+(w<<1)+u|0)>>>2)|0)>>>2;return}function _U(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;r=((f&65535)+2+(w<<1)+u|0)>>>2;E=e+(n<<1)|0;v=e+-2|0;O=Ji[v>>1]|0;S=Ji[e+(c+-1<<1)>>1]|0;v=((Ji[(i?E:v)>>1]|0)+2+(O<<1)+S|0)>>>2;w=c<<1;p=Ji[e+(w+-1<<1)>>1]|0;O=O+2|0;_=(O+(S<<1)+p|0)>>>2;u=c*3|0;m=Ji[e+(u+-1<<1)>>1]|0;S=(S+2+(p<<1)+m|0)>>>2;n=c<<2;y=Ji[e+(n+-1<<1)>>1]|0;p=(p+2+(m<<1)+y|0)>>>2;i=c*5|0;A=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(y<<1)+A|0)>>>2;f=c*6|0;F=Ji[e+(f+-1<<1)>>1]|0;y=(y+2+(A<<1)+F|0)>>>2;d=c*7|0;F=(A+2+(F<<1)+(Ji[e+(d+-1<<1)>>1]|0)|0)>>>2;E=(O+((Ji[E>>1]|0)<<1)+k|0)>>>2;Gi[e+(f<<1)>>1]=(p+2+(m<<1)+y|0)>>>2;Gi[e+(d<<1)>>1]=(m+2+(y<<1)+F|0)>>>2;k=(_+2+(S<<1)+p|0)>>>2&65535;Gi[e+((f|1)<<1)>>1]=k;Gi[e+(n<<1)>>1]=k;k=(S+2+(p<<1)+m|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=k;Gi[e+(i<<1)>>1]=k;k=((v<<1)+2+_+E|0)>>>2&65535;Gi[e+(f+2<<1)>>1]=k;Gi[e+((n|1)<<1)>>1]=k;Gi[e+(w<<1)>>1]=k;k=(v+2+(_<<1)+S|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=k;Gi[e+(i+1<<1)>>1]=k;Gi[e+(u<<1)>>1]=k;k=l+2|0;v=(k+v+(E<<1)|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=v;Gi[e+(i+2<<1)>>1]=v;Gi[e+(u+1<<1)>>1]=v;Gi[e+(c<<1)>>1]=v;v=l+1|0;S=(v+E|0)>>>1&65535;Gi[e+(f+3<<1)>>1]=S;Gi[e+((n|2)<<1)>>1]=S;Gi[e+((w|1)<<1)>>1]=S;Gi[e>>1]=S;l=((l<<1)+2+a+E|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=l;Gi[e+(i+3<<1)>>1]=l;Gi[e+(u+2<<1)>>1]=l;Gi[e+(c+1<<1)>>1]=l;l=(v+a|0)>>>1&65535;Gi[e+(f+4<<1)>>1]=l;Gi[e+((n|3)<<1)>>1]=l;Gi[e+(w+2<<1)>>1]=l;Gi[e+2>>1]=l;k=(k+(a<<1)+t|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(u+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;k=(a+1+t|0)>>>1&65535;Gi[e+(f+5<<1)>>1]=k;Gi[e+(n+4<<1)>>1]=k;Gi[e+(w+3<<1)>>1]=k;Gi[e+4>>1]=k;k=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=k;Gi[e+(i+5<<1)>>1]=k;Gi[e+(u+4<<1)>>1]=k;Gi[e+(c+3<<1)>>1]=k;k=(t+1+o|0)>>>1&65535;Gi[e+(f+6<<1)>>1]=k;Gi[e+(n+5<<1)>>1]=k;Gi[e+(w+4<<1)>>1]=k;Gi[e+6>>1]=k;k=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=k;Gi[e+(i+6<<1)>>1]=k;Gi[e+(u+5<<1)>>1]=k;Gi[e+(c+4<<1)>>1]=k;k=(o+1+s|0)>>>1&65535;Gi[e+(f+7<<1)>>1]=k;Gi[e+(n+6<<1)>>1]=k;Gi[e+(w+5<<1)>>1]=k;Gi[e+8>>1]=k;k=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=k;Gi[e+(u+6<<1)>>1]=k;Gi[e+(c+5<<1)>>1]=k;k=(s+1+h|0)>>>1&65535;Gi[e+(n+7<<1)>>1]=k;Gi[e+(w+6<<1)>>1]=k;Gi[e+10>>1]=k;k=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(u+7<<1)>>1]=k;Gi[e+(c+6<<1)>>1]=k;k=(h+1+b|0)>>>1&65535;Gi[e+(w+7<<1)>>1]=k;Gi[e+12>>1]=k;Gi[e+(c+7<<1)>>1]=(h+2+(b<<1)+r|0)>>>2;Gi[e+14>>1]=(b+1+r|0)>>>1;return}function mU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;n=f>>1;s=(i|0)!=0;h=0-n|0;u=~n;O=Ji[e+(h<<1)>>1]|0;a=Ji[e+(1-n<<1)>>1]|0;h=((Ji[e+((s?u:h)<<1)>>1]|0)+2+(O<<1)+a|0)>>>2;l=Ji[e+(2-n<<1)>>1]|0;O=O+2|0;t=(O+(a<<1)+l|0)>>>2;f=Ji[e+(3-n<<1)>>1]|0;a=(a+2+(l<<1)+f|0)>>>2;i=Ji[e+(4-n<<1)>>1]|0;l=(l+2+(f<<1)+i|0)>>>2;w=Ji[e+(5-n<<1)>>1]|0;f=(f+2+(i<<1)+w|0)>>>2;r=Ji[e+(6-n<<1)>>1]|0;i=(i+2+(w<<1)+r|0)>>>2;r=(w+2+(r<<1)+(Ji[e+(7-n<<1)>>1]|0)|0)>>>2;u=e+(u<<1)|0;w=e+-2|0;y=Ji[w>>1]|0;o=Ji[e+(n+-1<<1)>>1]|0;w=((Ji[(s?u:w)>>1]|0)+2+(y<<1)+o|0)>>>2;s=n<<1;v=Ji[e+(s+-1<<1)>>1]|0;b=(y+2+(o<<1)+v|0)>>>2;k=n*3|0;S=Ji[e+(k+-1<<1)>>1]|0;o=(o+2+(v<<1)+S|0)>>>2;c=n<<2;m=Ji[e+(c+-1<<1)>>1]|0;v=(v+2+(S<<1)+m|0)>>>2;d=n*5|0;p=Ji[e+(d+-1<<1)>>1]|0;S=(S+2+(m<<1)+p|0)>>>2;E=n*6|0;A=Ji[e+(E+-1<<1)>>1]|0;m=(m+2+(p<<1)+A|0)>>>2;_=n*7|0;F=Ji[e+(_+-1<<1)>>1]|0;p=(p+2+(A<<1)+F|0)>>>2;F=(A+2+(F*3|0)|0)>>>2;u=(O+y+((Ji[u>>1]|0)<<1)|0)>>>2;Gi[e+(_<<1)>>1]=(F+1+p|0)>>>1;Gi[e+(_+1<<1)>>1]=(m+2+F+(p<<1)|0)>>>2;F=(m+1+p|0)>>>1&65535;Gi[e+(_+2<<1)>>1]=F;Gi[e+(E<<1)>>1]=F;p=(S+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=p;Gi[e+((E|1)<<1)>>1]=p;p=(S+1+m|0)>>>1&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+2<<1)>>1]=p;Gi[e+(d<<1)>>1]=p;m=(v+2+(S<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+3<<1)>>1]=m;Gi[e+(d+1<<1)>>1]=m;m=(v+1+S|0)>>>1&65535;Gi[e+(_+6<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(d+2<<1)>>1]=m;Gi[e+(c<<1)>>1]=m;S=(o+2+(v<<1)+S|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+5<<1)>>1]=S;Gi[e+(d+3<<1)>>1]=S;Gi[e+((c|1)<<1)>>1]=S;S=(o+1+v|0)>>>1&65535;Gi[e+(E+6<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+((c|2)<<1)>>1]=S;Gi[e+(k<<1)>>1]=S;v=(b+2+(o<<1)+v|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=v;Gi[e+(d+5<<1)>>1]=v;Gi[e+((c|3)<<1)>>1]=v;Gi[e+(k+1<<1)>>1]=v;v=(b+1+o|0)>>>1&65535;Gi[e+(d+6<<1)>>1]=v;Gi[e+(c+4<<1)>>1]=v;Gi[e+(k+2<<1)>>1]=v;Gi[e+(s<<1)>>1]=v;o=(w+2+(b<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=o;Gi[e+(c+5<<1)>>1]=o;Gi[e+(k+3<<1)>>1]=o;Gi[e+((s|1)<<1)>>1]=o;o=w+1|0;d=(o+b|0)>>>1&65535;Gi[e+(c+6<<1)>>1]=d;Gi[e+(k+4<<1)>>1]=d;Gi[e+(s+2<<1)>>1]=d;Gi[e+(n<<1)>>1]=d;b=((w<<1)+2+b+u|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=b;Gi[e+(k+5<<1)>>1]=b;Gi[e+(s+3<<1)>>1]=b;Gi[e+(n+1<<1)>>1]=b;o=(o+u|0)>>>1&65535;Gi[e+(k+6<<1)>>1]=o;Gi[e+(s+4<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e>>1]=o;o=h+2|0;w=(o+w+(u<<1)|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=w;Gi[e+(s+5<<1)>>1]=w;Gi[e+(n+3<<1)>>1]=w;Gi[e+2>>1]=w;u=((h<<1)+2+t+u|0)>>>2&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(n+4<<1)>>1]=u;Gi[e+4>>1]=u;o=(o+(t<<1)+a|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(n+5<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+(a<<1)+l|0)>>>2&65535;Gi[e+(n+6<<1)>>1]=t;Gi[e+8>>1]=t;a=(a+2+(l<<1)+f|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=a;Gi[e+10>>1]=a;Gi[e+12>>1]=(l+2+(f<<1)+i|0)>>>2;Gi[e+14>>1]=(f+2+(i<<1)+r|0)>>>2;return}function pU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;d=f>>1;o=0-d|0;s=Ji[e+(o<<1)>>1]|0;u=Ji[e+(1-d<<1)>>1]|0;o=((Ji[e+(((i|0)==0?o:~d)<<1)>>1]|0)+2+(s<<1)+u|0)>>>2;h=Ji[e+(2-d<<1)>>1]|0;s=(s+2+(u<<1)+h|0)>>>2;w=Ji[e+(3-d<<1)>>1]|0;u=(u+2+(h<<1)+w|0)>>>2;b=Ji[e+(4-d<<1)>>1]|0;h=(h+2+(w<<1)+b|0)>>>2;c=Ji[e+(5-d<<1)>>1]|0;w=(w+2+(b<<1)+c|0)>>>2;k=Ji[e+(6-d<<1)>>1]|0;b=(b+2+(c<<1)+k|0)>>>2;f=Gi[e+(7-d<<1)>>1]|0;t=f&65535;c=(c+2+(k<<1)+t|0)>>>2;if(!r){i=(f&65535)+2+(t<<1)|0;r=t;l=t;a=t;n=t;f=t}else{E=Ji[e+(8-d<<1)>>1]|0;v=Ji[e+(9-d<<1)>>1]|0;f=Ji[e+(10-d<<1)>>1]|0;n=Ji[e+(11-d<<1)>>1]|0;a=Ji[e+(12-d<<1)>>1]|0;i=(Ji[e+(8-d<<1)>>1]|0)+2+(t<<1)|0;r=(v+2+(f<<1)+n|0)>>>2;l=(f+2+(n<<1)+a|0)>>>2;a=(n+2+(a<<1)+(Ji[e+(13-d<<1)>>1]|0)|0)>>>2;n=(t+2+(E<<1)+v|0)>>>2;f=(E+2+(v<<1)+f|0)>>>2}i=(i+k|0)>>>2;Gi[e>>1]=(o+1+s|0)>>>1;Gi[e+(d<<1)>>1]=(o+2+(s<<1)+u|0)>>>2;E=(s+1+u|0)>>>1&65535;Gi[e+2>>1]=E;t=d<<1;Gi[e+(t<<1)>>1]=E;E=(s+2+(u<<1)+h|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=E;o=d*3|0;Gi[e+(o<<1)>>1]=E;E=(u+1+h|0)>>>1&65535;Gi[e+4>>1]=E;Gi[e+((t|1)<<1)>>1]=E;s=d<<2;Gi[e+(s<<1)>>1]=E;E=(u+2+(h<<1)+w|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=E;Gi[e+(o+1<<1)>>1]=E;k=d*5|0;Gi[e+(k<<1)>>1]=E;E=(h+1+w|0)>>>1&65535;Gi[e+6>>1]=E;Gi[e+(t+2<<1)>>1]=E;Gi[e+((s|1)<<1)>>1]=E;v=d*6|0;Gi[e+(v<<1)>>1]=E;h=(h+2+(w<<1)+b|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=h;Gi[e+(o+2<<1)>>1]=h;Gi[e+(k+1<<1)>>1]=h;E=d*7|0;Gi[e+(E<<1)>>1]=h;h=(w+1+b|0)>>>1&65535;Gi[e+8>>1]=h;Gi[e+(t+3<<1)>>1]=h;Gi[e+((s|2)<<1)>>1]=h;Gi[e+((v|1)<<1)>>1]=h;w=(w+2+(b<<1)+c|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=w;Gi[e+(o+3<<1)>>1]=w;Gi[e+(k+2<<1)>>1]=w;Gi[e+(E+1<<1)>>1]=w;w=(b+1+c|0)>>>1&65535;Gi[e+10>>1]=w;Gi[e+(t+4<<1)>>1]=w;Gi[e+((s|3)<<1)>>1]=w;Gi[e+(v+2<<1)>>1]=w;b=(b+2+(c<<1)+i|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=b;Gi[e+(o+4<<1)>>1]=b;Gi[e+(k+3<<1)>>1]=b;Gi[e+(E+2<<1)>>1]=b;b=(c+1+i|0)>>>1&65535;Gi[e+12>>1]=b;Gi[e+(t+5<<1)>>1]=b;Gi[e+(s+4<<1)>>1]=b;Gi[e+(v+3<<1)>>1]=b;c=(c+2+(i<<1)+n|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=c;Gi[e+(o+5<<1)>>1]=c;Gi[e+(k+4<<1)>>1]=c;Gi[e+(E+3<<1)>>1]=c;c=(i+1+n|0)>>>1&65535;Gi[e+14>>1]=c;Gi[e+(t+6<<1)>>1]=c;Gi[e+(s+5<<1)>>1]=c;Gi[e+(v+4<<1)>>1]=c;c=(i+2+(n<<1)+f|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=c;Gi[e+(o+6<<1)>>1]=c;Gi[e+(k+5<<1)>>1]=c;Gi[e+(E+4<<1)>>1]=c;d=(n+1+f|0)>>>1&65535;Gi[e+(t+7<<1)>>1]=d;Gi[e+(s+6<<1)>>1]=d;Gi[e+(v+5<<1)>>1]=d;d=(n+2+(f<<1)+r|0)>>>2&65535;Gi[e+(o+7<<1)>>1]=d;Gi[e+(k+6<<1)>>1]=d;Gi[e+(E+5<<1)>>1]=d;d=(f+1+r|0)>>>1&65535;Gi[e+(s+7<<1)>>1]=d;Gi[e+(v+6<<1)>>1]=d;d=(f+2+(r<<1)+l|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=d;Gi[e+(E+6<<1)>>1]=d;Gi[e+(v+7<<1)>>1]=(r+1+l|0)>>>1;Gi[e+(E+7<<1)>>1]=(r+2+(l<<1)+a|0)>>>2;return}function FU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;h=f>>1;c=e+-2|0;b=Ji[c>>1]|0;k=Ji[e+(h+-1<<1)>>1]|0;c=((Ji[((i|0)==0?c:e+(~h<<1)|0)>>1]|0)+2+(b<<1)+k|0)>>>2;s=h<<1;w=Ji[e+(s+-1<<1)>>1]|0;b=(b+2+(k<<1)+w|0)>>>2;t=h*3|0;u=Ji[e+(t+-1<<1)>>1]|0;k=(k+2+(w<<1)+u|0)>>>2;a=h<<2;o=Ji[e+(a+-1<<1)>>1]|0;w=(w+2+(u<<1)+o|0)>>>2;l=h*5|0;n=Ji[e+(l+-1<<1)>>1]|0;u=(u+2+(o<<1)+n|0)>>>2;f=h*6|0;d=Ji[e+(f+-1<<1)>>1]|0;o=(o+2+(n<<1)+d|0)>>>2;r=h*7|0;i=Ji[e+(r+-1<<1)>>1]|0;n=(n+2+(d<<1)+i|0)>>>2;i=(d+2+(i*3|0)|0)>>>2;Gi[e>>1]=(c+1+b|0)>>>1;Gi[e+2>>1]=(c+2+(b<<1)+k|0)>>>2;c=(b+1+k|0)>>>1&65535;Gi[e+4>>1]=c;Gi[e+(h<<1)>>1]=c;b=(b+2+(k<<1)+w|0)>>>2&65535;Gi[e+6>>1]=b;Gi[e+(h+1<<1)>>1]=b;b=(k+1+w|0)>>>1&65535;Gi[e+8>>1]=b;Gi[e+(h+2<<1)>>1]=b;Gi[e+(s<<1)>>1]=b;k=(k+2+(w<<1)+u|0)>>>2&65535;Gi[e+10>>1]=k;Gi[e+(h+3<<1)>>1]=k;Gi[e+((s|1)<<1)>>1]=k;k=(w+1+u|0)>>>1&65535;Gi[e+12>>1]=k;Gi[e+(h+4<<1)>>1]=k;Gi[e+(s+2<<1)>>1]=k;Gi[e+(t<<1)>>1]=k;w=(w+2+(u<<1)+o|0)>>>2&65535;Gi[e+14>>1]=w;Gi[e+(h+5<<1)>>1]=w;Gi[e+(s+3<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;w=(u+1+o|0)>>>1&65535;Gi[e+(h+6<<1)>>1]=w;Gi[e+(s+4<<1)>>1]=w;Gi[e+(t+2<<1)>>1]=w;Gi[e+(a<<1)>>1]=w;u=(u+2+(o<<1)+n|0)>>>2&65535;Gi[e+(h+7<<1)>>1]=u;Gi[e+(s+5<<1)>>1]=u;Gi[e+(t+3<<1)>>1]=u;Gi[e+((a|1)<<1)>>1]=u;u=(o+1+n|0)>>>1&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(t+4<<1)>>1]=u;Gi[e+((a|2)<<1)>>1]=u;Gi[e+(l<<1)>>1]=u;o=(o+2+i+(n<<1)|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(t+5<<1)>>1]=o;Gi[e+((a|3)<<1)>>1]=o;Gi[e+(l+1<<1)>>1]=o;o=(i+1+n|0)>>>1&65535;Gi[e+(t+6<<1)>>1]=o;Gi[e+(a+4<<1)>>1]=o;Gi[e+(l+2<<1)>>1]=o;Gi[e+(f<<1)>>1]=o;n=(n+2+(i*3|0)|0)>>>2&65535;Gi[e+(t+7<<1)>>1]=n;Gi[e+(a+5<<1)>>1]=n;Gi[e+(l+3<<1)>>1]=n;Gi[e+((f|1)<<1)>>1]=n;i=i&65535;Gi[e+(r+7<<1)>>1]=i;Gi[e+(f+7<<1)>>1]=i;Gi[e+(l+7<<1)>>1]=i;Gi[e+(a+7<<1)>>1]=i;Gi[e+(r+6<<1)>>1]=i;Gi[e+(f+6<<1)>>1]=i;Gi[e+(l+6<<1)>>1]=i;Gi[e+(a+6<<1)>>1]=i;Gi[e+(r+5<<1)>>1]=i;Gi[e+(f+5<<1)>>1]=i;Gi[e+(l+5<<1)>>1]=i;Gi[e+(r+4<<1)>>1]=i;Gi[e+(f+4<<1)>>1]=i;Gi[e+(l+4<<1)>>1]=i;Gi[e+(r+3<<1)>>1]=i;Gi[e+(f+3<<1)>>1]=i;Gi[e+(r+2<<1)>>1]=i;Gi[e+(f+2<<1)>>1]=i;Gi[e+(r+1<<1)>>1]=i;Gi[e+(r<<1)>>1]=i;return}function yU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;r=f>>1;h=e+-2|0;u=Ji[h>>1]|0;s=Ji[e+(r+-1<<1)>>1]|0;o=Ji[e+((r<<1)+-1<<1)>>1]|0;t=Ji[e+((r*3|0)+-1<<1)>>1]|0;n=Ji[e+((r<<2)+-1<<1)>>1]|0;a=Ji[e+((r*5|0)+-1<<1)>>1]|0;l=Ji[e+((r*6|0)+-1<<1)>>1]|0;f=Ji[e+((r*7|0)+-1<<1)>>1]|0;f=(((Ji[((i|0)==0?h:e+(~r<<1)|0)>>1]|0)+2+(u<<1)+s|0)>>>2)+4+((u+2+(s<<1)+o|0)>>>2)+((s+2+(o<<1)+t|0)>>>2)+((o+2+(t<<1)+n|0)>>>2)+((t+2+(n<<1)+a|0)>>>2)+((n+2+(a<<1)+l|0)>>>2)+((a+2+(l<<1)+f|0)>>>2)+((l+2+(f*3|0)|0)>>>2)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;i=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=e+(r+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<1;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*3|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r<<2;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*5|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;l=r*6|0;a=e+(l<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=i;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=r*7|0;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function OU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;l=f>>1;n=0-l|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-l<<1)>>1]|0;t=Ji[e+(2-l<<1)>>1]|0;o=Ji[e+(3-l<<1)>>1]|0;s=Ji[e+(4-l<<1)>>1]|0;u=Ji[e+(5-l<<1)>>1]|0;h=Ji[e+(6-l<<1)>>1]|0;f=Gi[e+(7-l<<1)>>1]|0;w=f&65535;if(r)f=Gi[e+(8-l<<1)>>1]|0;k=(((Ji[e+(((i|0)==0?n:~l)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2)+4+((k+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+((o+2+(s<<1)+u|0)>>>2)+((s+2+(u<<1)+h|0)>>>2)+((u+2+(h<<1)+w|0)>>>2)+(((f&65535)+2+(w<<1)+h|0)>>>2)>>3;k=rN(k|0,((k|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;i=e;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+8|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=e+(l+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<1;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*3|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l<<2;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*5|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*6|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;i=l*7|0;w=e+(i<<1)|0;Xi[w>>2]=k;Xi[w+4>>2]=r;i=e+(i+4<<1)|0;Xi[i>>2]=k;Xi[i+4>>2]=r;return}function AU(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=f>>1;i=e;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=e+8|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=e+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=e+(r+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=r<<1;f=e+(i<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;i=e+(i+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=r*3|0;f=e+(i<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;i=e+(i+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=r<<2;f=e+(i<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;i=e+(i+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=r*5|0;f=e+(i<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;i=e+(i+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=r*6|0;f=e+(i<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;i=e+(i+4<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;r=r*7|0;i=e+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;r=e+(r+4<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;return}function gU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=8);return}function MU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;a=e+(0-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=l;Xi[o+4>>2]=a;t=e+(t+4<<1)|0;Xi[t>>2]=r;Xi[t+4>>2]=f;n=n+1|0}while((n|0)!=16);return}function RU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=8);return}function TU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+4<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function NU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;b=i>>1;f=e+6|0;l=0-b|0;t=(b<<2)+-1|0;n=e+(t<<1)|0;t=e+(t-(b<<1)<<1)|0;o=e+((b*14|0)+-2)|0;s=e+-2|0;i=(Ji[f+(1-b<<1)>>1]|0)-(Ji[f+(~b<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(b<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-b<<1)>>1]|0)-(Ji[f+(0-(b+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=5);k=(i*17|0)+16>>5;l=(r*17|0)+16>>5;a=k<<1;n=k*3|0;t=k<<2;u=k*5|0;h=k*6|0;w=k*7|0;r=((Ji[s+(8-b<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(l+k|0,-3)|0)|0;f=8;while(1){i=r>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e>>1]=i;i=r+k>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+2>>1]=i;i=r+a>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+4>>1]=i;i=r+n>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+8>>1]=i;i=r+u>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+10>>1]=i;i=r+h>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+12>>1]=i;i=r+w>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+14>>1]=i;if((f|0)>1){r=r+l|0;f=f+-1|0;e=e+(b<<1)|0}else break}return}function DU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;c=i>>1;f=e+6|0;t=0-c|0;n=(c<<3)+-1|0;a=e+(n<<1)|0;n=e+(n-(c<<1)<<1)|0;h=e+((c*6|0)+-2)|0;s=(c*22|0)+-2|0;o=e+s|0;u=c<<3;r=(Ji[f+(1-c<<1)>>1]|0)-(Ji[f+(~c<<1)>>1]|0)|0;i=(Ji[a>>1]|0)-(Ji[n>>1]|0)|0;l=2;do{a=a+(c<<1)|0;n=n+(t<<1)|0;r=(Zi((Ji[f+(l-c<<1)>>1]|0)-(Ji[f+(0-(c+l)<<1)>>1]|0)|0,l)|0)+r|0;i=(Zi((Ji[a>>1]|0)-(Ji[n>>1]|0)|0,l)|0)+i|0;l=l+1|0}while((l|0)!=5);f=Zi(c,-3)|0;l=o+(c<<1)|0;b=h+(t<<1)|0;n=l+(c<<1)|0;a=b+(t<<1)|0;w=n+(c<<1)|0;o=a+(t<<1)|0;b=((((Ji[w+(c<<1)>>1]|0)-(Ji[o+(t<<1)>>1]|0)<<3)+((((Ji[w>>1]|0)-(Ji[o>>1]|0)|0)*7|0)+((((Ji[n>>1]|0)-(Ji[a>>1]|0)|0)*6|0)+((((Ji[l>>1]|0)-(Ji[b>>1]|0)|0)*5|0)+i)))|0)*5|0)+32>>6;l=(r*17|0)+16>>5;a=l*3|0;n=l<<1;t=l<<2;o=l*5|0;w=l*6|0;k=l*7|0;r=(Zi(b,-7)|0)+(16-a)+((Ji[h+(f+(8-c)<<1)>>1]|0)+(Ji[e+(s+u)>>1]|0)<<4)|0;f=16;while(1){i=r>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e>>1]=i;i=r+l>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+2>>1]=i;i=r+n>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+4>>1]=i;i=r+a>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+6>>1]=i;i=r+t>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+8>>1]=i;i=r+o>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+10>>1]=i;i=r+w>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+12>>1]=i;i=r+k>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[e+14>>1]=i;if((f|0)>1){r=r+b|0;f=f+-1|0;e=e+(c<<1)|0}else break}return}function CU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0;a=i>>1;f=0;r=0;i=0;l=0;do{n=Ji[e+((Zi(l,a)|0)+-1<<1)>>1]|0;f=n+f+(Ji[e+(l-a<<1)>>1]|0)|0;n=l+4|0;r=(Ji[e+(n-a<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n,a)|0)+-1<<1)>>1]|0)+i|0;l=l+1|0}while((l|0)!=4);s=f+4>>3;s=rN(s|0,((s|0)<0)<<31>>31|0,65537,65537)|0;o=Ie;t=r+2>>2;t=rN(t|0,((t|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;l=i+2>>2;f=i+4+r>>3;i=e;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+8|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=e+(a<<1)|0;Xi[i>>2]=s;Xi[i+4>>2]=o;i=e+(a+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a<<1;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=a*3|0;r=e+(i<<1)|0;Xi[r>>2]=s;Xi[r+4>>2]=o;i=e+(i+4<<1)|0;Xi[i>>2]=t;Xi[i+4>>2]=n;i=rN(l|0,((l|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;n=a<<2;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*5|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*6|0;t=e+(n<<1)|0;Xi[t>>2]=i;Xi[t+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;n=a*7|0;a=e+(n<<1)|0;Xi[a>>2]=i;Xi[a+4>>2]=r;n=e+(n+4<<1)|0;Xi[n>>2]=f;Xi[n+4>>2]=l;return}function PU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;l=i>>1;r=0;i=0;f=0;do{r=(Ji[e+((Zi(f,l)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(f+4|0,l)|0)+-1<<1)>>1]|0)+i|0;f=f+1|0}while((f|0)!=4);n=r+2>>2;n=rN(n|0,((n|0)<0)<<31>>31|0,65537,65537)|0;a=Ie;r=i+2>>2;f=e;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+8|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=e+(l+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l<<1;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;f=l*3|0;i=e+(f<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=e+(f+4<<1)|0;Xi[f>>2]=n;Xi[f+4>>2]=a;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;i=l<<2;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*5|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;i=l*6|0;a=e+(i<<1)|0;Xi[a>>2]=r;Xi[a+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;l=l*7|0;i=e+(l<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=f;e=e+(l+4<<1)|0;Xi[e>>2]=r;Xi[e+4>>2]=f;return}function LU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0;i=i>>1;f=4-i|0;f=(Ji[e+(f+3<<1)>>1]|0)+((Ji[e+(f+2<<1)>>1]|0)+((Ji[e+(f+1<<1)>>1]|0)+(Ji[e+(f<<1)>>1]|0)))|0;n=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;a=Ie;f=rN((f+2|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+8|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;l=e+(i+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<1;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*3|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i<<2;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*5|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=i*6|0;t=e+(l<<1)|0;Xi[t>>2]=n;Xi[t+4>>2]=a;l=e+(l+4<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=i*7|0;l=e+(i<<1)|0;Xi[l>>2]=n;Xi[l+4>>2]=a;i=e+(i+4<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function IU(e,i){e=e|0;i=i|0;LU(e,i);fU(e,0,i);return}function HU(e,i){e=e|0;i=i|0;CU(e,i);hU(e,0,i);return}function BU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;PU(e,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=a+(f<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=33554944;Xi[a+4>>2]=33554944;e=e+(l+8)|0;l=e;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;f=e+(f<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;r=e+(r<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;i=e+(i<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;return}function UU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;PU(e,i);f=i>>1;r=e;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=e+(f<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;e=e+8|0;l=e;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;f=e+(f<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;r=e+(r<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;i=e+(i<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;return}function xU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0;t=i>>1;a=0;l=0;f=0;r=0;i=0;n=0;do{o=Ji[e+((Zi(n,t)|0)+-1<<1)>>1]|0;a=o+a+(Ji[e+(n-t<<1)>>1]|0)|0;o=n+4|0;l=(Ji[e+(o-t<<1)>>1]|0)+l|0;f=(Ji[e+((Zi(o,t)|0)+-1<<1)>>1]|0)+f|0;r=(Ji[e+((Zi(n+8|0,t)|0)+-1<<1)>>1]|0)+r|0;i=(Ji[e+((Zi(n+12|0,t)|0)+-1<<1)>>1]|0)+i|0;n=n+1|0}while((n|0)!=4);o=a+4>>3;o=rN(o|0,((o|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;u=l+2>>2;u=rN(u|0,((u|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;c=f+2>>2;w=f+4+l>>3;h=r+2>>2;r=r+4+l>>3;f=i+2>>2;a=i+4+l>>3;b=e;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+8|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=e+(t<<1)|0;Xi[b>>2]=o;Xi[b+4>>2]=n;b=e+(t+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t<<1;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;b=t*3|0;i=e+(b<<1)|0;Xi[i>>2]=o;Xi[i+4>>2]=n;b=e+(b+4<<1)|0;Xi[b>>2]=u;Xi[b+4>>2]=s;c=rN(c|0,((c|0)<0)<<31>>31|0,65537,65537)|0;b=Ie;w=rN(w|0,((w|0)<0)<<31>>31|0,65537,65537)|0;s=Ie;h=rN(h|0,((h|0)<0)<<31>>31|0,65537,65537)|0;u=Ie;i=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;l=Ie;a=rN(a|0,((a|0)<0)<<31>>31|0,65537,65537)|0;n=Ie;o=t<<2;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*5|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*6|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t*7|0;k=e+(o<<1)|0;Xi[k>>2]=c;Xi[k+4>>2]=b;o=e+(o+4<<1)|0;Xi[o>>2]=w;Xi[o+4>>2]=s;o=t<<3;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+((o|4)<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*9|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*10|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*11|0;s=e+(o<<1)|0;Xi[s>>2]=h;Xi[s+4>>2]=u;o=e+(o+4<<1)|0;Xi[o>>2]=i;Xi[o+4>>2]=r;o=t*12|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*13|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*14|0;r=e+(o<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;o=t*15|0;t=e+(o<<1)|0;Xi[t>>2]=f;Xi[t+4>>2]=l;o=e+(o+4<<1)|0;Xi[o>>2]=a;Xi[o+4>>2]=n;return}function zU(e,i){e=e|0;i=i|0;PU(e,i);PU(e+(i<<3)|0,i);return}function VU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0;i=i>>1;l=4-i|0;l=(Ji[e+(l+3<<1)>>1]|0)+((Ji[e+(l+2<<1)>>1]|0)+((Ji[e+(l+1<<1)>>1]|0)+(Ji[e+(l<<1)>>1]|0)))|0;r=rN(((Ji[e+(3-i<<1)>>1]|0)+((Ji[e+(2-i<<1)>>1]|0)+((Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(0-i<<1)>>1]|0)))+2|0)>>>2|0,0,65537,65537)|0;f=Ie;l=rN((l+2|0)>>>2|0,0,65537,65537)|0;a=Ie;n=0;do{t=Zi(n,i)|0;o=e+(t<<1)|0;Xi[o>>2]=r;Xi[o+4>>2]=f;t=e+(t+4<<1)|0;Xi[t>>2]=l;Xi[t+4>>2]=a;n=n+1|0}while((n|0)!=16);return}function YU(e,i){e=e|0;i=i|0;VU(e,i);fU(e,0,i);return}function jU(e,i){e=e|0;i=i|0;xU(e,i);hU(e,0,i);return}function KU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;PU(e,i);PU(e+(i<<3)|0,i);l=i<<2;a=e+l|0;f=i>>1;r=a;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=a+(f<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=f<<1;i=a+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=f*3|0;a=a+(i<<1)|0;Xi[a>>2]=33554944;Xi[a+4>>2]=33554944;e=e+(l+8)|0;l=e;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;f=e+(f<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;r=e+(r<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;i=e+(i<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;return}function WU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;PU(e,i);PU(e+(i<<3)|0,i);f=i>>1;r=e;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=e+(f<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;r=f<<1;i=e+(r<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;i=f*3|0;l=e+(i<<1)|0;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;e=e+8|0;l=e;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;f=e+(f<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;r=e+(r<<1)|0;Xi[r>>2]=33554944;Xi[r+4>>2]=33554944;i=e+(i<<1)|0;Xi[i>>2]=33554944;Xi[i+4>>2]=33554944;return}function GU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=33489407;Xi[l+4>>2]=33489407;f=e+(f+4<<1)|0;Xi[f>>2]=33489407;Xi[f+4>>2]=33489407;r=r+1|0}while((r|0)!=8);return}function XU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=33620481;Xi[l+4>>2]=33620481;f=e+(f+4<<1)|0;Xi[f>>2]=33620481;Xi[f+4>>2]=33620481;r=r+1|0}while((r|0)!=8);return}function qU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0;i=i>>1;r=0;do{f=Zi(r,i)|0;l=e+(f<<1)|0;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;f=e+(f+4<<1)|0;Xi[f>>2]=33554944;Xi[f+4>>2]=33554944;r=r+1|0}while((r|0)!=8);return}function JU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;f=i>>1;r=0;do{l=Zi(r,f)|0;a=e+(l<<1)|0;Xi[a>>2]=33554944;Xi[a+4>>2]=33554944;l=e+(l+4<<1)|0;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;r=r+1|0}while((r|0)!=8);e=e+(i<<3)|0;r=0;do{a=Zi(r,f)|0;l=e+(a<<1)|0;Xi[l>>2]=33554944;Xi[l+4>>2]=33554944;a=e+(a+4<<1)|0;Xi[a>>2]=33554944;Xi[a+4>>2]=33554944;r=r+1|0}while((r|0)!=8);return}function ZU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+16>>5;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function QU(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;i=i>>1;s=e+(0-i<<1)|0;o=Xi[s>>2]|0;s=Xi[s+4>>2]|0;f=e+(4-i<<1)|0;r=Xi[f>>2]|0;f=Xi[f+4>>2]|0;a=e+(8-i<<1)|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=e+(12-i<<1)|0;n=Xi[t>>2]|0;t=Xi[t+4>>2]|0;u=0;do{h=Zi(u,i)|0;w=e+(h<<1)|0;Xi[w>>2]=o;Xi[w+4>>2]=s;w=e+(h+4<<1)|0;Xi[w>>2]=r;Xi[w+4>>2]=f;w=e+(h+8<<1)|0;Xi[w>>2]=l;Xi[w+4>>2]=a;h=e+(h+12<<1)|0;Xi[h>>2]=n;Xi[h+4>>2]=t;u=u+1|0}while((u|0)!=16);return}function $U(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0;i=i>>1;r=0;do{f=Zi(r,i)|0;a=rN(Ji[e+(f+-1<<1)>>1]|0|0,0,65537,65537)|0;l=Ie;n=e+(f<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+4<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;n=e+(f+8<<1)|0;Xi[n>>2]=a;Xi[n+4>>2]=l;f=e+(f+12<<1)|0;Xi[f>>2]=a;Xi[f+4>>2]=l;r=r+1|0}while((r|0)!=16);return}function ex(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=33489407;Xi[e+4>>2]=33489407;e=i+8|0;Xi[e>>2]=33489407;Xi[e+4>>2]=33489407;e=i+16|0;Xi[e>>2]=33489407;Xi[e+4>>2]=33489407;e=i+24|0;Xi[e>>2]=33489407;Xi[e+4>>2]=33489407;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function ix(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=33620481;Xi[e+4>>2]=33620481;e=i+8|0;Xi[e>>2]=33620481;Xi[e+4>>2]=33620481;e=i+16|0;Xi[e>>2]=33620481;Xi[e+4>>2]=33620481;e=i+24|0;Xi[e>>2]=33620481;Xi[e+4>>2]=33620481;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function rx(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=i>>1;f=e+14|0;l=0-k|0;t=(k<<3)+-1|0;n=e+(t<<1)|0;t=e+(t-(k<<1)<<1)|0;o=e+((k*30|0)+-2)|0;i=(Ji[f+(1-k<<1)>>1]|0)-(Ji[f+(~k<<1)>>1]|0)|0;r=(Ji[n>>1]|0)-(Ji[t>>1]|0)|0;a=2;do{n=n+(k<<1)|0;t=t+(l<<1)|0;i=(Zi((Ji[f+(a-k<<1)>>1]|0)-(Ji[f+(0-(k+a)<<1)>>1]|0)|0,a)|0)+i|0;r=(Zi((Ji[n>>1]|0)-(Ji[t>>1]|0)|0,a)|0)+r|0;a=a+1|0}while((a|0)!=9);w=(i*5|0)+32>>6;t=(r*5|0)+32>>6;s=w<<1;u=w*3|0;h=w<<2;a=((Ji[e+-2+(16-k<<1)>>1]|0)+(Ji[o>>1]|0)<<4)+16+(Zi(t+w|0,-7)|0)|0;n=16;l=e;while(1){r=a;f=-16;while(1){i=r>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[l+(f+16<<1)>>1]=i;i=r+w>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[l+(f+17<<1)>>1]=i;i=r+s>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[l+(f+18<<1)>>1]=i;i=r+u>>5;if(i>>>0>=1024)i=0-i>>31&1023;Gi[l+(f+19<<1)>>1]=i;if((f|0)<-4){r=r+h|0;f=f+4|0}else break}if((n|0)>1){a=a+t|0;n=n+-1|0;l=l+(k<<1)|0}else break}return}function fx(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+((Zi(r,a)|0)+-1<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function lx(e,i){e=e|0;i=i|0;var r=0,f=0,l=0,a=0;a=i>>1;i=0;r=0;do{i=(Ji[e+(r-a<<1)>>1]|0)+i|0;r=r+1|0}while((r|0)!=16);r=i+8>>4;r=rN(r|0,((r|0)<0)<<31>>31|0,65537,65537)|0;f=Ie;l=0;i=e;while(1){e=i;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+8|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+16|0;Xi[e>>2]=r;Xi[e+4>>2]=f;e=i+24|0;Xi[e>>2]=r;Xi[e+4>>2]=f;l=l+1|0;if((l|0)==16)break;else i=i+(a<<1)|0}return}function ax(e,i){e=e|0;i=i|0;var r=0,f=0;r=i>>1;f=0;i=e;while(1){e=i;Xi[e>>2]=33554944;Xi[e+4>>2]=33554944;e=i+8|0;Xi[e>>2]=33554944;Xi[e+4>>2]=33554944;e=i+16|0;Xi[e>>2]=33554944;Xi[e+4>>2]=33554944;e=i+24|0;Xi[e>>2]=33554944;Xi[e+4>>2]=33554944;f=f+1|0;if((f|0)==16)break;else i=i+(r<<1)|0}return}function nx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=i;o=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[t>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[t+16>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[t+32>>2]|0)|0;Gi[r+(a<<1)>>1]=e;Gi[r+(n<<1)>>1]=e+(Xi[t+48>>2]|0);o=o+1|0;if((o|0)==4)break;else{t=t+4|0;r=r+2|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function tx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;Gi[r+6>>1]=e+(Xi[l+12>>2]|0);a=a+1|0;if((a|0)==4)break;else{l=l+16|0;r=r+(f<<1)|0}}r=i+64|0;do{Gi[i>>1]=0;i=i+2|0}while((i|0)<(r|0));return}function ox(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;f=r>>1;l=f<<1;a=f*3|0;n=f<<2;t=f*5|0;o=f*6|0;s=f*7|0;u=f<<3;h=i;w=0;r=e+(0-f<<1)|0;while(1){e=(Ji[r>>1]|0)+(Xi[h>>2]|0)|0;Gi[r+(f<<1)>>1]=e;e=e+(Xi[h+32>>2]|0)|0;Gi[r+(l<<1)>>1]=e;e=e+(Xi[h+64>>2]|0)|0;Gi[r+(a<<1)>>1]=e;e=e+(Xi[h+96>>2]|0)|0;Gi[r+(n<<1)>>1]=e;e=e+(Xi[h+128>>2]|0)|0;Gi[r+(t<<1)>>1]=e;e=e+(Xi[h+160>>2]|0)|0;Gi[r+(o<<1)>>1]=e;e=e+(Xi[h+192>>2]|0)|0;Gi[r+(s<<1)>>1]=e;Gi[r+(u<<1)>>1]=e+(Xi[h+224>>2]|0);w=w+1|0;if((w|0)==8)break;else{h=h+4|0;r=r+2|0}}jT(i|0,0,256)|0;return}function sx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0;f=r>>1;l=i;a=0;r=e;while(1){e=(Ji[r+-2>>1]|0)+(Xi[l>>2]|0)|0;Gi[r>>1]=e;e=e+(Xi[l+4>>2]|0)|0;Gi[r+2>>1]=e;e=e+(Xi[l+8>>2]|0)|0;Gi[r+4>>1]=e;e=e+(Xi[l+12>>2]|0)|0;Gi[r+6>>1]=e;e=e+(Xi[l+16>>2]|0)|0;Gi[r+8>>1]=e;e=e+(Xi[l+20>>2]|0)|0;Gi[r+10>>1]=e;e=e+(Xi[l+24>>2]|0)|0;Gi[r+12>>1]=e;Gi[r+14>>1]=e+(Xi[l+28>>2]|0);a=a+1|0;if((a|0)==8)break;else{l=l+32|0;r=r+(f<<1)|0}}jT(i|0,0,256)|0;return}function ux(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0;d=Ue;Ue=Ue+16|0;c=d;b=l>>1;n=0-b|0;k=Ji[e+(n<<1)>>1]|0;a=Ji[e+(1-b<<1)>>1]|0;t=Ji[e+(2-b<<1)>>1]|0;o=Ji[e+(3-b<<1)>>1]|0;s=Ji[e+(4-b<<1)>>1]|0;u=Ji[e+(5-b<<1)>>1]|0;h=Ji[e+(6-b<<1)>>1]|0;l=Gi[e+(7-b<<1)>>1]|0;w=l&65535;if(f)l=Gi[e+(8-b<<1)>>1]|0;r=((Ji[e+(((r|0)==0?n:~b)<<1)>>1]|0)+2+(k<<1)+a|0)>>>2&65535;Gi[c>>1]=r;Gi[c+2>>1]=(k+2+(a<<1)+t|0)>>>2;Gi[c+4>>1]=(a+2+(t<<1)+o|0)>>>2;Gi[c+6>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[c+8>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[c+10>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[c+12>>1]=(u+2+(h<<1)+w|0)>>>2;Gi[c+14>>1]=((l&65535)+2+(w<<1)+h|0)>>>2;o=b<<1;s=b*3|0;u=b<<2;h=b*5|0;a=b*6|0;n=b*7|0;t=r;w=i;l=0;while(1){r=(t&65535)+(Xi[w>>2]|0)|0;Gi[e>>1]=r;r=r+(Xi[w+32>>2]|0)|0;Gi[e+(b<<1)>>1]=r;r=r+(Xi[w+64>>2]|0)|0;Gi[e+(o<<1)>>1]=r;r=r+(Xi[w+96>>2]|0)|0;Gi[e+(s<<1)>>1]=r;r=r+(Xi[w+128>>2]|0)|0;Gi[e+(u<<1)>>1]=r;r=r+(Xi[w+160>>2]|0)|0;Gi[e+(h<<1)>>1]=r;r=r+(Xi[w+192>>2]|0)|0;Gi[e+(a<<1)>>1]=r;Gi[e+(n<<1)>>1]=r+(Xi[w+224>>2]|0);l=l+1|0;if((l|0)==8)break;t=Gi[c+(l<<1)>>1]|0;w=w+4|0;e=e+2|0}jT(i|0,0,256)|0;Ue=d;return}function hx(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;o=Ue;Ue=Ue+16|0;t=o;n=l>>1;b=e+-2|0;k=Ji[b>>1]|0;w=Ji[e+(n+-1<<1)>>1]|0;h=Ji[e+((n<<1)+-1<<1)>>1]|0;u=Ji[e+((n*3|0)+-1<<1)>>1]|0;s=Ji[e+((n<<2)+-1<<1)>>1]|0;l=Ji[e+((n*5|0)+-1<<1)>>1]|0;f=Ji[e+((n*6|0)+-1<<1)>>1]|0;a=Ji[e+((n*7|0)+-1<<1)>>1]|0;r=((Ji[((r|0)==0?b:e+(~n<<1)|0)>>1]|0)+2+(k<<1)+w|0)>>>2&65535;Gi[t>>1]=r;Gi[t+2>>1]=(k+2+(w<<1)+h|0)>>>2;Gi[t+4>>1]=(w+2+(h<<1)+u|0)>>>2;Gi[t+6>>1]=(h+2+(u<<1)+s|0)>>>2;Gi[t+8>>1]=(u+2+(s<<1)+l|0)>>>2;Gi[t+10>>1]=(s+2+(l<<1)+f|0)>>>2;Gi[t+12>>1]=(l+2+(f<<1)+a|0)>>>2;Gi[t+14>>1]=(f+2+(a*3|0)|0)>>>2;a=i;f=0;l=e;while(1){b=(r&65535)+(Xi[a>>2]|0)|0;Gi[l>>1]=b;b=b+(Xi[a+4>>2]|0)|0;Gi[l+2>>1]=b;b=b+(Xi[a+8>>2]|0)|0;Gi[l+4>>1]=b;b=b+(Xi[a+12>>2]|0)|0;Gi[l+6>>1]=b;b=b+(Xi[a+16>>2]|0)|0;Gi[l+8>>1]=b;b=b+(Xi[a+20>>2]|0)|0;Gi[l+10>>1]=b;b=b+(Xi[a+24>>2]|0)|0;Gi[l+12>>1]=b;Gi[l+14>>1]=b+(Xi[a+28>>2]|0);f=f+1|0;if((f|0)==8)break;r=Gi[t+(f<<1)>>1]|0;a=a+32|0;l=l+(n<<1)|0}jT(i|0,0,256)|0;Ue=o;return}function wx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;nx(e+(Xi[i>>2]|0)|0,r,f);nx(e+(Xi[i+4>>2]|0)|0,r+64|0,f);nx(e+(Xi[i+8>>2]|0)|0,r+128|0,f);nx(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function kx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;nx(e+(Xi[i>>2]|0)|0,r,f);nx(e+(Xi[i+4>>2]|0)|0,r+64|0,f);nx(e+(Xi[i+8>>2]|0)|0,r+128|0,f);nx(e+(Xi[i+12>>2]|0)|0,r+192|0,f);nx(e+(Xi[i+32>>2]|0)|0,r+256|0,f);nx(e+(Xi[i+36>>2]|0)|0,r+320|0,f);nx(e+(Xi[i+40>>2]|0)|0,r+384|0,f);nx(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function bx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;tx(e+(Xi[i>>2]|0)|0,r,f);tx(e+(Xi[i+4>>2]|0)|0,r+64|0,f);tx(e+(Xi[i+8>>2]|0)|0,r+128|0,f);tx(e+(Xi[i+12>>2]|0)|0,r+192|0,f);return}function cx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;tx(e+(Xi[i>>2]|0)|0,r,f);tx(e+(Xi[i+4>>2]|0)|0,r+64|0,f);tx(e+(Xi[i+8>>2]|0)|0,r+128|0,f);tx(e+(Xi[i+12>>2]|0)|0,r+192|0,f);tx(e+(Xi[i+32>>2]|0)|0,r+256|0,f);tx(e+(Xi[i+36>>2]|0)|0,r+320|0,f);tx(e+(Xi[i+40>>2]|0)|0,r+384|0,f);tx(e+(Xi[i+44>>2]|0)|0,r+448|0,f);return}function dx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{nx(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function vx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0;l=0;do{tx(e+(Xi[i+(l<<2)>>2]|0)|0,r+(l<<5<<1)|0,f);l=l+1|0}while((l|0)!=16);return}function Ex(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;r=e+(0-i<<1)|0;f=Xi[r>>2]|0;r=Xi[r+4>>2]|0;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Sx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;i=r>>1;r=rN(Ji[e+-2>>1]|0|0,0,65537,65537)|0;f=e;Xi[f>>2]=r;Xi[f+4>>2]=Ie;f=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(i<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;r=i<<1;f=rN(Ji[e+(r+-1<<1)>>1]|0|0,0,65537,65537)|0;r=e+(r<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=Ie;i=i*3|0;r=rN(Ji[e+(i+-1<<1)>>1]|0|0,0,65537,65537)|0;i=e+(i<<1)|0;Xi[i>>2]=r;Xi[i+4>>2]=Ie;return}function _x(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=(Ji[e+(0-a<<1)>>1]|0)+4+(Ji[e+(1-a<<1)>>1]|0)+(Ji[e+(2-a<<1)>>1]|0)+(Ji[e+(3-a<<1)>>1]|0)+(Ji[e+-2>>1]|0)+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)>>3;f=rN(f|0,((f|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function mx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0;n=r>>1;s=Ji[e+(1-n<<1)>>1]|0;l=Ji[e+(2-n<<1)>>1]|0;o=Ji[e+(3-n<<1)>>1]|0;t=Ji[i>>1]|0;a=Ji[i+2>>1]|0;f=Ji[i+4>>1]|0;r=Ji[i+6>>1]|0;Gi[e>>1]=((Ji[e+(0-n<<1)>>1]|0)+2+l+(s<<1)|0)>>>2;i=(s+2+o+(l<<1)|0)>>>2&65535;Gi[e+(n<<1)>>1]=i;Gi[e+2>>1]=i;i=(l+2+t+(o<<1)|0)>>>2&65535;l=n<<1;Gi[e+(l<<1)>>1]=i;Gi[e+(n+1<<1)>>1]=i;Gi[e+4>>1]=i;o=(o+2+a+(t<<1)|0)>>>2&65535;i=n*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+((l|1)<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+f+(a<<1)|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;Gi[e+(n+3<<1)>>1]=t;a=(a+2+r+(f<<1)|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(i+3<<1)>>1]=(f+2+(r*3|0)|0)>>>2;return}function px(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0;a=r>>1;u=Ji[e+(~a<<1)>>1]|0;l=Ji[e+(0-a<<1)>>1]|0;f=Ji[e+(1-a<<1)>>1]|0;r=Ji[e+(2-a<<1)>>1]|0;i=Ji[e+(3-a<<1)>>1]|0;o=Ji[e+-2>>1]|0;h=Ji[e+(a+-1<<1)>>1]|0;t=a<<1;n=Ji[e+(t+-1<<1)>>1]|0;s=a*3|0;Gi[e+(s<<1)>>1]=(h+2+(n<<1)+(Ji[e+(s+-1<<1)>>1]|0)|0)>>>2;n=(o+2+(h<<1)+n|0)>>>2&65535;Gi[e+(s+1<<1)>>1]=n;Gi[e+(t<<1)>>1]=n;n=u+2|0;h=(n+(o<<1)+h|0)>>>2&65535;Gi[e+(s+2<<1)>>1]=h;Gi[e+((t|1)<<1)>>1]=h;Gi[e+(a<<1)>>1]=h;o=((u<<1)+2+l+o|0)>>>2&65535;Gi[e+(s+3<<1)>>1]=o;Gi[e+(t+2<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;Gi[e>>1]=o;n=(n+(l<<1)+f|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=n;Gi[e+(a+2<<1)>>1]=n;Gi[e+2>>1]=n;l=(l+2+(f<<1)+r|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=l;Gi[e+4>>1]=l;Gi[e+6>>1]=(f+2+(r<<1)+i|0)>>>2;return}function Fx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;n=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;o=Ji[e+(3-t<<1)>>1]|0;l=Ji[e+-2>>1]|0;f=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;r=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;w=(n+1+h|0)>>>1&65535;Gi[e+((a|1)<<1)>>1]=w;Gi[e>>1]=w;w=(h+1+u|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=w;Gi[e+2>>1]=w;w=(u+1+s|0)>>>1&65535;Gi[e+(a+3<<1)>>1]=w;Gi[e+4>>1]=w;Gi[e+6>>1]=(s+1+o|0)>>>1;w=((n<<1)+2+h+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=w;Gi[e+(t<<1)>>1]=w;n=n+2|0;w=(n+(h<<1)+u|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=w;Gi[e+(t+1<<1)>>1]=w;h=(h+2+(u<<1)+s|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=h;Gi[e+(t+2<<1)>>1]=h;Gi[e+(t+3<<1)>>1]=(u+2+(s<<1)+o|0)>>>2;Gi[e+(a<<1)>>1]=(n+(l<<1)+f|0)>>>2;Gi[e+(i<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function yx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0;t=r>>1;o=Ji[e+(~t<<1)>>1]|0;h=Ji[e+(0-t<<1)>>1]|0;u=Ji[e+(1-t<<1)>>1]|0;s=Ji[e+(2-t<<1)>>1]|0;n=Ji[e+-2>>1]|0;l=Ji[e+(t+-1<<1)>>1]|0;a=t<<1;f=Ji[e+(a+-1<<1)>>1]|0;i=t*3|0;r=Ji[e+(i+-1<<1)>>1]|0;w=(o+1+n|0)>>>1&65535;Gi[e+(t+2<<1)>>1]=w;Gi[e>>1]=w;w=((o<<1)+2+h+n|0)>>>2&65535;Gi[e+(t+3<<1)>>1]=w;Gi[e+2>>1]=w;o=o+2|0;Gi[e+4>>1]=(o+(h<<1)+u|0)>>>2;Gi[e+6>>1]=(h+2+(u<<1)+s|0)>>>2;s=(n+1+l|0)>>>1&65535;Gi[e+(a+2<<1)>>1]=s;Gi[e+(t<<1)>>1]=s;o=(o+(n<<1)+l|0)>>>2&65535;Gi[e+(a+3<<1)>>1]=o;Gi[e+(t+1<<1)>>1]=o;t=(l+1+f|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=t;Gi[e+(a<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+3<<1)>>1]=n;Gi[e+((a|1)<<1)>>1]=n;Gi[e+(i<<1)>>1]=(f+1+r|0)>>>1;Gi[e+(i+1<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function Ox(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0,s=0,u=0;a=r>>1;s=Ji[e+(0-a<<1)>>1]|0;o=Ji[e+(1-a<<1)>>1]|0;t=Ji[e+(2-a<<1)>>1]|0;n=Ji[e+(3-a<<1)>>1]|0;l=Ji[i>>1]|0;f=Ji[i+2>>1]|0;r=Ji[i+4>>1]|0;Gi[e>>1]=(s+1+o|0)>>>1;u=(o+1+t|0)>>>1&65535;i=a<<1;Gi[e+(i<<1)>>1]=u;Gi[e+2>>1]=u;u=(t+1+n|0)>>>1&65535;Gi[e+((i|1)<<1)>>1]=u;Gi[e+4>>1]=u;u=(n+1+l|0)>>>1&65535;Gi[e+(i+2<<1)>>1]=u;Gi[e+6>>1]=u;Gi[e+(i+3<<1)>>1]=(l+1+f|0)>>>1;Gi[e+(a<<1)>>1]=(s+2+(o<<1)+t|0)>>>2;o=(o+2+(t<<1)+n|0)>>>2&65535;i=a*3|0;Gi[e+(i<<1)>>1]=o;Gi[e+(a+1<<1)>>1]=o;t=(t+2+(n<<1)+l|0)>>>2&65535;Gi[e+(i+1<<1)>>1]=t;Gi[e+(a+2<<1)>>1]=t;n=(n+2+(l<<1)+f|0)>>>2&65535;Gi[e+(i+2<<1)>>1]=n;Gi[e+(a+3<<1)>>1]=n;Gi[e+(i+3<<1)>>1]=(l+2+(f<<1)+r|0)>>>2;return}function Ax(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0,t=0,o=0;l=r>>1;o=Ji[e+-2>>1]|0;t=Ji[e+(l+-1<<1)>>1]|0;i=l<<1;n=Ji[e+(i+-1<<1)>>1]|0;f=l*3|0;r=Gi[e+(f+-1<<1)>>1]|0;a=r&65535;Gi[e>>1]=(o+1+t|0)>>>1;Gi[e+2>>1]=(o+2+(t<<1)+n|0)>>>2;o=(t+1+n|0)>>>1&65535;Gi[e+(l<<1)>>1]=o;Gi[e+4>>1]=o;t=(t+2+(n<<1)+a|0)>>>2&65535;Gi[e+(l+1<<1)>>1]=t;Gi[e+6>>1]=t;t=(n+1+a|0)>>>1&65535;Gi[e+(i<<1)>>1]=t;Gi[e+(l+2<<1)>>1]=t;a=(n+2+a+(a<<1)|0)>>>2&65535;Gi[e+((i|1)<<1)>>1]=a;Gi[e+(l+3<<1)>>1]=a;Gi[e+(f+3<<1)>>1]=r;Gi[e+(f+2<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+(f<<1)>>1]=r;Gi[e+(f+1<<1)>>1]=r;Gi[e+(i+3<<1)>>1]=r;return}function gx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,a=0,n=0;a=r>>1;l=a<<1;i=a*3|0;f=rN(((Ji[e+-2>>1]|0)+2+(Ji[e+(a+-1<<1)>>1]|0)+(Ji[e+(l+-1<<1)>>1]|0)+(Ji[e+(i+-1<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;n=e;Xi[n>>2]=f;Xi[n+4>>2]=r;a=e+(a<<1)|0;Xi[a>>2]=f;Xi[a+4>>2]=r;l=e+(l<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Mx(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0;i=r>>1;f=rN(((Ji[e+(0-i<<1)>>1]|0)+2+(Ji[e+(1-i<<1)>>1]|0)+(Ji[e+(2-i<<1)>>1]|0)+(Ji[e+(3-i<<1)>>1]|0)|0)>>>2|0,0,65537,65537)|0;r=Ie;l=e;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;l=e+(i<<1<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=r;i=e+(i*3<<1)|0;Xi[i>>2]=f;Xi[i+4>>2]=r;return}function Rx(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=134154239;Xi[r+4>>2]=134154239;r=e+(i<<1)|0;Xi[r>>2]=134154239;Xi[r+4>>2]=134154239;r=e+(i<<1<<1)|0;Xi[r>>2]=134154239;Xi[r+4>>2]=134154239;i=e+(i*3<<1)|0;Xi[i>>2]=134154239;Xi[i+4>>2]=134154239;return}function Tx(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=134285313;Xi[r+4>>2]=134285313;r=e+(i<<1)|0;Xi[r>>2]=134285313;Xi[r+4>>2]=134285313;r=e+(i<<1<<1)|0;Xi[r>>2]=134285313;Xi[r+4>>2]=134285313;i=e+(i*3<<1)|0;Xi[i>>2]=134285313;Xi[i+4>>2]=134285313;return}function Nx(e,i,r){e=e|0;i=i|0;r=r|0;i=r>>1;r=e;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=e+(i<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;r=e+(i<<1<<1)|0;Xi[r>>2]=134219776;Xi[r+4>>2]=134219776;i=e+(i*3<<1)|0;Xi[i>>2]=134219776;Xi[i+4>>2]=134219776;return}function Dx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0;k=f>>1;a=0-k|0;w=Ji[e+(a<<1)>>1]|0;l=Ji[e+(1-k<<1)>>1]|0;n=Ji[e+(2-k<<1)>>1]|0;t=Ji[e+(3-k<<1)>>1]|0;o=Ji[e+(4-k<<1)>>1]|0;s=Ji[e+(5-k<<1)>>1]|0;u=Ji[e+(6-k<<1)>>1]|0;f=Gi[e+(7-k<<1)>>1]|0;h=f&65535;if(r)f=Gi[e+(8-k<<1)>>1]|0;Gi[e>>1]=((Ji[e+(((i|0)==0?a:~k)<<1)>>1]|0)+2+(w<<1)+l|0)>>>2;Gi[e+2>>1]=(w+2+(l<<1)+n|0)>>>2;Gi[e+4>>1]=(l+2+(n<<1)+t|0)>>>2;Gi[e+6>>1]=(n+2+(t<<1)+o|0)>>>2;a=e+8|0;Gi[a>>1]=(t+2+(o<<1)+s|0)>>>2;Gi[e+10>>1]=(o+2+(s<<1)+u|0)>>>2;Gi[e+12>>1]=(s+2+(u<<1)+h|0)>>>2;Gi[e+14>>1]=((f&65535)+2+(h<<1)+u|0)>>>2;f=e;n=Xi[f>>2]|0;f=Xi[f+4>>2]|0;l=Xi[a>>2]|0;a=Xi[a+4>>2]|0;t=1;do{i=Zi(t,k)|0;r=e+(i<<1)|0;Xi[r>>2]=n;Xi[r+4>>2]=f;i=e+(i+4<<1)|0;Xi[i>>2]=l;Xi[i+4>>2]=a;t=t+1|0}while((t|0)!=8);return}function Cx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0;k=f>>1;E=e+-2|0;d=Ji[E>>1]|0;b=Ji[e+(k+-1<<1)>>1]|0;c=k<<1;w=Ji[e+(c+-1<<1)>>1]|0;s=k*3|0;u=Ji[e+(s+-1<<1)>>1]|0;h=k<<2;o=Ji[e+(h+-1<<1)>>1]|0;a=k*5|0;n=Ji[e+(a+-1<<1)>>1]|0;t=k*6|0;l=Ji[e+(t+-1<<1)>>1]|0;r=k*7|0;f=Ji[e+(r+-1<<1)>>1]|0;E=rN(((Ji[((i|0)==0?E:e+(~k<<1)|0)>>1]|0)+2+(d<<1)+b|0)>>>2|0,0,65537,65537)|0;v=Ie;i=e;Xi[i>>2]=E;Xi[i+4>>2]=v;i=e+8|0;Xi[i>>2]=E;Xi[i+4>>2]=v;d=rN((d+2+(b<<1)+w|0)>>>2|0,0,65537,65537)|0;i=Ie;v=e+(k<<1)|0;Xi[v>>2]=d;Xi[v+4>>2]=i;k=e+(k+4<<1)|0;Xi[k>>2]=d;Xi[k+4>>2]=i;b=rN((b+2+(w<<1)+u|0)>>>2|0,0,65537,65537)|0;k=Ie;i=e+(c<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;i=e+(c+4<<1)|0;Xi[i>>2]=b;Xi[i+4>>2]=k;w=rN((w+2+(u<<1)+o|0)>>>2|0,0,65537,65537)|0;i=Ie;k=e+(s<<1)|0;Xi[k>>2]=w;Xi[k+4>>2]=i;s=e+(s+4<<1)|0;Xi[s>>2]=w;Xi[s+4>>2]=i;u=rN((u+2+(o<<1)+n|0)>>>2|0,0,65537,65537)|0;s=Ie;i=e+(h<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;i=e+(h+4<<1)|0;Xi[i>>2]=u;Xi[i+4>>2]=s;o=rN((o+2+(n<<1)+l|0)>>>2|0,0,65537,65537)|0;i=Ie;s=e+(a<<1)|0;Xi[s>>2]=o;Xi[s+4>>2]=i;a=e+(a+4<<1)|0;Xi[a>>2]=o;Xi[a+4>>2]=i;n=rN((n+2+(l<<1)+f|0)>>>2|0,0,65537,65537)|0;a=Ie;i=e+(t<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;i=e+(t+4<<1)|0;Xi[i>>2]=n;Xi[i+4>>2]=a;f=rN((l+2+(f*3|0)|0)>>>2|0,0,65537,65537)|0;i=Ie;l=e+(r<<1)|0;Xi[l>>2]=f;Xi[l+4>>2]=i;r=e+(r+4<<1)|0;Xi[r>>2]=f;Xi[r+4>>2]=i;return}function Px(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0;F=f>>1;i=(i|0)!=0;u=~F;k=e+-2|0;v=Ji[k>>1]|0;n=Ji[e+(F+-1<<1)>>1]|0;h=Ji[e+((F<<1)+-1<<1)>>1]|0;w=Ji[e+((F*3|0)+-1<<1)>>1]|0;b=Ji[e+((F<<2)+-1<<1)>>1]|0;c=Ji[e+((F*5|0)+-1<<1)>>1]|0;d=Ji[e+((F*6|0)+-1<<1)>>1]|0;E=Ji[e+((F*7|0)+-1<<1)>>1]|0;S=0-F|0;_=Ji[e+(S<<1)>>1]|0;m=Ji[e+(1-F<<1)>>1]|0;p=Ji[e+(2-F<<1)>>1]|0;l=Ji[e+(3-F<<1)>>1]|0;a=Ji[e+(4-F<<1)>>1]|0;t=Ji[e+(5-F<<1)>>1]|0;o=Ji[e+(6-F<<1)>>1]|0;f=Gi[e+(7-F<<1)>>1]|0;s=f&65535;if(r)f=Gi[e+(8-F<<1)>>1]|0;p=(((Ji[(i?e+(u<<1)|0:k)>>1]|0)+2+(v<<1)+n|0)>>>2)+8+((v+2+(n<<1)+h|0)>>>2)+((n+2+(h<<1)+w|0)>>>2)+((h+2+(w<<1)+b|0)>>>2)+((w+2+(b<<1)+c|0)>>>2)+((b+2+(c<<1)+d|0)>>>2)+((c+2+(d<<1)+E|0)>>>2)+((d+2+(E*3|0)|0)>>>2)+(((Ji[e+((i?u:S)<<1)>>1]|0)+2+(_<<1)+m|0)>>>2)+((_+2+(m<<1)+p|0)>>>2)+((m+2+(p<<1)+l|0)>>>2)+((p+2+(l<<1)+a|0)>>>2)+((l+2+(a<<1)+t|0)>>>2)+((a+2+(t<<1)+o|0)>>>2)+((t+2+(o<<1)+s|0)>>>2)+(((f&65535)+2+(s<<1)+o|0)>>>2)>>4;p=rN(p|0,((p|0)<0)<<31>>31|0,65537,65537)|0;r=Ie;m=e;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+8|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=e+(F+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<1;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*3|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F<<2;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*5|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;m=F*6|0;_=e+(m<<1)|0;Xi[_>>2]=p;Xi[_+4>>2]=r;m=e+(m+4<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;F=F*7|0;m=e+(F<<1)|0;Xi[m>>2]=p;Xi[m+4>>2]=r;e=e+(F+4<<1)|0;Xi[e>>2]=p;Xi[e+4>>2]=r;return}function Lx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0;w=f>>1;b=0-w|0;m=Ji[e+(b<<1)>>1]|0;k=Ji[e+(1-w<<1)>>1]|0;v=Ji[e+(2-w<<1)>>1]|0;c=(m+2+(k<<1)+v|0)>>>2;E=Ji[e+(3-w<<1)>>1]|0;d=(k+2+(v<<1)+E|0)>>>2;_=Ji[e+(4-w<<1)>>1]|0;v=(v+2+(E<<1)+_|0)>>>2;p=Ji[e+(5-w<<1)>>1]|0;E=(E+2+(_<<1)+p|0)>>>2;S=Ji[e+(6-w<<1)>>1]|0;_=(_+2+(p<<1)+S|0)>>>2;f=Gi[e+(7-w<<1)>>1]|0;h=f&65535;p=(p+2+(S<<1)+h|0)>>>2;if(!r){r=(f&65535)+2+(h<<1)|0;l=h;a=h;n=h;t=h;o=h;s=h;u=h;f=h}else{y=Ji[e+(8-w<<1)>>1]|0;F=Ji[e+(9-w<<1)>>1]|0;f=Ji[e+(10-w<<1)>>1]|0;n=Ji[e+(11-w<<1)>>1]|0;t=Ji[e+(12-w<<1)>>1]|0;o=Ji[e+(13-w<<1)>>1]|0;u=Ji[e+(14-w<<1)>>1]|0;s=Ji[e+(15-w<<1)>>1]|0;r=(Ji[e+(8-w<<1)>>1]|0)+2+(h<<1)|0;l=(F+2+(f<<1)+n|0)>>>2;a=(f+2+(n<<1)+t|0)>>>2;n=(n+2+(t<<1)+o|0)>>>2;t=(t+2+(o<<1)+u|0)>>>2;o=(o+2+(u<<1)+s|0)>>>2;s=(u+2+(s*3|0)|0)>>>2;u=(h+2+(y<<1)+F|0)>>>2;f=(y+2+(F<<1)+f|0)>>>2}F=(r+S|0)>>>2;Gi[e>>1]=((((Ji[e+(((i|0)==0?b:~w)<<1)>>1]|0)+2+(m<<1)+k|0)>>>2)+2+(c<<1)+d|0)>>>2;y=(c+2+(d<<1)+v|0)>>>2&65535;Gi[e+2>>1]=y;Gi[e+(w<<1)>>1]=y;y=(d+2+(v<<1)+E|0)>>>2&65535;Gi[e+4>>1]=y;Gi[e+(w+1<<1)>>1]=y;d=w<<1;Gi[e+(d<<1)>>1]=y;y=(v+2+(E<<1)+_|0)>>>2&65535;Gi[e+6>>1]=y;Gi[e+(w+2<<1)>>1]=y;Gi[e+((d|1)<<1)>>1]=y;v=w*3|0;Gi[e+(v<<1)>>1]=y;y=(E+2+(_<<1)+p|0)>>>2&65535;Gi[e+8>>1]=y;Gi[e+(w+3<<1)>>1]=y;Gi[e+(d+2<<1)>>1]=y;Gi[e+(v+1<<1)>>1]=y;S=w<<2;Gi[e+(S<<1)>>1]=y;y=(_+2+(p<<1)+F|0)>>>2&65535;Gi[e+10>>1]=y;Gi[e+(w+4<<1)>>1]=y;Gi[e+(d+3<<1)>>1]=y;Gi[e+(v+2<<1)>>1]=y;Gi[e+((S|1)<<1)>>1]=y;m=w*5|0;Gi[e+(m<<1)>>1]=y;y=(p+2+(F<<1)+u|0)>>>2&65535;Gi[e+12>>1]=y;Gi[e+(w+5<<1)>>1]=y;Gi[e+(d+4<<1)>>1]=y;Gi[e+(v+3<<1)>>1]=y;Gi[e+((S|2)<<1)>>1]=y;Gi[e+(m+1<<1)>>1]=y;i=w*6|0;Gi[e+(i<<1)>>1]=y;F=(F+2+(u<<1)+f|0)>>>2&65535;Gi[e+14>>1]=F;Gi[e+(w+6<<1)>>1]=F;Gi[e+(d+5<<1)>>1]=F;Gi[e+(v+4<<1)>>1]=F;Gi[e+((S|3)<<1)>>1]=F;Gi[e+(m+2<<1)>>1]=F;Gi[e+((i|1)<<1)>>1]=F;y=w*7|0;Gi[e+(y<<1)>>1]=F;F=(u+2+(f<<1)+l|0)>>>2&65535;Gi[e+(w+7<<1)>>1]=F;Gi[e+(d+6<<1)>>1]=F;Gi[e+(v+5<<1)>>1]=F;Gi[e+(S+4<<1)>>1]=F;Gi[e+(m+3<<1)>>1]=F;Gi[e+(i+2<<1)>>1]=F;Gi[e+(y+1<<1)>>1]=F;F=(f+2+(l<<1)+a|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=F;Gi[e+(v+6<<1)>>1]=F;Gi[e+(S+5<<1)>>1]=F;Gi[e+(m+4<<1)>>1]=F;Gi[e+(i+3<<1)>>1]=F;Gi[e+(y+2<<1)>>1]=F;F=(l+2+(a<<1)+n|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=F;Gi[e+(S+6<<1)>>1]=F;Gi[e+(m+5<<1)>>1]=F;Gi[e+(i+4<<1)>>1]=F;Gi[e+(y+3<<1)>>1]=F;F=(a+2+(n<<1)+t|0)>>>2&65535;Gi[e+(S+7<<1)>>1]=F;Gi[e+(m+6<<1)>>1]=F;Gi[e+(i+5<<1)>>1]=F;Gi[e+(y+4<<1)>>1]=F;F=(n+2+(t<<1)+o|0)>>>2&65535;Gi[e+(m+7<<1)>>1]=F;Gi[e+(i+6<<1)>>1]=F;Gi[e+(y+5<<1)>>1]=F;F=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=F;Gi[e+(y+6<<1)>>1]=F;Gi[e+(y+7<<1)>>1]=(o+2+(s*3|0)|0)>>>2;return}function Ix(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0,g=0,M=0,R=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;M=e+(n<<1)|0;S=e+-2|0;R=Ji[S>>1]|0;m=Ji[e+(c+-1<<1)>>1]|0;S=((Ji[(i?M:S)>>1]|0)+2+(R<<1)+m|0)>>>2;n=c<<1;p=Ji[e+(n+-1<<1)>>1]|0;R=R+2|0;r=(R+(m<<1)+p|0)>>>2;i=c*3|0;F=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(p<<1)+F|0)>>>2;d=c<<2;y=Ji[e+(d+-1<<1)>>1]|0;p=(p+2+(F<<1)+y|0)>>>2;v=c*5|0;O=Ji[e+(v+-1<<1)>>1]|0;F=(F+2+(y<<1)+O|0)>>>2;E=c*6|0;g=Ji[e+(E+-1<<1)>>1]|0;y=(y+2+(O<<1)+g|0)>>>2;_=c*7|0;A=Ji[e+(_+-1<<1)>>1]|0;O=(O+2+(g<<1)+A|0)>>>2;k=(R+((Ji[M>>1]|0)<<1)+k|0)>>>2;Gi[e+(_<<1)>>1]=(y+2+((g+2+(A*3|0)|0)>>>2)+(O<<1)|0)>>>2;O=(F+2+(y<<1)+O|0)>>>2&65535;Gi[e+(_+1<<1)>>1]=O;Gi[e+(E<<1)>>1]=O;y=(p+2+(F<<1)+y|0)>>>2&65535;Gi[e+(_+2<<1)>>1]=y;Gi[e+((E|1)<<1)>>1]=y;Gi[e+(v<<1)>>1]=y;F=(m+2+(p<<1)+F|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=F;Gi[e+(E+2<<1)>>1]=F;Gi[e+(v+1<<1)>>1]=F;Gi[e+(d<<1)>>1]=F;p=(r+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+3<<1)>>1]=p;Gi[e+(v+2<<1)>>1]=p;Gi[e+((d|1)<<1)>>1]=p;Gi[e+(i<<1)>>1]=p;m=(S+2+(r<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(v+3<<1)>>1]=m;Gi[e+((d|2)<<1)>>1]=m;Gi[e+(i+1<<1)>>1]=m;Gi[e+(n<<1)>>1]=m;r=((S<<1)+2+r+k|0)>>>2&65535;Gi[e+(_+6<<1)>>1]=r;Gi[e+(E+5<<1)>>1]=r;Gi[e+(v+4<<1)>>1]=r;Gi[e+((d|3)<<1)>>1]=r;Gi[e+(i+2<<1)>>1]=r;Gi[e+((n|1)<<1)>>1]=r;Gi[e+(c<<1)>>1]=r;r=l+2|0;S=(r+S+(k<<1)|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+6<<1)>>1]=S;Gi[e+(v+5<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+(i+3<<1)>>1]=S;Gi[e+(n+2<<1)>>1]=S;Gi[e+(c+1<<1)>>1]=S;Gi[e>>1]=S;k=((l<<1)+2+a+k|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=k;Gi[e+(v+6<<1)>>1]=k;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(n+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;Gi[e+2>>1]=k;r=(r+(a<<1)+t|0)>>>2&65535;Gi[e+(v+7<<1)>>1]=r;Gi[e+(d+6<<1)>>1]=r;Gi[e+(i+5<<1)>>1]=r;Gi[e+(n+4<<1)>>1]=r;Gi[e+(c+3<<1)>>1]=r;Gi[e+4>>1]=r;r=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=r;Gi[e+(i+6<<1)>>1]=r;Gi[e+(n+5<<1)>>1]=r;Gi[e+(c+4<<1)>>1]=r;Gi[e+6>>1]=r;r=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=r;Gi[e+(n+6<<1)>>1]=r;Gi[e+(c+5<<1)>>1]=r;Gi[e+8>>1]=r;r=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=r;Gi[e+(c+6<<1)>>1]=r;Gi[e+10>>1]=r;r=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=r;Gi[e+12>>1]=r;Gi[e+14>>1]=(h+2+(b<<1)+(((f&65535)+2+(w<<1)+u|0)>>>2)|0)>>>2;return}function Hx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;c=f>>1;i=(i|0)!=0;l=0-c|0;n=~c;k=Ji[e+(l<<1)>>1]|0;t=Ji[e+(1-c<<1)>>1]|0;l=((Ji[e+((i?n:l)<<1)>>1]|0)+2+(k<<1)+t|0)>>>2;o=Ji[e+(2-c<<1)>>1]|0;a=(k+2+(t<<1)+o|0)>>>2;s=Ji[e+(3-c<<1)>>1]|0;t=(t+2+(o<<1)+s|0)>>>2;h=Ji[e+(4-c<<1)>>1]|0;o=(o+2+(s<<1)+h|0)>>>2;b=Ji[e+(5-c<<1)>>1]|0;s=(s+2+(h<<1)+b|0)>>>2;u=Ji[e+(6-c<<1)>>1]|0;h=(h+2+(b<<1)+u|0)>>>2;f=Gi[e+(7-c<<1)>>1]|0;w=f&65535;b=(b+2+(u<<1)+w|0)>>>2;if(r)f=Gi[e+(8-c<<1)>>1]|0;r=((f&65535)+2+(w<<1)+u|0)>>>2;E=e+(n<<1)|0;v=e+-2|0;O=Ji[v>>1]|0;S=Ji[e+(c+-1<<1)>>1]|0;v=((Ji[(i?E:v)>>1]|0)+2+(O<<1)+S|0)>>>2;w=c<<1;p=Ji[e+(w+-1<<1)>>1]|0;O=O+2|0;_=(O+(S<<1)+p|0)>>>2;u=c*3|0;m=Ji[e+(u+-1<<1)>>1]|0;S=(S+2+(p<<1)+m|0)>>>2;n=c<<2;y=Ji[e+(n+-1<<1)>>1]|0;p=(p+2+(m<<1)+y|0)>>>2;i=c*5|0;A=Ji[e+(i+-1<<1)>>1]|0;m=(m+2+(y<<1)+A|0)>>>2;f=c*6|0;F=Ji[e+(f+-1<<1)>>1]|0;y=(y+2+(A<<1)+F|0)>>>2;d=c*7|0;F=(A+2+(F<<1)+(Ji[e+(d+-1<<1)>>1]|0)|0)>>>2;E=(O+((Ji[E>>1]|0)<<1)+k|0)>>>2;Gi[e+(f<<1)>>1]=(p+2+(m<<1)+y|0)>>>2;Gi[e+(d<<1)>>1]=(m+2+(y<<1)+F|0)>>>2;k=(_+2+(S<<1)+p|0)>>>2&65535;Gi[e+((f|1)<<1)>>1]=k;Gi[e+(n<<1)>>1]=k;k=(S+2+(p<<1)+m|0)>>>2&65535;Gi[e+(d+1<<1)>>1]=k;Gi[e+(i<<1)>>1]=k;k=((v<<1)+2+_+E|0)>>>2&65535;Gi[e+(f+2<<1)>>1]=k;Gi[e+((n|1)<<1)>>1]=k;Gi[e+(w<<1)>>1]=k;k=(v+2+(_<<1)+S|0)>>>2&65535;Gi[e+(d+2<<1)>>1]=k;Gi[e+(i+1<<1)>>1]=k;Gi[e+(u<<1)>>1]=k;k=l+2|0;v=(k+v+(E<<1)|0)>>>2&65535;Gi[e+(d+3<<1)>>1]=v;Gi[e+(i+2<<1)>>1]=v;Gi[e+(u+1<<1)>>1]=v;Gi[e+(c<<1)>>1]=v;v=l+1|0;S=(v+E|0)>>>1&65535;Gi[e+(f+3<<1)>>1]=S;Gi[e+((n|2)<<1)>>1]=S;Gi[e+((w|1)<<1)>>1]=S;Gi[e>>1]=S;l=((l<<1)+2+a+E|0)>>>2&65535;Gi[e+(d+4<<1)>>1]=l;Gi[e+(i+3<<1)>>1]=l;Gi[e+(u+2<<1)>>1]=l;Gi[e+(c+1<<1)>>1]=l;l=(v+a|0)>>>1&65535;Gi[e+(f+4<<1)>>1]=l;Gi[e+((n|3)<<1)>>1]=l;Gi[e+(w+2<<1)>>1]=l;Gi[e+2>>1]=l;k=(k+(a<<1)+t|0)>>>2&65535;Gi[e+(d+5<<1)>>1]=k;Gi[e+(i+4<<1)>>1]=k;Gi[e+(u+3<<1)>>1]=k;Gi[e+(c+2<<1)>>1]=k;k=(a+1+t|0)>>>1&65535;Gi[e+(f+5<<1)>>1]=k;Gi[e+(n+4<<1)>>1]=k;Gi[e+(w+3<<1)>>1]=k;Gi[e+4>>1]=k;k=(a+2+(t<<1)+o|0)>>>2&65535;Gi[e+(d+6<<1)>>1]=k;Gi[e+(i+5<<1)>>1]=k;Gi[e+(u+4<<1)>>1]=k;Gi[e+(c+3<<1)>>1]=k;k=(t+1+o|0)>>>1&65535;Gi[e+(f+6<<1)>>1]=k;Gi[e+(n+5<<1)>>1]=k;Gi[e+(w+4<<1)>>1]=k;Gi[e+6>>1]=k;k=(t+2+(o<<1)+s|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=k;Gi[e+(i+6<<1)>>1]=k;Gi[e+(u+5<<1)>>1]=k;Gi[e+(c+4<<1)>>1]=k;k=(o+1+s|0)>>>1&65535;Gi[e+(f+7<<1)>>1]=k;Gi[e+(n+6<<1)>>1]=k;Gi[e+(w+5<<1)>>1]=k;Gi[e+8>>1]=k;k=(o+2+(s<<1)+h|0)>>>2&65535;Gi[e+(i+7<<1)>>1]=k;Gi[e+(u+6<<1)>>1]=k;Gi[e+(c+5<<1)>>1]=k;k=(s+1+h|0)>>>1&65535;Gi[e+(n+7<<1)>>1]=k;Gi[e+(w+6<<1)>>1]=k;Gi[e+10>>1]=k;k=(s+2+(h<<1)+b|0)>>>2&65535;Gi[e+(u+7<<1)>>1]=k;Gi[e+(c+6<<1)>>1]=k;k=(h+1+b|0)>>>1&65535;Gi[e+(w+7<<1)>>1]=k;Gi[e+12>>1]=k;Gi[e+(c+7<<1)>>1]=(h+2+(b<<1)+r|0)>>>2;Gi[e+14>>1]=(b+1+r|0)>>>1;return}function Bx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var l=0,a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0,c=0,d=0,v=0,E=0,S=0,_=0,m=0,p=0,F=0,y=0,O=0,A=0;n=f>>1;s=(i|0)!=0;h=0-n|0;u=~n;O=Ji[e+(h<<1)>>1]|0;a=Ji[e+(1-n<<1)>>1]|0;h=((Ji[e+((s?u:h)<<1)>>1]|0)+2+(O<<1)+a|0)>>>2;l=Ji[e+(2-n<<1)>>1]|0;O=O+2|0;t=(O+(a<<1)+l|0)>>>2;f=Ji[e+(3-n<<1)>>1]|0;a=(a+2+(l<<1)+f|0)>>>2;i=Ji[e+(4-n<<1)>>1]|0;l=(l+2+(f<<1)+i|0)>>>2;w=Ji[e+(5-n<<1)>>1]|0;f=(f+2+(i<<1)+w|0)>>>2;r=Ji[e+(6-n<<1)>>1]|0;i=(i+2+(w<<1)+r|0)>>>2;r=(w+2+(r<<1)+(Ji[e+(7-n<<1)>>1]|0)|0)>>>2;u=e+(u<<1)|0;w=e+-2|0;y=Ji[w>>1]|0;o=Ji[e+(n+-1<<1)>>1]|0;w=((Ji[(s?u:w)>>1]|0)+2+(y<<1)+o|0)>>>2;s=n<<1;v=Ji[e+(s+-1<<1)>>1]|0;b=(y+2+(o<<1)+v|0)>>>2;k=n*3|0;S=Ji[e+(k+-1<<1)>>1]|0;o=(o+2+(v<<1)+S|0)>>>2;c=n<<2;m=Ji[e+(c+-1<<1)>>1]|0;v=(v+2+(S<<1)+m|0)>>>2;d=n*5|0;p=Ji[e+(d+-1<<1)>>1]|0;S=(S+2+(m<<1)+p|0)>>>2;E=n*6|0;A=Ji[e+(E+-1<<1)>>1]|0;m=(m+2+(p<<1)+A|0)>>>2;_=n*7|0;F=Ji[e+(_+-1<<1)>>1]|0;p=(p+2+(A<<1)+F|0)>>>2;F=(A+2+(F*3|0)|0)>>>2;u=(O+y+((Ji[u>>1]|0)<<1)|0)>>>2;Gi[e+(_<<1)>>1]=(F+1+p|0)>>>1;Gi[e+(_+1<<1)>>1]=(m+2+F+(p<<1)|0)>>>2;F=(m+1+p|0)>>>1&65535;Gi[e+(_+2<<1)>>1]=F;Gi[e+(E<<1)>>1]=F;p=(S+2+(m<<1)+p|0)>>>2&65535;Gi[e+(_+3<<1)>>1]=p;Gi[e+((E|1)<<1)>>1]=p;p=(S+1+m|0)>>>1&65535;Gi[e+(_+4<<1)>>1]=p;Gi[e+(E+2<<1)>>1]=p;Gi[e+(d<<1)>>1]=p;m=(v+2+(S<<1)+m|0)>>>2&65535;Gi[e+(_+5<<1)>>1]=m;Gi[e+(E+3<<1)>>1]=m;Gi[e+(d+1<<1)>>1]=m;m=(v+1+S|0)>>>1&65535;Gi[e+(_+6<<1)>>1]=m;Gi[e+(E+4<<1)>>1]=m;Gi[e+(d+2<<1)>>1]=m;Gi[e+(c<<1)>>1]=m;S=(o+2+(v<<1)+S|0)>>>2&65535;Gi[e+(_+7<<1)>>1]=S;Gi[e+(E+5<<1)>>1]=S;Gi[e+(d+3<<1)>>1]=S;Gi[e+((c|1)<<1)>>1]=S;S=(o+1+v|0)>>>1&65535;Gi[e+(E+6<<1)>>1]=S;Gi[e+(d+4<<1)>>1]=S;Gi[e+((c|2)<<1)>>1]=S;Gi[e+(k<<1)>>1]=S;v=(b+2+(o<<1)+v|0)>>>2&65535;Gi[e+(E+7<<1)>>1]=v;Gi[e+(d+5<<1)>>1]=v;Gi[e+((c|3)<<1)>>1]=v;Gi[e+(k+1<<1)>>1]=v;v=(b+1+o|0)>>>1&65535;Gi[e+(d+6<<1)>>1]=v;Gi[e+(c+4<<1)>>1]=v;Gi[e+(k+2<<1)>>1]=v;Gi[e+(s<<1)>>1]=v;o=(w+2+(b<<1)+o|0)>>>2&65535;Gi[e+(d+7<<1)>>1]=o;Gi[e+(c+5<<1)>>1]=o;Gi[e+(k+3<<1)>>1]=o;Gi[e+((s|1)<<1)>>1]=o;o=w+1|0;d=(o+b|0)>>>1&65535;Gi[e+(c+6<<1)>>1]=d;Gi[e+(k+4<<1)>>1]=d;Gi[e+(s+2<<1)>>1]=d;Gi[e+(n<<1)>>1]=d;b=((w<<1)+2+b+u|0)>>>2&65535;Gi[e+(c+7<<1)>>1]=b;Gi[e+(k+5<<1)>>1]=b;Gi[e+(s+3<<1)>>1]=b;Gi[e+(n+1<<1)>>1]=b;o=(o+u|0)>>>1&65535;Gi[e+(k+6<<1)>>1]=o;Gi[e+(s+4<<1)>>1]=o;Gi[e+(n+2<<1)>>1]=o;Gi[e>>1]=o;o=h+2|0;w=(o+w+(u<<1)|0)>>>2&65535;Gi[e+(k+7<<1)>>1]=w;Gi[e+(s+5<<1)>>1]=w;Gi[e+(n+3<<1)>>1]=w;Gi[e+2>>1]=w;u=((h<<1)+2+t+u|0)>>>2&65535;Gi[e+(s+6<<1)>>1]=u;Gi[e+(n+4<<1)>>1]=u;Gi[e+4>>1]=u;o=(o+(t<<1)+a|0)>>>2&65535;Gi[e+(s+7<<1)>>1]=o;Gi[e+(n+5<<1)>>1]=o;Gi[e+6>>1]=o;t=(t+2+(a<<1)+l|0)>>>2&65535;Gi[e+(n+6<<1)>>1]=t;Gi[e+8>>1]=t;a=(a+2+(l<<1)+f|0)>>>2&65535;Gi[e+(n+7<<1)>>1]=a;Gi[e+10>>1]=a;Gi[e+12>>1]=(l+2+(f<<1)+i|0)>>>2;Gi[e+14>>1]=(f+2+(i<<1)+r|0)>>>2;return}function Ux(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var a=0,n=0,t=0,o=0,s=0,u=0,h=0,w=0,k=0,b=0;u=e;o=i;s=o;n=r;w=f;t=w;if(!s){a=(l|0)!=0;if(!t){if(a){Xi[l>>2]=(u>>>0)%(n>>>0);Xi[l+4>>2]=0}w=0;l=(u>>>0)/(n>>>0)>>>0;return(Ie=w,l)|0}else{if(!a){w=0;l=0;return(Ie=w,l)|0}Xi[l>>2]=e|0;Xi[l+4>>2]=i&0;w=0;l=0;return(Ie=w,l)|0}}a=(t|0)==0;do{if(n){if(!a){a=(G(t|0)|0)-(G(s|0)|0)|0;if(a>>>0<=31){h=a+1|0;t=31-a|0;i=a-31>>31;n=h;e=u>>>(h>>>0)&i|s<<t;i=s>>>(h>>>0)&i;a=0;t=u<<t;break}if(!l){w=0;l=0;return(Ie=w,l)|0}Xi[l>>2]=e|0;Xi[l+4>>2]=o|i&0;w=0;l=0;return(Ie=w,l)|0}a=n-1|0;if(a&n|0){t=(G(n|0)|0)+33-(G(s|0)|0)|0;b=64-t|0;h=32-t|0;o=h>>31;k=t-32|0;i=k>>31;n=t;e=h-1>>31&s>>>(k>>>0)|(s<<h|u>>>(t>>>0))&i;i=i&s>>>(t>>>0);a=u<<b&o;t=(s<<b|u>>>(k>>>0))&o|u<<h&t-33>>31;break}if(l|0){Xi[l>>2]=a&u;Xi[l+4>>2]=0}if((n|0)==1){k=o|i&0;b=e|0|0;return(Ie=k,b)|0}else{b=QT(n|0)|0;k=s>>>(b>>>0)|0;b=s<<32-b|u>>>(b>>>0)|0;return(Ie=k,b)|0}}else{if(a){if(l|0){Xi[l>>2]=(s>>>0)%(n>>>0);Xi[l+4>>2]=0}k=0;b=(s>>>0)/(n>>>0)>>>0;return(Ie=k,b)|0}if(!u){if(l|0){Xi[l>>2]=0;Xi[l+4>>2]=(s>>>0)%(t>>>0)}k=0;b=(s>>>0)/(t>>>0)>>>0;return(Ie=k,b)|0}a=t-1|0;if(!(a&t)){if(l|0){Xi[l>>2]=e|0;Xi[l+4>>2]=a&s|i&0}k=0;b=s>>>((QT(t|0)|0)>>>0);return(Ie=k,b)|0}a=(G(t|0)|0)-(G(s|0)|0)|0;if(a>>>0<=30){i=a+1|0;t=31-a|0;n=i;e=s<<t|u>>>(i>>>0);i=s>>>(i>>>0);a=0;t=u<<t;break}if(!l){k=0;b=0;return(Ie=k,b)|0}Xi[l>>2]=e|0;Xi[l+4>>2]=o|i&0;k=0;b=0;return(Ie=k,b)|0}}while(0);if(!n){s=t;o=0;t=0}else{h=r|0|0;u=w|f&0;s=WT(h|0,u|0,-1,-1)|0;r=Ie;o=t;t=0;do{f=o;o=a>>>31|o<<1;a=t|a<<1;f=e<<1|f>>>31|0;w=e>>>31|i<<1|0;YT(s|0,r|0,f|0,w|0)|0;b=Ie;k=b>>31|((b|0)<0?-1:0)<<1;t=k&1;e=YT(f|0,w|0,k&h|0,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&u|0)|0;i=Ie;n=n-1|0}while((n|0)!=0);s=o;o=0}n=0;if(l|0){Xi[l>>2]=e;Xi[l+4>>2]=i}k=(a|0)>>>31|(s|n)<<1|(n<<1|a>>>31)&0|o;b=(a<<1|0>>>31)&-2|t;return(Ie=k,b)|0}function xx(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;Uz[e&127](i|0,r|0,f|0,l|0,a|0)}function zx(e,i){e=e|0;i=i|0;xz[e&31](i|0)}function Vx(e,i,r){e=e|0;i=i|0;r=r|0;zz[e&255](i|0,r|0)}function Yx(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;return Vz[e&1](i|0,r|0,f|0,l|0,a|0,n|0)|0}function jx(e,i){e=e|0;i=i|0;return Yz[e&15](i|0)|0}function Kx(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;jz[e&31](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0,s|0,u|0,h|0)}function Wx(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;return Kz[e&63](i|0,r|0,f|0,l|0,a|0)|0}function Gx(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return Wz[e&7](i|0,r|0,f|0)|0}function Xx(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;Gz[e&63](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0)}function qx(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;Xz[e&127](i|0,r|0,f|0,l|0,a|0,n|0)}function Jx(e,i){e=e|0;i=+i;return+qz[e&15](+i)}function Zx(e,i,r,f,l,a,n,t,o,s,u,h,w,k,b){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;b=b|0;Jz[e&31](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0,s|0,u|0,h|0,w|0,k|0,b|0)}function Qx(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;Zz[e&63](i|0,r|0,f|0,l|0,a|0,n|0,t|0)}function $x(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;Qz[e&31](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0,s|0)}function ez(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;$z[e&3](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0,s|0,u|0)}function iz(e,i,r){e=e|0;i=i|0;r=r|0;return eV[e&7](i|0,r|0)|0}function rz(e,i,r,f){e=e|0;i=i|0;r=+r;f=+f;return+iV[e&0](i|0,+r,+f)}function fz(e,i,r){e=e|0;i=i|0;r=+r;return+rV[e&0](i|0,+r)}function lz(e,i,r,f,l,a,n,t,o,s,u,h,w){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;fV[e&15](i|0,r|0,f|0,l|0,a|0,n|0,t|0,o|0,s|0,u|0,h|0,w|0)}function az(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;return lV[e&3](i|0,r|0,f|0,l|0)|0}function nz(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;aV[e&1023](i|0,r|0,f|0)}function tz(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;nV[e&255](i|0,r|0,f|0,l|0)}function oz(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;X(0)}function sz(e){e=e|0;X(1)}function uz(e,i){e=e|0;i=i|0;X(2)}function hz(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;X(3);return 0}function wz(e){e=e|0;X(4);return 0}function kz(e,i,r,f,l,a,n,t,o,s,u){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;X(5)}function bz(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;X(6);return 0}function cz(e,i,r){e=e|0;i=i|0;r=r|0;X(7);return 0}function dz(e,i,r,f,l,a,n,t){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;X(8)}function vz(e,i,r,f,l,a){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;X(9)}function Ez(e){e=+e;X(10);return 0.0}function Sz(e){e=+e;return+me(+e)}function _z(e){e=+e;return+je(+e)}function mz(e){e=+e;return+qe(+e)}function pz(e){e=+e;return+He(+e)}function Fz(e){e=+e;return+Te(+e)}function yz(e){e=+e;return+ye(+e)}function Oz(e){e=+e;return+pe(+e)}function Az(e){e=+e;return+Oe(+e)}function gz(e){e=+e;return+Se(+e)}function Mz(e,i,r,f,l,a,n,t,o,s,u,h,w,k){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;w=w|0;k=k|0;X(11)}function Rz(e,i,r,f,l,a,n){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;X(12)}function Tz(e,i,r,f,l,a,n,t,o){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;X(13)}function Nz(e,i,r,f,l,a,n,t,o,s){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;X(14)}function Dz(e,i){e=e|0;i=i|0;X(15);return 0}function Cz(e,i,r){e=e|0;i=+i;r=+r;X(16);return 0.0}function Pz(e,i){e=e|0;i=+i;X(17);return 0.0}function Lz(e,i,r,f,l,a,n,t,o,s,u,h){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;a=a|0;n=n|0;t=t|0;o=o|0;s=s|0;u=u|0;h=h|0;X(18)}function Iz(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;X(19);return 0}function Hz(e,i,r){e=e|0;i=i|0;r=r|0;X(20)}function Bz(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;X(21)}var Uz=[oz,gI,RI,NI,TI,MI,tP,oP,sP,kP,cP,bP,vP,dP,UI,zI,YI,VI,xI,NP,DP,CP,HP,UP,BP,zP,xP,ZI,$I,iH,eH,QI,iL,rL,fL,tL,sL,oL,hL,uL,sH,hH,kH,wH,uH,OL,AL,gL,NL,CL,DL,LL,PL,cI,vI,SI,EI,dI,qL,JL,ZL,iI,fI,rI,aI,lI,GB,XB,ux,hx,$i,er,vf,Ef,Pl,Ll,JS,QS,fm,am,up,wp,vF,SF,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz,oz];var xz=[sz,JN,fv,$E,lS,aS,nS,tS,n_,h_,w_,k_,b_,km,Em,Sm,_m,mm,_p,Op,Ap,gp,Mp,oR,sz,sz,sz,sz,sz,sz,sz,sz];var zz=[uz,CI,PI,KI,WI,fH,lH,cH,dH,mI,pI,fB,rB,aB,lB,nB,tB,oB,sB,uB,hB,wB,kB,bB,cB,dB,vB,EB,SB,_B,mB,pB,FB,yB,OB,AB,gB,RB,MB,TB,NB,DB,CB,LB,IB,HB,BB,UB,xB,zB,VB,MU,gU,TU,RU,NU,DU,CU,PU,LU,IU,HU,BU,UU,xU,zU,VU,YU,jU,KU,WU,GU,XU,JU,qU,ZU,QU,$U,ex,ix,rx,fx,lx,ax,hi,ui,ki,wi,bi,ci,di,vi,Ei,Si,_i,mi,pi,Fi,yi,Oi,Ai,gi,Mi,Ri,Ti,Ni,Ci,Di,Pi,Li,Ii,Hi,Bi,Ui,xi,zi,Vi,Pr,Cr,Ir,Lr,Hr,Br,Ur,xr,zr,Vr,Yr,jr,Kr,Wr,Gr,Xr,qr,Jr,Zr,Qr,$r,ef,ff,rf,lf,af,nf,tf,of,sf,uf,hf,wf,Qf,Zf,el,$f,il,rl,fl,ll,al,nl,tl,ol,sl,ul,hl,wl,kl,bl,cl,dl,vl,El,_l,Sl,ml,pl,Fl,yl,Ol,Al,gl,Ml,Rl,gE,ZE,eS,iS,rS,fS,l_,t_,o_,s_,u_,hm,bm,cm,dm,vm,Ep,mp,pp,Fp,yp,SA,_A,LA,WA,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz,uz];var Vz=[hz,pO];var Yz=[wz,IN,YN,QA,Dd,Ud,Pd,lO,nO,tO,lR,HA,my,IA,NM,PM];var jz=[kz,_S,mS,pS,FS,BS,US,xS,g_,M_,R_,T_,K_,W_,G_,Pm,Lm,Im,Hm,Qm,$m,ep,zp,Vp,Yp,jp,aF,nF,tF,kz,kz,kz];var Kz=[bz,py,Fy,yy,Oy,Ay,gy,My,Ry,Ty,Ny,Dy,Cy,Py,Ly,Iy,Hy,By,Uy,xy,zy,Vy,Yy,jy,Ky,Wy,Gy,Xy,qy,Jy,Zy,Qy,$y,eO,iO,rO,FO,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz,bz];var Wz=[cz,tR,uR,hR,vR,SO,ZR,cz];var Gz=[dz,fP,lP,aP,nP,gP,MP,RP,TP,ZP,QP,$P,eL,mL,pL,FL,yL,KL,WL,GL,XL,oS,dS,vS,ES,SS,LS,IS,HS,c_,F_,y_,O_,A_,V_,Y_,j_,pm,Tm,Nm,Dm,Cm,qm,Jm,Zm,Rp,Hp,Bp,Up,xp,rF,fF,lF,dz,dz,dz,dz,dz,dz,dz,dz,dz,dz,dz];var Xz=[vz,CC,DC,LC,PC,HC,IC,UC,BC,zC,xC,YC,VC,KC,jC,GC,WC,$C,eP,iP,rP,FP,yP,OP,AP,GP,XP,qP,JP,vL,EL,SL,_L,zL,VL,YL,jL,WE,GS,qS,$S,em,rm,nm,tp,sp,kp,bF,dF,RF,TF,NF,DF,CF,VF,YF,jF,KF,WF,iy,ry,fy,ly,ay,by,cy,dy,vy,Ey,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz,vz];var qz=[Ez,ET,mT,TT,Sz,_z,mz,pz,Fz,yz,Oz,Az,gz,vg,Ez,Ez];var Jz=[Mz,MS,RS,TS,NS,jS,KS,WS,L_,I_,H_,B_,Z_,Q_,$_,Vm,Ym,jm,Km,lp,ap,np,qp,Jp,Zp,Qp,hF,wF,kF,Mz,Mz,Mz];var Zz=[Rz,sS,wS,kS,bS,cS,DS,CS,PS,d_,S_,__,m_,p_,U_,x_,z_,Fm,Am,gm,Mm,Rm,Wm,Gm,Xm,Tp,Cp,Pp,Lp,Ip,$p,eF,iF,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz,Rz];var Qz=[Tz,rD,yS,OS,AS,gS,zS,VS,YS,N_,D_,C_,P_,X_,q_,J_,Bm,Um,xm,zm,ip,rp,fp,Kp,Wp,Gp,Xp,oF,sF,uF,Tz,Tz];var $z=[Nz,ZO,JO,Nz];var eV=[Dz,Id,aO,gC,wO,iv,yO,xM];var iV=[Cz];var rV=[Pz];var fV=[Lz,uS,hS,v_,E_,ym,Om,Np,Dp,Lz,Lz,Lz,Lz,Lz,Lz,Lz];var lV=[Iz,GN,rv,Yd];var aV=[Hz,yN,ON,JC,qC,QC,ZC,FI,yI,OI,AI,DI,LI,II,HI,BI,jI,GI,XI,qI,JI,rH,aH,nH,tH,oH,bH,hI,wI,kI,bI,_I,EH,SH,_H,mH,pH,yH,FH,OH,AH,gH,RH,MH,TH,NH,DH,CH,PH,LH,IH,HH,BH,xH,zH,VH,YH,YB,jB,KB,WB,iU,rU,fU,lU,aU,nU,tU,oU,sU,uU,hU,wU,kU,bU,nx,tx,ox,sx,Ex,Sx,_x,mx,px,Fx,yx,Ox,Ax,gx,Mx,Rx,Tx,Nx,Yi,ji,Ki,Qi,tr,or,sr,ur,hr,wr,kr,br,cr,dr,vr,Er,Sr,_r,kf,bf,cf,df,Of,Af,gf,Mf,Rf,Tf,Nf,Df,Cf,Pf,Lf,If,Hf,Bf,Tl,Nl,Dl,Cl,Yl,jl,Gl,Xl,ql,Ql,$l,ra,fa,la,aa,na,ta,oa,sa,ua,ha,wa,ka,ba,ca,da,va,Ea,Sa,_a,ma,pa,Fa,ya,Oa,Aa,ga,Ma,Ta,Na,Da,Pa,La,Ha,Ba,Ua,xa,za,Va,Ya,ja,Ka,Wa,Ga,qa,Ja,Za,$a,en,fn,ln,an,nn,tn,on,sn,un,hn,wn,kn,bn,dn,vn,En,Sn,_n,mn,Fn,yn,An,gn,Mn,Rn,Tn,Nn,Dn,Cn,Pn,Ln,In,Hn,Bn,Un,xn,zn,Vn,Yn,jn,Kn,Wn,Gn,Xn,qn,Jn,Zn,Qn,$n,et,it,rt,ft,lt,at,nt,tt,ot,st,ut,kt,bt,ct,Et,St,pt,Ft,yt,Ot,At,gt,Mt,Rt,Tt,Nt,Dt,Ct,Pt,Lt,It,Ht,Bt,Ut,xt,zt,Vt,Yt,jt,Kt,Wt,Gt,Xt,Jt,Zt,Qt,eo,io,fo,lo,ao,no,to,oo,so,uo,ho,wo,ko,co,vo,Eo,_o,mo,Fo,yo,Oo,Ao,go,Mo,Ro,To,No,Do,Co,Po,Io,Ho,Bo,Uo,xo,zo,Yo,jo,Wo,Go,Xo,qo,Jo,Zo,Qo,$o,es,is,rs,fs,ls,as,ns,ts,os,ss,us,hs,ws,ks,bs,cs,ds,vs,Es,Ss,_s,ms,ps,Fs,ys,Os,As,gs,Ms,Rs,Ts,Cs,Ps,Ls,Bs,Us,Vs,Ys,js,Ks,Ws,Gs,Xs,qs,Js,Zs,Qs,$s,eu,iu,ru,fu,lu,au,nu,tu,ou,su,uu,hu,wu,ku,bu,du,vu,Eu,_u,mu,Fu,yu,Ou,Au,gu,Mu,Ru,Tu,Nu,Du,Cu,Lu,Iu,Hu,Uu,xu,Vu,Yu,ju,Ku,Wu,Gu,Xu,qu,Ju,Zu,Qu,$u,ih,rh,fh,lh,ah,nh,oh,sh,hh,wh,kh,bh,ch,dh,vh,Eh,Sh,_h,mh,ph,Fh,yh,Oh,Ah,gh,Mh,Rh,Th,Nh,Dh,Ch,Ph,Lh,Ih,Hh,Bh,Uh,xh,zh,Vh,Yh,jh,Kh,Wh,Gh,Xh,qh,Qh,$h,ew,fw,lw,tw,ow,sw,uw,hw,ww,kw,bw,cw,dw,vw,Ew,Sw,_w,mw,pw,Fw,yw,Ow,Aw,gw,Mw,Rw,Tw,Nw,Dw,Cw,Lw,Iw,Hw,Uw,xw,Vw,Yw,jw,Kw,Ww,Gw,Xw,qw,Jw,Zw,Qw,ek,ik,rk,lk,ak,tk,ok,sk,uk,hk,wk,kk,bk,ck,dk,vk,Ek,_k,mk,pk,Fk,yk,Ok,gk,Mk,Tk,Nk,Dk,Ck,Pk,Lk,Ik,Hk,Bk,Uk,xk,zk,Vk,Yk,jk,Kk,Wk,Gk,Xk,qk,Jk,Zk,Qk,$k,eb,ib,rb,fb,lb,ab,nb,tb,ob,sb,ub,hb,wb,kb,bb,vb,Eb,Sb,pb,Fb,Ab,gb,Mb,Rb,Tb,Nb,Db,Cb,Pb,Lb,Ib,Hb,Bb,Ub,xb,zb,Vb,Yb,jb,Kb,Wb,Gb,Xb,qb,Jb,Zb,Qb,ec,ic,rc,lc,ac,tc,oc,sc,uc,hc,wc,kc,bc,cc,dc,vc,Sc,_c,mc,Fc,yc,Ac,gc,Mc,Rc,Tc,Nc,Dc,Cc,Pc,Lc,Ic,Hc,Uc,xc,zc,Vc,Yc,jc,Wc,Gc,qc,Jc,Zc,Qc,$c,ed,id,rd,fd,ld,ad,nd,td,od,sd,ud,hd,wd,kd,bd,cd,dd,vd,Ed,Sd,_d,md,pd,Fd,yd,Od,Ad,gd,Md,Rd,Td,Nd,GE,XE,qE,JE,QE,e_,i_,r_,f_,a_,tm,om,sm,um,wm,bp,cp,dp,vp,Sp,$O,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz,Hz];var nV=[Bz,tA,uP,hP,wP,EP,_P,SP,pP,mP,PP,LP,IP,VP,jP,YP,WP,KP,lL,aL,nL,wL,bL,kL,dL,cL,ML,RL,TL,IL,BL,HL,xL,UL,QL,$L,eI,nI,oI,tI,uI,sI,jH,KH,WH,GH,XH,qH,JH,ZH,QH,$H,eB,iB,JB,qB,QB,ZB,$B,eU,cU,dU,vU,EU,SU,_U,mU,pU,FU,yU,OU,AU,kx,wx,cx,bx,dx,vx,Dx,Cx,Px,Lx,Ix,Hx,Bx,ai,ni,ti,oi,si,rr,ir,lr,fr,ar,nr,mr,pr,Fr,yr,Or,Ar,gr,Mr,Rr,Tr,Nr,Dr,_f,Sf,pf,mf,Ff,yf,Uf,xf,zf,Vf,Yf,jf,Kf,Wf,Gf,Xf,qf,Jf,Hl,Il,Ul,Bl,xl,zl,mF,pF,FF,yF,OF,AF,gF,MF,PF,LF,IF,HF,BF,UF,xF,zF,GF,XF,qF,JF,ZF,QF,$F,ey,ny,ty,oy,sy,uy,hy,wy,ky,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz,Bz];return{_llvm_bswap_i32:ZT,_close_jsFFmpeg:iR,_get_height:fR,_fflush:uT,_bitshift64Lshr:XT,_i64Add:WT,_memmove:JT,_bitshift64Ashr:GT,_i64Subtract:YT,_memset:jT,_init_jsFFmpeg:QM,_malloc:LT,_memcpy:qT,___errno_location:nR,_decode_video_jsFFmpeg:$M,_free:IT,_bitshift64Shl:KT,_get_width:rR,_context_jsFFmpeg:eR,runPostSets:VT,stackAlloc:aN,stackSave:nN,stackRestore:tN,establishStackSpace:oN,setThrew:sN,setTempRet0:wN,getTempRet0:kN,dynCall_viiiii:xx,dynCall_vi:zx,dynCall_vii:Vx,dynCall_iiiiiii:Yx,dynCall_ii:jx,dynCall_viiiiiiiiiii:Kx,dynCall_iiiiii:Wx,dynCall_iiii:Gx,dynCall_viiiiiiii:Xx,dynCall_viiiiii:qx,dynCall_dd:Jx,dynCall_viiiiiiiiiiiiii:Zx,dynCall_viiiiiii:Qx,dynCall_viiiiiiiii:$x,dynCall_viiiiiiiiii:ez,dynCall_iii:iz,dynCall_didd:rz,dynCall_did:fz,dynCall_viiiiiiiiiiii:lz,dynCall_iiiii:az,dynCall_viii:nz,dynCall_viiii:tz}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_close_jsFFmpeg=Module._close_jsFFmpeg=asm._close_jsFFmpeg,_get_height=Module._get_height=asm._get_height,_decode_video_jsFFmpeg=Module._decode_video_jsFFmpeg=asm._decode_video_jsFFmpeg,_fflush=Module._fflush=asm._fflush,runPostSets=Module.runPostSets=asm.runPostSets,_get_width=Module._get_width=asm._get_width,_i64Add=Module._i64Add=asm._i64Add,_memmove=Module._memmove=asm._memmove,_bitshift64Ashr=Module._bitshift64Ashr=asm._bitshift64Ashr,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_memset=Module._memset=asm._memset,_init_jsFFmpeg=Module._init_jsFFmpeg=asm._init_jsFFmpeg,_malloc=Module._malloc=asm._malloc,_memcpy=Module._memcpy=asm._memcpy,___errno_location=Module.___errno_location=asm.___errno_location,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_free=Module._free=asm._free,_context_jsFFmpeg=Module._context_jsFFmpeg=asm._context_jsFFmpeg,_llvm_bswap_i32=Module._llvm_bswap_i32=asm._llvm_bswap_i32,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viiiiiiiiiii=Module.dynCall_viiiiiiiiiii=asm.dynCall_viiiiiiiiiii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_viiiiiiii=Module.dynCall_viiiiiiii=asm.dynCall_viiiiiiii,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_dd=Module.dynCall_dd=asm.dynCall_dd,dynCall_viiiiiiiiiiiiii=Module.dynCall_viiiiiiiiiiiiii=asm.dynCall_viiiiiiiiiiiiii,dynCall_viiiiiii=Module.dynCall_viiiiiii=asm.dynCall_viiiiiii,dynCall_viiiiiiiii=Module.dynCall_viiiiiiiii=asm.dynCall_viiiiiiiii,dynCall_viiiiiiiiii=Module.dynCall_viiiiiiiiii=asm.dynCall_viiiiiiiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_didd=Module.dynCall_didd=asm.dynCall_didd,dynCall_did=Module.dynCall_did=asm.dynCall_did,dynCall_viiiiiiiiiiii=Module.dynCall_viiiiiiiiiiii=asm.dynCall_viiiiiiiiiiii,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),0<runDependencies||(preRun(),0<runDependencies||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),i()},1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?process.exit(e):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){e=e||[],ensureInitRuntime();var i=e.length+1;function r(){for(var e=0;e<3;e++)f.push(0)}var f=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];r();for(var l=0;l<i-1;l+=1)f.push(allocate(intArrayFromString(e[l]),"i8",ALLOC_NORMAL)),r();f.push(0),f=allocate(f,"i32",ALLOC_NORMAL);try{exit(Module._main(i,f,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(i){i=void 0!==i?(Module.print(i),Module.printErr(i),JSON.stringify(i)):"",ABORT=!0,EXITSTATUS=1;var r="abort("+i+") at "+stackTrace()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw abortDecorators&&abortDecorators.forEach(function(e){r=e(r,i)}),r}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);0<Module.preInit.length;)Module.preInit.pop()();var shouldRunNow=!0;Module.noInitialRun&&(shouldRunNow=!1),run();